Luke van Genechten - Stage
Welkom bij mijn stageportfolio
Hey! Welkom bij het stagesemester. Hier laat ik zien waar ik me het afgelopen halfjaar mee bezig heb gehouden met stage. Ik laat zien wat ik heb ontwikkeld m.b.t. het grote project en wat ik heb geleerd. Bekijk de leeswijzer voor een gemakkelijk overzicht voor de leeruitkomsten.
Mijn naam is Luke van Genechten, en ik ben een 23 jarige media-designer in opleiding. Waar mijn voornaamste interesses en talenten liggen is bij alles grafisch. Dit omvat logo’s, videobewerken, websites en interface design. Beroepsgewijs is dit ook waar ik naar streef. Zowel front-end app ontwikkeling als website ontwikkeling hebben de voorkeur qua beroepskeuze.
Qua programmeren is mijn sterke punt ook frontend development. Hoewel ik mezelf meestal prima kan redden als ik wat meer richting backend programmeer, vooral als ik na een paar weken gewend ben aan de taal, gaat mijn voorkeur uit naar talen HTML, CSS en Javascript. Dit zijn de talen waar ik het meeste ervaring mee heb.
Leeswijzer
Analysis/problem definition
Door middel van het projectplan beschrijf ik duidelijk de scope van het probleem.
Tijdens de literature study onderzoek ik wat de beste technische oplossing is voor het probleem waar Profix en haar klanten tegenaan lopen.
Advice
Het projectplan biedt een advies over de organisatie van het project en de planning.
Door middel van een competitive analysis adviseer ik Profix IT over de beste manieren om onderscheidend te blijven.
Door een literature study uit te voeren onderzoek ik of een ontwikkelingsframework gelijkwaardig is aan native development. Bovendien onderzoek ik welk framework het meest geschikt is en geef hier advies over.
In het adviesrapport geef ik update-advies aan Profix over de toekomst van de applicatie en waar nog verbeteringen aan te brengen zijn.
Design
Voor het designen van de app ben ik gestart met het maken van prototypes. Hierin verklaar ik de belangrijkste designkeuzes en laat ik de ontwikkeling van de prototypes zien.
Realisation
De volledig uitgewerkte applicatie is in de Google Play Store te vinden als de laaddock app, en is gelijk aan het eerder gemaakte design. De app is ontwikkeld volgens het eerdere onderzoek en is ook daadwerkelijk in gebruik genomen door Profix IT.
Manage and control
Tijdens het project is gewerkt volgens de SCRUM-methode voor organisatie.
Voor versiebeheer is gebruik gemaakt van een Git omgeving.
Judgement
In het projectplan heb ik de onderzoeksvragen bedacht.
Deze zijn nog enigszins veranderd en zijn bij de onderzoeksvragen te vinden.
De onderzoeken zelf inclusief antwoord op de onderzoeksvragen is te zien bij het onderdeel onderzoek.
Communication
Elke week spreek ik met Pim, de coach vanuit school. Daarnaast bespreek ik tijdens de dagelijkse standup met de bedrijfsbegeleider. Ook spreek ik regelmatig ongepland met de bedrijfsbegeleider over mijn voortgang en problemen waar ik tegenaan loop.
Learning ability
In de introductietekst is te lezen waar mijn voornaamste talent ligt, en welke ambities ik heb om dit semester te leren.
De uitkomsten van de leerdoelen zijn te lezen in de reflectie.
Intro - Fullstak
Mijn stagebedrijf is Fullstak in Breda. Dit bedrijf houdt zich bezig met softwareontwikkeling voor diverse klanten. Het is onderdeel van OnlineExperts. Hoewel dit overkoepelende bedrijf uit meerdere kleinere bedrijven bestaat, zijn deze veelal verantwoordelijk voor SEO en SEA, terwijl de developers bij Fullstak zitten. Wel werk ik regelmatig samen met de andere personen in het bedrijf, zoals met SEO en technische zaken voor websites.
Hoewel ik twijfelde, onder andere omdat de titel van de stage ‘softwareontwikkeling’ was, ben ik door de omschrijving en het gesprek toch erg enthousiast geworden. Ik krijg veel kansen om aan alle aspecten van Media Design te werken. Ik kan zowel aan designs werken als (frontend) programmeren, precies waar mijn passie en talent ligt. Afgelopen halfjaar heb ik aan een grote hoeveelheid projecten gewerkt, en ik licht de grootste en belangrijkste opdracht uit in dit portfolio.
Het project - Profix IT
Het hoofdproject voor dit halfjaar was die voor Profix IT. Dit softwarebedrijf heeft een opdracht deels uitbesteedt aan Fullstak om een organisatie-app te ontwikkelen voor groente- en fruittelers. Profix is verantwoordelijk voor de backend, en Fullstak voor frontend.
De details
Profix is een IT-software bedrijf, die zelf software ontwikkelen voor hun klanten. Dit bedrijf heeft een opdracht waarbij ze een softwareplatform ontwikkelen voor de organisatie van fruit- en groentetelers.
Voor fruit- en groentetelers is het oogsten een proces dat efficiënter kan. Het bijhouden van de producten, op welke pallets ze staan en wat de status is momenteel niet goed gestructureerd.
Om die reden heeft Profix IT de opdracht gekregen om een app te maken om dit proces te vergemakkelijken. Door een samenwerking aan te gaan met Fullstak kan Profix zich richten op backend-werk terwijl wij als groep richten op front-end ontwikkeling.
Voor aanvang van het project schrijf ik een projectplan. Hierin omschrijf ik hoe ik het project aan wil pakken, hoe het tijdschema in grote lijnen eruit komt te zien en schrijf ik de onderzoeksvragen.
Hoe ziet de meest passende applicatie voor Profix IT eruit?
Met het schrijven van het projectplan, heb ik ook onderzoeksvragen bedacht. De hoofdvraag, hoe ziet de meest passende applicatie voor Profix IT eruit, wil ik beantwoorden met een set deelvragen, die als de basis moet dienen voor een aantal onderzoeken die ik ga uitvoeren.
Onderzoeksvragen
Hoe zit de meest passende applicatie voor Profix IT eruit?
Welke functionaliteiten moeten aanwezig zijn binnen de app om competitief te blijven?
Wat voor informatie moet er zichtbaar zijn in de Profix IT applicatie?
Is de app gemakkelijk te begrijpen en gebruiken?
Is een React Native applicatie een volwaardig alternatief voor een native Android of IOS app?
Voor het beantwoorden van deze onderzoeksvragen leg ik eerst de methodiek vast. Vervolgens beschrijf ik hoe versiebeheer in dit project wordt toegepast. Daarna beantwoord ik de onderzoeksvragen aan de hand van verschillende onderzoeken.
Methodiek
Voor de aanvang van dit project heb ik een projectplan gemaakt. Hierin definieer ik onder andere het tijdschema en de onderzoeksvragen, maar ook welke soort methode wordt gebruikt tijdens het project. Voor het Profix project wordt gebruik gemaakt van SCRUM. Alles is gepland in sprints en er vinden elke dag standups plaats.
Qua planning is ook alles volgens het projectplan verlopen, en het project lag het grootste gedeelte van de tijd voor op de planning. Het project is als volgt verlopen.
Sprint 0
Zoals gepland in het projectplan, heb ik in deze sprint onderzoek gedaan naar concurrenten van Profix. Bovendien heb ik een wireframe gemaakt en deze vervolgens volledig gedesignd. Het design wordt door de klant beoordeeld. Deze sprint heeft slechts drie weken geduurd, ten opzichte van de vijf die ervoor stonden ingepland.
GIT
Om van een goed versiebeheersysteem voorzien te zijn, maak ik samen met de andere stagaires en de bedrijfsbegeleider gebruik van Gitlab. Hoewel ik uiteraard niet de interne GIT omgeving kan delen vanwege bedrijfsgevoelige informatie, kan ik wel laten zien en omschrijven op welke manier er gebruik is gemaakt van Git. Elke functionaliteit krijgt een eigen branch toegewezen. Zo heeft het inloggen een eigen branche, de API ook en algemene design zaken is ook een aparte branch. Zo worden alle functionaliteiten gescheiden van elkaar zodat ze elkaar niet in de weg zitten.
Onderzoek
Profix bevindt zich in een hele krappe markt. Het aantal bedrijven dat software maakt voor de AGF sector is veel groter dan ik had ingeschat. Hoewel de meeste bedrijven zich niet exclusief op AGF richten, zijn er ook een aantal bedrijven die hier echt hun business model van hebben gemaakt, net als Profix.
Ook van de bedrijven die zich minder specialiseren kan Profix concurrentie ervaren. Ondanks dat ze niet specifiek een AGF bedrijf zijn, maken ze er wel software voor en zijn het dus wel concurrenten.
Om ervoor te zorgen dat Profix kan concurreren dient de app aan de volgende voorwaarden te voldoen.
- De app moet enkel voor de AGF sector ontworpen zijn en geen andere doelen hebben, zodat er voldoende focus is,
- De app moet bij eerste gebruik in het Nederlands ingesteld zijn om de communicatie vertrouwd te maken. Ook eventuele beheerdersmeldingen moeten in het Nederlands zijn,
- Tegelijkertijd moet er een zeer duidelijke optie zijn om de taal eenvoudig te wijzigen, waardoor medewerkers die de taal niet machtig zijn in de eigen taal kunnen lezen,
- De Profix app moet daarnaast geschikt zijn voor cross-platform. Dit kan bijvoorbeeld een daadwerkelijke cross-platform app zijn of een die gemakkelijk geschikt kan worden gemaakt voor meerdere platforms.
Deze vier punten zijn dan ook antwoord op de onderzoeksvraag: Welke functionaliteiten moeten aanwezig zijn binnen de app om competitief te blijven?
Er zijn vele keuzes voor cross-platform development. Echter dienen ze niet allemaal hetzelfde doel. Zo is Ionic bedoeld voor grafisch simpele applicaties waar niet veel prestaties nodig zijn, en Xamarin voornamelijk als brug tussen Visual Studio en mobiel.
De meest voor de hand liggende keuzes zijn React Native, Flutter en native development.
Omdat Flutter en React native qua prestaties min of meer identiek zijn, valt de keuze op degene die de grootste community heeft, namelijk React native. Dit heeft als bijkomend voordeel dat ik met Javascript ervaring heb, in tegenstelling tot Dart.
Nu ik het meest geschikte framework voor dit project heb uitgekozen, is het ook belangrijk om te weten of React native een volwaardig alternatief is voor native development. Hoewel de prestaties een klein verschil hebben in het voordeel van native development, is het niets schokkends. Zeker voor een relatief kleine en simpele app, is React native voldoende. Ook is React native zo gebouwd dat het standaard gebruik kan maken van OS-niveau UI elementen. Daarmee is de look and feel gelijk aan een native app.
Kortom, React Native is een volwaardig alternatief voor native development.
Hoewel de Profix IT applicatie niet al te ingewikkeld is met betrekking tot het aantal schermen en de hoeveelheid informatie, is overzicht en duidelijkheid van groot belang. Zoals in de competitive analysis al beschreven is, wordt de app veelal gebruikt door personen die geen Nederlands kunnen. Taal en visuele hints zijn dus erg belangrijk.
Om te testen of deze informatie goed overkomt, ben ik begonnen met de prototypes. De wireframe was de start, waar nog redelijk wat op aan te merken was. Zo was er geen taalknop, miste de pauzeknop en was de app onoverzichtelijk omdat alle informatie op één regel stond.
Vervolgens heb ik deze feedback verwerkt in het highfidelity design. Daarbij was de informatie overzichtelijker verspreidt over het scherm. Alles is bij het design in duidelijke vakken verdeeld. Hoewel het een verbetering was t.o.v. het wireframe, is de informatiedichtheid nu te laag.
Vervolgens heb ik twee nieuwe designs gemaakt, één met kleinere vakken, en één met een lijst. De keuze is gevallen op de lijst. Hoewel het design net wat minder aansluit bij het moderne uiterlijk, is de informatiedichtheid hier het grootst.
Wat voor informatie moet er zichtbaar zijn in de Profix IT applicatie?
Als antwoord op de onderzoeksvraag beschrijf ik welke informatie in de app zichtbaar moet zijn.
Loginscherm
- Gebruikersnaam-veld
- Wachtwoordveld
- Taalknop
Selectiescherm
- Uitlogknop
- Werkopdrachten
- Laaddocks
Werkopdrachten overzicht
- Laaddatum & tijd
- Productgroep
- Klantnaam
- Pallet aantal
- Verpakking
- Status
Werkopdrachten detailscherm
- Product
- Klant
- Aantal pallets
- Soort pallet
- Aantal colli
- Verpakking
- Maatsortering
- Folie
- Laaddatum
- Laadtijd
- Startknop óf
- Pauzeknop en afrondknop
Laaddocks
- Laaddatum
- Laadtijd
- Product
- Klant
- Pallet aantal
- Laaddocks (dropdown)
De app is in grote lijnen al positief uit de usability test gekomen. Tijdens de testen zijn er geen grote verrassingen geweest. Zaken zoals de lange laadtijd en de onduidelijkheid van de lijst zijn dingen waar ik al van op de hoogte was.
Wat mij verbaasde was dat het inlogsysteem soepel verliep. Hierin had ik wel wat problemen verwacht, omdat het via de browser verloopt. Wat naar alle waarschijnlijkheid helpt is dat de login automatisch ingevuld wordt en dat er geen standaardapp geselecteerd hoeft te worden voor het openen van laaddock, wat bij eerste gebruik wel moet.
Met deze resultaten duidelijk, was mijn hypothese grotendeels correct. De app was in grote lijnen inderdaad op orde, en er zijn details die ik heb gemist. Echter had ik wel verwacht dat er wat meer details niet op orde waren. Met deze test is gebleken dat ook de meeste details in de app al duidelijk zijn, en daarmee zijn er minder UX problemen dan ik had verwacht.
Het antwoord op de onderzoeksvraag, is de app gemakkelijk te begrijpen en gebruiken, is dus geen complex antwoord. De app is in gebruik erg duidelijk, en over het algemeen is te verwachten dat de meeste gebruikers de app kunnen gebruiken zonder problemen. Het enige kleine punt waar men tegenaan kan lopen, is de onduidelijkheid van de lijst en de lange wachttijd bij het openen van de dashboards.
Profix app
De uiteindelijke app is in de week van twee mei gelanceerd in de Play store en is op de volgende link te vinden.
https://play.google.com/store/apps/details?id=com.laaddock
De ontwikkeling heeft ongeveer twee maanden full-time ontwikkeling gekost. Hoewel ik niet al te veel betrokken was bij het eerste gedeelte van de ontwikkeling, omdat het voornamelijk API zaken waren, heb ik in de tweede helft van het project min of meer de leiding genomen over het project. Ik maakte dan ook de meeste veranderingen in die tijd en heb het uiterlijk gematcht met het design. Op de blur en het loginscherm na is het volledig overgenomen uit het design.
Conclusie - Hoe ziet de meest passende applicatie voor Profix IT eruit?
Voor het antwoord op de hoofdvraag, Hoe ziet de beste app voor Profix eruit, te beantwoorden, combineer ik de gevonden resultaten uit de verschillende onderzoek en het werk dat ik gedaan heb.
Met het antwoord op de deelvragen duidelijk, kan ik het antwoord op de hoofdvraag het beste als volgt beschrijven. De meest geschikte oplossing voor de organisatie van AGF logistiek en dus de beste variant van een Profix app is meertalig, cross-platform en gemakkelijk in gebruik. Een modern design wordt toegepast en de leesbaarheid is optimaal, door middel van contrasten en grote lettertypes. De ontwikkeling gebeurt door middel van React native. Het meest passende design is te zien in de app zelf en in de prototypes.
Het meertalige aspect is dan ook geïntegreerd. Zowel een Nederlandse, Engelse en Poolse optie is beschikbaar binnen de app. Hiermee is de app zeer geschikt voor werknemers die gebruikmaken van deze app, die veelal geen Nederlands spreken. De app start wel in het Nederlands, wat een betrouwbare uitstraling heeft voor de werkgever en de Nederlandse werknemers die de app voor het eerst opstarten.
Door gebruik te maken van rounded corners en een sans-serif lettertype (roboto) heeft de app een moderne uitstraling. Ook zijn alle elementen groot en hebben een ruime marge, zodat de gebruiksvriendelijkheid maximaal is. Zeker in de AGF wereld, waar hard gewerkt wordt en alles op maximaal tempo moet, is een UI met veel ruimte heel nuttig. Zo verminderd het de kans dat de gebruiker op de verkeerde knop drukt. Ook het kleurgebruik is duidelijk en begrijpelijk. Zo heeft de annuleerknop een rode gradient, wat al een onbewuste hint geeft over de functie van de knop.
Daarnaast is React native de beste keuze voor een aantal redenen. Het is het meest gebruikte framework ter wereld, wat uit het library/community onderzoek bleek, waardoor er een enorme community is voor ondersteuning. Het gebruikt Javascript als programmeertaal, waardoor de learning curve niet al te steil is. React native heeft ook een brede ondersteuning voor cross-platform ontwikkeling, en zijn de prestaties niet veel minder dan native ontwikkeling.
In de toekomst wordt de app nog verbeterd door een geschikter inlogscherm en het gebruik van de browser wordt beter geïntegreerd t.o.v. direct Google Chrome te openen.
Advies
De Profix IT app voldoet aan het grootste gedeelte van de gestelde eisen in o.a. het projectplan. Er zijn nog wel wat details en UX zaken waar verbetering nodig is. Daarnaast zijn er wat update aanbevelingen die er zijn voor deze app. Deze heb ik samengevat in het adviesrapport.
Reflectie
Terugkijkend op dit semester is er een grote hoeveelheid vooruitgang geweest. Hoewel voorgaande semesters regelmatig pittig waren, was dit absoluut het lastigste, en tegelijkertijd meest interessante semester dat ik heb gehad.