Document

advertisement
AFSTUDEERVOORSTEL
Jason Koolman 1619090
Student
Studentnr.
Opleiding
Inleverdatum
Jason Koolman
1619090
Informatica (Information Engineering)
13-02-2016
Inhoud
1. Inleiding .................................................................................................................................. 2
2. De stageverlenende organsatie ............................................................................................. 3
2.1. Yunits framework ............................................................................................................ 3
3. Opdrachtomschrijving ............................................................................................................ 4
3.1 Probleemstelling............................................................................................................... 6
3.2 Relatie met de studie ....................................................................................................... 6
3.3 Mogelijke valkuilen........................................................................................................... 7
3.4 Onderzoeksmethoden ...................................................................................................... 8
4. Betrokkenen ........................................................................................................................... 9
5. Globale aanpak ..................................................................................................................... 10
5.1 Theoretisch kader ........................................................................................................... 10
1
1. Inleiding
In dit document wordt het afstudeerproject van Jason Koolman voorgelegd aan de
afstudeercommissie van de Hogeschool Utrecht (HU). Onderdelen van dit verslag zijn de
context van de opdracht, binnen welke kaders deze opdracht uitgevoerd dient te worden en
welke vaardigheden van belang zijn om het project succesvol uit te voeren. Tijdens het
schrijven van dit document is rekening gehouden met de eisen en richtlijnen zoals die
gesteld zijn in het boek Leren Communiceren van Steehouder.
Het bedrijf waar ik wil afstuderen is een internetbureau genaamd Yard. Zij werkt met een
team van professionals aan complexe mobiele websites, kennisbanken, online netwerken en
intranetten. Daarvoor maakt zij gebruik van een eigen framwork genaamd Yunits. Ook wordt
er gebruik gemaakt van WordPress, een welbekend open-source CMS.
Het project is oorspronkelijk bedacht door het Yard-team en is in afstemming met mij verder
uitgewerkt tot een - in onze opinie - volwaardig afstudeerproject.
2
2. De stageverlenende organsatie
de context waarbinnen het afstudeerproject zal plaatsvinden, d.w.z:
-
een beschrijving van de organisatie/afdeling waar de opdracht wordt uitgevoerd;
de positie/taken/verantwoordelijkheden van de student binnen de organisatie;
Yard is een full-service internetbureau gevestigd in Utrecht en Amsterdam van 26 man sterk,
waarvan 21 voltijd werknemers. Dit team van professionals bestaat uit projectmanagers,
designers, developers, sales- en supportmedewerkers. Zij werken aan complexe maatwerk
applicaties, e-learning omgevingen, kennisplatformen en intranetten. De focus van Yard ligt
voornamelijk op het online verbinden, samenwerken en delen van kennis.
Klanten van Yard zijn middelgrote en grote profit en non-profit organisaties uit alle delen van
Nederland, zoals de GGD, de GGZ en de NVB. Daarnaast zijn er ook enkele projecten buiten
de Nederlandse grens uitgevoerd. Yard richt zich voornamelijk op de sectoren zorg en
welzijn, educatie en sport en beweging. Echter, dit sluit niet uit dat zij enkel binnen deze
sectoren actief is.
2.1. Yunits framework
Voor de realisatie van webapplicaties gebruikt Yard een eigen ontwikkelframework genaamd
Yunits. Dit framework is geschreven in de programmeertaal PHP (5.6) en maakt gebruik van
componenten afkomstig uit welbekende Symfony framework. Met behulp van Yunits kunnen
grootschalige kennisplatformen, ook wel bekend als communities, relatief eenvoudig en snel
worden opgezet.
Een framework is te vergelijken met het fundament van een huis. Het vormt
een sterke basis voor het bouwen van een applicatie en neemt standaard
werkzaamheden uit de hand. Het wiel hoeft hierdoor niet telkens opnieuw
uitgevonden te worden, waardoor je eenvoudiger en efficiënter high-end
applicaties kunt ontwikkelen.
Yunits is modulair opgebouwd, wat inhoud dat - wanneer nodig - modules aan of juist
uitgeschakeld kunnen worden per applicatie. Zo is er een nieuws-, gebruiker- of
betaalmodule die ieder zijn eigen stukje functionaliteit biedt aan de applicatie. Op deze
manier kan Yunits schaalbaarheid aanbieden aan haar klanten. Indien de klantbehoefte
maatwerk vereist, kunnen modules individueel overschreven worden per applicatie.
3
3. Opdrachtomschrijving
Yard heeft mij gevraagd met een backend oplossing te komen om binnen het Yunits
framework content op maat aan te bieden aan haar eindgebruikers. Door het
gebruikersgedrag bij te houden kan een gebruikersprofiel op basis van dit gedrag
automatisch kunnen worden aangevuld. Het idee is afkomstig van Yard en in afstemming
met mij verder uitgewerkt tot een - in onze opinie - volwaardig afstudeerproject. Het gaat
hier over een productopdracht in combinatie met het verrichten van een onderzoek om tot
het gewenste eindresultaat te komen.
‘Content op maat’ gaat er vanuit dat de consument de juiste content op het
juiste moment via het juiste kanaal krijgt. Hierbij bepaalt de consument
wat ‘juist’ is en wat niet.
Vandaag de dag is het aanbieden van content op maat zeer belangrijk om gebruikers te
behouden en daarnaast ook om deze te werven op een website. Voornamelijk grootschalige
kennisplatformen moeten up-to-date gehouden worden en interessant blijven voor de
gebruiker om te bezoeken. Het begrip “content” is behoorlijk breed, maar kan omschreven
worden als de inhoud of het eindresultaat van een product of dienst. In dit geval gaat het om
digitale content in de vorm van documenten, posts (berichten), reacties en media (video’s en
afbeeldingen).
Door gebruikersgedrag van iemand na te gaan kan een zogeheten digitaal profiel worden
opgesteld van de desbetreffende persoon. Op deze manier kan men erachter komen waar
de interesses van een bepaalde gebruiker liggen of wat deze juist niet leuk vindt. Aan de
hand van een gebruikersprofiel kan een website content op maat aanbieden. Het idee is dat
het systeem de “voetsporen” van de gebruiker naloopt om zo met behulp van enige AI
(artificiële intelligentie) bruikbare/nuttige data te verkrijgen.
Zolang duidelijk is welke voordelen ze dit oplevert, is 45% van de
Nederlanders bereid daar persoonlijke gegevens voor af te staan. Iets meer
dan een derde van de ondervraagde Nederlanders verwacht zelfs van
ondernemingen dat ze persoonlijke data gebruiken om relevante suggesties
te doen. Dat blijkt uit het rapport Microsoft Digital Trends 2015.
Met deze kennis van de gebruiker kan de user experience, oftewel de gebruikerservaring,
aanzienlijk verbeterd worden. Zo levert het zoeken naar content relevantere resultaten op
en worden suggesties of aanbevelingen ineens interessant voor de gebruiker. Het is dus de
bedoeling dat het systeem als het ware zelf ‘nadenkt’, wat ook wel machine learning wordt
genoemd
Wat is het VERNIEUWENDE van de opdracht???!?
Momenteel kan met het framework van Yard nog niet goed bijgehouden worden wat een
gebruiker precies doet op haar applicaties. Dit zorgt ervoor dat nuttige gebruikersinformatie
voor haar klanten misgelopen wordt en niet vrijgegeven kan worden om zo tot nieuwe
inzichten te komen. Stel dat een gebruiker op de website van de klant komt maar niet met
4
het doel om hier gebruik van te maken moeten er toch manieren gevonden worden om deze
een potentiële gebruiker te maken van deze applicatie. Door zijn/haar gedrag te bestuderen
kunnen advertenties op maat aangeboden worden of eventuele interesses voor de
applicatie worden opgewekt als bekend is dat de gebruiker geen potentiële
applicatiegebruiker is.
Gebruikers die wel gebruik maken van een applicatie van de klant kunnen nu niet bijgestaan
worden wanneer dit wel zou moeten. Als een klant iets mist op de applicatie en dit wordt
opgemerkt door het gebruikersgedrag te observeren, doordat de gebruiker de applicatie
sluit binnen een korte tijd kan er gekeken worden naar eventuele toevoegingen aan de
applicatie die deze persoon langer op de applicatie zal houden.
5
3.1 Probleemstelling
Het huidige dilemma is dat het Yunits framework weinig doet met het concept ‘Content op
maat’. Hierdoor krijgt een website vrij snel een statische look & feel. Zo zal gebruiker x
tijdens het browsen dezelfde pagina’s te zien krijgen als gebruiker y, terwijl de behoeftes en
interesses van deze gebruikers enorm kunnen verschillen. Er wordt vandaag de dag
weliswaar wel iets gedaan met het tonen van content op maat, dit wordt echter in beperkte
mate gedaan.
De hoofdvraag bevindt zich momenteel in de concept-fase en dient verfijnd te worden in de
loop van het project, maar geeft een duidelijk beeld van het op te lossen probleem.
Hoe kan het Yunits framework, met behulp van tracking, content op maat aanbieden aan
haar eindgebruikers?
3.2 Relatie met de studie
Ten eerste is de opdracht voornamelijk backend georiënteerd, wat het “onzichtbare” deel
van de applicatielogica betreft. Hier zal veel programmeerwerk aan te pas komen. Tijdens
mijn studie heb ik verschillende cursussen gehad die goed hierop aansluiten. Zo heb ik onder
andere de cursussen Webprogramming, Java en OO-programmeren gevolgd. Deze kennis zal
van pas komen tijdens het werken met het Yunits framework. Dit omdat vele modules
veranderd moeten worden die momenteel geïmplementeerd zijn in dit framework om zo
gebruikersgegevens te kunnen bijhouden.
Doordat ik al enige ervaring heb met dit framework zal er minder voorbereiding nodig zijn
om aan de slag te gaan met dit project. Wel is er extra kennis vereist over hoe deze backend
oplossing tot stand moet komen, een vaardigheid die tijdens mijn studie is gekneed en
gevormd. Problemen die tijdens projecten met studiegenoten zich voordeden hadden ook
als vereiste dat er grondig onderzoek naar gedaan moest worden, iets wat nu goed van pas
zal komen.
Naast het programmeren en vooronderzoek verrichten zijn er ook andere vaardigheden die
ik tijdens mijn studie heb vervaardigd. Tijdens het afstudeerproject zal ik moeten
presenteren en communiceren, iets waarbij een cursus als Leren communiceren of de vele
presentaties die ik heb moeten geven handig zijn om deze vaardigheden toe te kunnen
passen op de werkvloer. Doordat het werken met Yunits een bepaald niveau Engels vereist is
de cursus Business English tijdens mijn studie goed geweest om mijn vaardigheid in de
Engelse taal te verbeteren.
In de eerste periode van mijn 4e studiejaar heb ik de minor Systems Security afgerond.
Tijdens deze minor heb ik de onder andere de cursussen Cryptografie en Security techniek
gevolgd. Alhoewel het Yunits framework uit een veilige codebase bestaat, zullen deze
vakken goed van pas komen tijdens de realisatie van het content op maat concept. Ook zal
het vak Juridische aspecten goed te pas komen, aangezien de wetgeving omtrent het tracken
van gebruikers behoorlijk strikt is.
6
3.3 Mogelijke valkuilen
- Opdracht is te groot of te klein?
- Regelgeving omtrent tracking
7
3.4 Onderzoeksmethoden
-
Onderzoeksmethoden
o Welk type gegevens moeten er verzameld worden?
o Moet er een derde partij (externe service) betrokken bij worden?
8
4. Betrokkenen
Siebe van Schalkwijk zal fungeren als bedrijfsbegeleider. Na zijn
bachelor Information Technology heeft hij op de universiteit Business
informatics afgerond. Binnen Yard vervult hij de functie technisch
consultant. Naast zijn enorme ervaring en kennis van marketing en
consultancy heeft Siebe ook verstand van programmeren. Zijn functie
is voornamelijk het soepel laten verlopen van de communicatie tussen
de klant en de programmeurs.
Tel.
0612312321
E-mail [email protected]
LinkedIn https://nl.linkedin.com/in/siebevanschalkwijk/en
Dennis van Aalst is hoofd techniek, waar ik en collega’s terecht kunnen
met vragen. Wanneer Siebe afwezig is vervult Dennis de rol als mijn
begeleider. Als hoofd stond hij al aan de basis van vele projecten bij
Yard, waaronder mijnhuisartsenpraktijk.net
E-mail [email protected]
https://nl.linkedin.com/in/dennisvanaalst1
Michali Sarris is lead-developer binnen het Yard team. Hij volgde
Software engineering aan de HU. Michali heeft alle technische kennis
in huis, zoals kennis van OO, MVC patterns, Systeemarchitectuur en is
de maker van Yunits. Bij hem kan ik terecht voor diepgaande
technische vragen en de globale aanpak van het project.
E-mail [email protected]
https://nl.linkedin.com/in/michali-sarris-47679616
 de bedrijfs-/persoonsgegevens (d.w.z. naam, e-mailadres, telefoonnummer van
betrokkenen). indien beschikbaar dient het LinkedIn-account van de bedrijfsbegeleider te
worden vermeld;
 een globale planning;
9
5. Globale aanpak
Hond
- Globale planning geven
5.1 Theoretisch kader
- Artificial intelligence
- Tracking
- Artikelen opzoeken om “later” te lezen
10
Download