...
Organisatorische grenzen
Het project begint op 5-4-2022 (pre-sprint) en de eerste sprint gaat beginnen op woensdag 13-4-2022, de opleverdatum is 10-6-2022. In totaal gaat het team werken in drie sprints, tijdens de sprints zijn de regels van SCRUM leidend. Tijdens de sprints mag de opdrachtgever de scope van de actieve sprint niet aanpassen. De laatste twee weken zijn gereserveerd om de eindpresentatie te maken en het softwarepakket te overhandigen en toe te lichten.
Het ontwikkelteam is beschikbaar op werkdagen tussen 09:00 30 en 17:00, met uitzondering van vrije dagen (https://www.han.nl/studeren/jaarrooster/). Het team bestaat uit vijf ontwikkelaars (studenten). De ontwikkelaars hebben iedere week 40 uur om aan het project te werken. Dit is wel inclusief momenten die nodig zijn buiten het project, zoals hieronder staat gedocumenteerd:
Bezigheden die tijd kosten buiten het maken van het product.
...
...
Het front-end gedeelte wordt gerealiseerd met het Vue.js framework.
Het backend gedeelte wordt gerealiseerd met het Java framework springboot.
Er wordt gebruik gemaakt van de google API of een soort gelijk alternatief.
...
Product | Productkwaliteitseisen | Benodigde activiteiten om te komen tot het product | Proceskwaliteitseisen |
PvA | ICA Controlekaart Voldoet aan PvA template | Gesprek houden met opdrachtgever om informatie te krijgen Project achtergrond achterhalen Project doel en opdracht uitwerken Randvoorwaarden opstellen Projectgrenzen opstellen Kwaliteitseisen stellen aan de op te leveren producten Ontwikkelmethode uitwerken Contactgegevens noteren Planning maken Risico's opstellen Commentaar verwerken | Goedkeuring van min. 2 groepsleden voor elk afgeronde onderdeel Oplevering en goedkeuring van product door opdrachtgever en projectbegeleider tussendoor en op de opleverdatum |
SRS | ICA Controlekaart Voldoet aan SRS template | Gesprek houden met opdrachtgever om specificaties te krijgen Actoren opstellen Operatie omgeving beschrijven Constraints beschrijven Use case diagram en brief descriptions uitwerken Domein model opstellen Use cases beschrijven Niet functionele requirements opstellen User interface schetsen maken Ontwerp beslissingen uitwerken Commentaar verwerken | Goedkeuring van min. 2 groepsleden voor elk afgeronde onderdeel Oplevering en goedkeuring van product door opdrachtgever en projectbegeleider tussendoor en op de opleverdatum |
SDD | ICA Controlekaart Voldoet aan SDD template | Gesprek houden met opdrachtgever om specificaties te krijgen Achitectueel overzicht opstellen Deployment diagram opstellen Sub-systemen uitwerken (als deze er zijn) Database ontwerp opstellen Ontwerp beslissingen uitwerken Commentaar verwerken | Goedkeuring van min. 2 groepsleden voor elk afgeronde onderdeel Oplevering en goedkeuring van product door opdrachtgever en projectbegeleider tussendoor en op de opleverdatum |
Broncode | 100% geslaagde unittests Minimaal 80% unittest coverage Code geschreven in Engels/ Nederlands Traceable naar specifieke requirements en constraints Werkende build op Jenkins | Code schrijven Unit tests schrijven Code reviewen Jenkins opzetten | Goedkeuring van min. 2 groepsleden voor elke pull request. Voor opleveringen moet het product door alle groepsleden zijn beoordeeld. Oplevering en goedkeuring van product door opdrachtgever en projectbegeleider tussendoor en op de opleverdatum |
Applicatie | Respons in maximaal 1 sec Bevat geen bugs die geschreven usecases blokkeren. | Code omzetten tot applicatie Applicatie testen | Goedkeuring door het hele team Oplevering en goedkeuring van product door opdrachtgever en projectbegeleider tussendoor en op de opleverdatum |
Testrapportage | Bevat alle unittests Bevat zowel de verwachte resultaten als de daadwerkelijke resultaten van de unittests | Unittests uitvoeren Bugs rapporteren | Goedkeuring van min. 2 groepsleden voor elk afgeronde onderdeel Oplevering en goedkeuring van product door opdrachtgever en projectbegeleider tussendoor en op de opleverdatum |
Eindverslag | ICA Controlekaart Voldoet aan Eindverslag template | Goedkeuring door het hele team Oplevering en goedkeuring van product door opdrachtgever en projectbegeleider op de opleverdatum | |
Eindpresentatie | Bevat alle belangrijke punten | Project afgerond Presentatie opzetten | Oplevering en goedkeuring van product door PS docent en projectbegeleider op de opleverdatum |
Reflectieverslag | ICA Controlekaart Voldoet aan Reflectieverslag template Alle competenties uitgewerkt 2 uitgewerkte leerdoelen | Kwaliteitsoordeel geven over de producten De gehanteerde projectmethode evalueren Rol beschrijven Competenties uitwerken Leerdoelen uitwerken Conclusie trekken over het project Factsheet opstellen | Tussentijds ingeleverd Oplevering en goedkeuring van product door PS docent en projectbegeleider tussentijds en op de opleverdatum |
Bijlage | Bevat alle benodigde bijlage | Bijlage gebruiken | Gebruikte bijlagen direct linken Oplevering en goedkeuring van product door PS docent en projectbegeleider tussentijds en op de opleverdatum |
DoD: Na gekeken en goedgekeurd door 2 andere teamleden, alle betrevende tests slagen en voldoet aan de bijbehordende productkwaliteitseisen.
Ontwikkelmethode
Binnen dit project zal het ontwikkelteam op een Agile manier te werk gaan. Aan de hand van Scrum wordt iedere sprint een iets groter product opgeleverd, en na de laatste sprint zijn pas alle use cases geïmplementeerd. Dit betekend dat het HR Portaal wat JDI Smart Web applications voor ogen heeft incrementeel tot stand zal komen. Alhoewel er vanaf het begin van het project door het team gekeken wordt naar de globale requirements, wordt bij elke individuele sprint echt vastgelegd welke use cases er na de desbetreffende sprint af moeten zijn. Op deze manier weet de opdrachtgever waar hij aan toe is, omdat er na iedere sprint een concreet resultaat af is (het gaat hier om een subset van de uiteindelijke features). Voordat het ontwikkelteam begint met de incrementele sprints, zal in de eerste week nog een globaal overzicht van het project worden gevormd aan de hand van overlegmomenten en doormiddel van dit Plan van Aanpak.
Om dit project goed via Scrum te kunnen uitvoeren, zijn een aantal vaste momenten van belang. Ten eerste zal het ontwikkelteam dagelijks tussen 9:00 en 9:15 om 09:30 een daily standup houden. Dit is een kort overleg waarbij wordt afgestemd wat ieder teamlid de voorgaande dag gedaan heeft, en wat hij voor die dag op de planning heeft. Op deze manier zal duidelijk inzichtelijk worden waar iedereen staat, en wordt het duidelijk of er knelpunten in het proces zijn. Naast de daily standup die in de ochtend plaatsvindt, kan er ook nog gekozen worden om een mid-daily standup te houden. Dit is hetzelfde als de daily standup, maar dan om te checken of iedereen die ochtend goed aan de slag is geweest en om een planning te maken voor de rest van de dag. Of er ook ruimte en belang is voor een mid-daily standup zal tijdens de eerste sprint duidelijk worden. Naast de daily standups zullen er tussen de sprints ook sprint planning en sprint retrospective ceremonies plaatsvinden. Dit is om te kijken waar de verbeterpunten van de afgelopen sprint in zitten, en om al vast voor te bereiden op de aankomende sprint. Denk hierbij bijvoorbeeld aan het selecteren van de use cases die in de volgende sprint worden opgepakt. Ten slotte wordt er na iedere sprint ook een sprint review gehouden, waarbij de resultaten van de afgelopen sprint worden gepresenteerd aan de stakeholders, dus o.a. aan Jarno Eggink en Wim Reuterink van JDI.
...
Het ontwikkelteam werkt alle werkdagen van 9:00 30 tot 17:00 gezamenlijk op locatie op de HAN in Nijmegen. Op deze dagen wordt dagelijks een stand-up gehouden om 9:0030, met uitloop tot 9:15 45 als er groepsleden te laat zijn. Wanneer een student later komt of wanneer hij ziek is, laat hij dit weten door een bericht te sturen via een van de beschikbare communicatie middelen, Microsoft Teams of Discord.
...