Sprint 7: App finetunen

advertisement
Strijp-S projectinitiatiedocument (PID)
Auteur: Ruben Sissing
Opdrachtgever: Oddessey Solutions
Periode: 31 augustus 2015 t/m 31 januari 2016
Versie: 1.0
Versie
Status
0.1
0.2
0.3
concept
concept
concept
0.4
0.5
0.6
1.0
Datum
Wijzigingen
03-09-2015 Eerste opzet
04-09-2015 Feedback Tom verwerken
24-09-2015 Feedback Michael Schifferling verwerken
Planning aanpassen
concept
02-10-2015 Feedback Michael Schifferling verwerken
concept
21-10-2015 Tekst laten overlezen en planning aangepast
eerste versie
27-10-2015 Feedback Tom verwerkt
definitieve versie 09-11-2015 Kleine aanpassingen en planning bijgewerkt
Ruben Sissing
2
Inhoudsopgave
Oddessey Solutions
4
De opdracht
Opdracht omschrijving
Werkzaamheden
Eisen aan de opdracht
5
5
5
6
Aanpak
8
Planning
9
Ruben Sissing
3
Oddessey Solutions
Oddessey Solutions is een ICT-bedrijf gestart in 2003 met sms-diensten/-abonnementen
voor consumenten. Een voorbeeld hiervan is Corendon vliegvakanties. In samenwerking met
SBS6 zijn er winacties getoond op televisie.
In 2011 heeft Oddessey de overstap gemaakt naar mobiele software. Tegenwoordig worden
namelijk sms-diensten bijna niet meer gebruikt in Nederland, alleen nog wel voor verificatie
van telefoonnummers in (web)applicaties. Door de komst van mobiel internet en doordat de
telefoons veel slimmer zijn geworden, zijn sms-diensten overbodig geworden.
De organisatiestructuur (fig. 1) van Oddessey Solutions ziet er al volgt uit. Clifford Francis is
de Directeur en daaronder zitten de projectmanagers Tom Hoekstra en John Hertogs. De
projectmanagers sturen het developer team aan. Zelf heb ik voor mijn project alleen te
maken met Tom. Aan het Strijp-S iOS Meetups project werk ik alleen.
fig. 1 Organisatiestructuur
Ruben Sissing
4
De opdracht
Opdracht omschrijving
Op Strijp-S zijn veel verschillende bedrijven aanwezig met ieder zijn of haar expertises. Door
deze grote diversiteit is het lastig om te achterhalen waar welke kennis te vinden is.
Wanneer er voor een project bijvoorbeeld een fotograaf ingeschakeld moet worden, is het
onnodig om ver buiten Strijp-S te zoeken. De kennis is aan zekerheid grenzende
waarschijnlijkheid op steenworp afstand aanwezig. Oddessey Solutions wil bereiken dat
mensen op Strijp-S sneller met elkaar in contact komen. Er is veel kennis en specialisme op
Strijp-S aanwezig, maar het is onbekend welke bedrijven er gevestigd zijn.
Door middel van een iPhone en Android app die alle kennis op Strijp-S bundeld wil Oddessey
het probleem gaan verhelpen. Via deze app de zal de kennis eenvoudig en inzichtelijk
weergegeven worden, waarna onderling een afspraak gepland kan worden om in contact te
komen.
In de app kan worden opgegeven wat voor werkzaamheden je verricht en waar je naar op
zoek bent. Ook moet er een afspraakadres worden opgegeven waar men elkaar kan gaan
ontmoeten. Dit kan in de vorm van een suggestie voor een koffiezaak of restaurant waar je
voorkeur naar uitgaat. De app zoekt door middel van de opgegeven informatie naar een
persoon die aan jouw voorkeuren voldoet. Hierna kan een uitnodiging gestuurd worden met
details over de ontmoeting een een voorkeur voor dag en tijd. Aan het eind wordt er
onderzoek gedaan om te kijken of de Apple Watch een toegevoegde waarde heeft voor de
app. Omdat Strijp-S een omgeving is waar veel nieuwe ideeën ontstaan, is het goed om ook
de app voor Strijp-S te voorzien van moderne snufjes zoals een Apple Watch app. Uit het
onderzoek zal moeten blijken of dit voor de app een echte toevoeging is.
Werkzaamheden
Voor dit project moet gebruik gemaakt worden van de bestaande iOS Strijp-S app. Hieraan
wordt het meetups onderdeel toegevoegd. De huidige app is geschreven in Objective-C. Het
meetups onderdeel wordt geschreven in de nieuwe Swift programmeertaal. Deze taal is nog
volop in ontwikkeling en het zal daarom extra tijd vergen om de benodigde functies uit te
werken.
Het meetups onderdeel is al opgeleverd voor Android. Deze versie kan als voorbeeld worden
gebruikt voor de iOS app. Daarbij is het ontwerp uitgewerkt in een flowchart hoe het
uiteindelijk in de app eruit moet komen te zien.
Naast het Strijp-S meetups onderdeel wordt er onderzoek gedaan naar de toevoeging van
een Apple Watch app. Hiervoor wordt onderzoek gedaan naar de voordelen en of er
überhaupt vraag naar is.
Aan het begin zal er veel tijd gaan zitten in het uitzoeken en leren begrijpen van de
bestaande code. In tegenstelling tot waarin de applicatie is geschreven wordt tegenwoordig
de taal Swift gebruikt voor het programmeren voor Apple producten. Het is mogelijk om in
beide talen te werken in één applicatie, hier moeten echter wel handelingen voor worden
uitgevoerd. Daarbij is de programmeertaal Swift erg nieuw (geïntroduceerd op 2 juni 2014)
Ruben Sissing
5
en volop in ontwikkeling. Op moment van schrijven is versie 2.0 beschikbaar. Een valkuil
voor mij is dat ik voor mijn gevoel alles al moet kunnen voordat ik ergens ga werken, terwijl
dit niet de bedoeling is van een opleiding/stage. De benodigde basiskennis is echter wel
aanwezig om een app op te zetten.
Risico’s
Daar mijn programmeer kennis voor iOS nog niet op hoog niveau zal er een risico zijn dat de
app niet op tijd af komt. Om dit te voorkomen moet er een goede planning worden gemaakt.
Wanneer er vertraging dreigt op te treden moet op tijd worden ingegrepen. Daarnaast volg
ik verschillende iOS cursussen om mijn kennis te verhogen. De methodes die ik hiervoor
gebruik zijn van de iOS Academie en Team Treehouse.
Een ander risico is dat nieuwe programmeertaal van Apple volop in ontwikkeling is. Zo
komen hier geregeld updates van uit, waardoor de syntax en ingebouwde functies snel
kunnen wijzigen. Hierdoor werken tutorials niet direct, tevens kost het meer tijd om uit te
zoeken hoe het dan wel werkt. Om dit risico te beperken moet er meer tijd ingepland
worden.
Wanneer ik aan de slag ga aan het eind van het project met de Apple Watch kan ik tegen
problemen aanlopen doordat de Apple Watch net nieuw is en hierover nog niet veel uitleg
vindbaar is. Hierdoor kan het voorkomen dat ik sommige functies die ik vooraf bedenk niet
kan realiseren.
Randvoorwaarden
De API voor de Strijp-S app is al gerealiseerd. Dit geldt ook voor het meetups onderdeel voor
de Android toestellen. Tijdens dit project wordt hier dan ook geen tijd aan besteed om hier
onderdelen aan toe te voegen of aan te passen. Indien toch wijzigingen noodzakelijk zijn zal
dit door iemand anders worden gerealiseerd.
Het design van de Strijp-S app staat vast. Hier kunnen geen veranderingen in worden
doorgevoerd. Vanuit Oddessey Solutions is het ontwerp al uitgewerkt in een flowchart.
Hierin is te zien hoe de app flow werkt en hoe de schermen eruit moeten komen te zien.
Daarnaast is de Android app al gerealiseerd en kan als voorbeeld worden gebruikt.
Het Strijp-S meetups onderdeel wordt tijdens dit project alleen gerealiseerd voor de iPhone.
Niet voor andere platformen.
Eisen aan de opdracht
De eisen aan de opdracht zijn uitgewerkt via de MOSCOW-methode. Hierdoor is er een
duidelijk overzicht van de eisen aan de opdracht.
Must have
De app moet minimaal de volgende onderdelen bevatten:
 Voorkeuren opgeven voor industrieën;
 koffie/restaurant locaties;
 uitnodigingen versturen;
 datum prikken;
 uitnodigingen accepteren.
Ruben Sissing
6
Should have
Datum aanpassen door diegene die de uitnodiging ontvangt wanneer geen van de datum
suggesties uitkomen. Filter optie bij de voorkeur tags en koffie / restaurant locaties. Push
notificaties, vanaf de Push notificatie naar de juiste locatie in de app gestuurd worden.
Could have
Wanneer uit het onderzoek blijkt dat een Apple Watch app een toegevoegde waarde heeft
kijken naar de mogelijkheden om deze te realiseren als hier genoeg tijd voor is. Dit is niet
noodzakelijk.
Won’t have
iPad app of een uitbreiding naar andere platformen. Voor het Android platform is het
meetups onderdeel al gerealiseerd.
Ruben Sissing
7
Aanpak
Tijdens dit project wordt gebruik gemaakt van Trello. Oddessey Solutions maakt hier zelf
gebruik van. Dit is een vorm van scrum via het internet. Op deze manier is het scrumbord
van computer tot smartphone altijd beschikbaar en zelfs op je Apple Watch. Het voordeel
hiervan is het dat er geen Post-it blaadjes hoeven te worden opgeplakt. Tijdens dit project
werk ik alleen aan het meetups onderdeel.
Tijdens het project zullen er sprints worden opgezet waarbij aan het eind een werkend
onderdeel moet kunnen worden aangetoond. Door deze methode te gebruiken heeft
Oddessey Solutions tijdens het project inzicht of het goed gaat en of alle functies werken die
worden gerealiseerd. Wanneer er een onderdeel klaar is kan deze worden getest en
uiteindelijk worden aangepast op basis van feedback. In volgende sprint kan dan verder
gewerkt worden aan de volgende functie binnen de app. Hieronder een overzicht van de
sprints die doorlopen gaan worden.
Sprint 1: Bestaande code bestuderen en view controllers bekijken en mee oefenen
Sprint 2: Alamofire framework
Sprint 3: Schermen van het meetups onderdeel aanmaken en aan elkaar linken
Sprint 4: Benodigde data ophalen en koppelen aan het meetup registratie onderdeel
Sprint 5: Benodigde data ophalen voor het weergeven van de matches
Sprint 6: Benodigde data ophalen voor het contacten met een match
Sprint 7: App finetunen
Nadat het meetups onderdeel opgeleverd is zullen er twee onderzoeken worden uitgevoerd.
Het eerste onderdeel is Automation UI testing. Vanuit Oddessey Solutions komt de vraag of
dit toegevoegde waarde heeft om toe te passen bij meerdere projecten. Dit kan
bijvoorbeeld worden toegepast tijdens het toevoegen van functies aan de Strijp-S app.
Hiermee kan gecontroleerd worden of bestaande functies nog werken na het toevoegen van
nieuwe functies. In het tweede onderzoek zal gekeken worden of de Apple Watch een
toegevoegde waarde heeft voor de Strijp-S app. Indien er tijd over is en uit het onderzoek
een positief signaal komt kan deze app gerealiseerd worden. Dit is echter geen must om de
huidige opdracht af te ronden.
Hoofdvraag:
Welke functie(s) kan de Apple Watch voor de Strijp-S app vereenvoudigen zodat de Watch
app een toegevoegde waarde heeft ten opzichte van de huidige app?
Deelvragen:
1. Heeft een Apple Watch een toegevoegde waarde boven op de huidige smartphone
app?
2. Wat zijn functies die de Apple Watch kan overnemen van de smartphone App?
Ruben Sissing
8
Planning
In deze planning wordt op een globale wijze de planning omschreven. Hierin wordt
uitgegaan van een de verwachte tijd in weken uitgedrukt. Tijdens het project zal deze nog
worden aangepast en/of aangevuld op basis van werkzaamheden die langer dan wel korter
kunnen duren dan verwacht.
Week
1
2
3
4
5
6
7
8
9
Werkzaamheden
SPRINT 1
Oriëntatie
PID-opstellen
Huidige Strijp-S app bestuderen
Introductie presentatie voorbereiden
SPRINT 1
Introductie presentatie geven
Strijp-S app:
- Trello taken toevoegen
- Start scherm meetups
- Profiel configuratie opzet
Automation UI testing onderzoek:
- Bekijk wat het voor toegevoegde waarde heeft
SPRINT 1
Strijp-S app:
- Uiterlijk van app opzetten
SPRINT 2
Strijp-S app:
- Connectie maken met de API
- Koffielocatie
SPRINT 2
Strijp-S app:
- Alamofire framework uitzoeken
SPRINT 2
Strijp-S app:
- Alamofire framework uitzoeken
SPRINT 3
Strijp-S app:
- Collection View met interesse tags / registratie onderdeel
SPRINT 3
Strijp-S app:
- Weergave van matches overzicht
- Weergave van profielen binnen eigen interesse tags
Stageverslag:
- Opzet maken
SPRINT 3
Strijp-S app:
- Afspraak planner weergave
- Koffie/restaurant locatie weergave
Ruben Sissing
9
10
11
12
13
14
15
Stageverslag:
- Hoofdstukken aanmaken
- Hoofdstuk: bedrijf
SPRINT 4
Strijp-S app:
- Tags voor registratie van meetups onderdeel voltooien
- Koffie locaties weergeven en laten kiezen
- Onderdeel testen
Stageverslag:
- Hoofdstuk: Opdracht omschrijving
- Hoofdstuk: Evaluatie
SPRINT 5
Strijp-S app:
- Matches weergeven
- Profiel weergeven
- Eigen profiel aanpassen (registratie opnieuw doorlopen)
- Onderdeel testen
Stageverslag:
- Hoofdstuk: Inleiding
- Stageverslag ter eerste controle naar docent opsturen
SPRINT 6
Strijp-S app:
- Afspraak maken realiseren
- Datum laten kiezen
- Geschiedenis weergave
Stageverslag:
- Stageverslag feedback verwerken
- Evaluatie
SPRINT 6
Strijp-S app:
- Andere datum suggestie geven
- Gemaakte afspraken weergeven
- Onderdeel testen
Automation UI testing onderzoeken uitbreiden
- Breid het onderzoek aan het begin van de stage verder uit
SPRINT 6
Strijp-S app:
- Push notificaties realiseren
- Push notificaties testen
SPRINT 7
Strijp-S app:
- App finetunen
- App testen
Onderzoek Apple Watch app:
- Juiste template opzetten
- Eerste opzet maken
- Lijst met mogelijke toepassingen
- Prototype opstellen
Ruben Sissing
10
16
17
18
19
Onderzoek Apple Watch app:
- Prototype bij verschillende mensen uittesten met Apple Watch
- Onderzoek verder uitwerken
Stageverslag:
- Samenvatting schrijven
- Voorwoord schrijven
- Evaluatie aanvullen
Apple Watch app:
- Planning maken voor uitwerking
Stageverslag:
- Onderzoek samenvoegen in stageverslag
- Literatuurlijst vanuit onderzoek invullen
Stageverslag:
- Tekst controle
Stageverslag:
- Laatste aanpassingen doorvoeren
- Klaarmaken voor oplevering
20
Ruben Sissing
11
Download