...
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. (Opdrachtgever mag sprintplanning niet aanpassen tussendoor) De laatste twee weken zijn gereserveerd om de eindpresentatie te maken en het softwarepakket te overhandigen en toe te lichten (Gaan we dit doen?).
Het ontwikkelteam is beschikbaar op werkdagen tussen 09:00 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. (Hieronder een overzicht waar alle uren heen gaan! moet nog worden verbeterd, dit is puur om een beeld te schetsen.)
Bezigheden die tijd kosten buiten het maken van het product.
...
Het komt erop neer dat er per sprint gemiddeld 20 uur per persoon overblijft om te werken aan het product. In deze tijd gaat het team de bijbehorende documenten schrijven, software schrijven, unit testen en reviewen.
...
Het front-end gedeelte realiseren op basis van Vue.js
Het backend gedeelte realiseren door middel van Java springboot.
-- Api grenzen nog verwerken.
...
Op te leveren producten en kwaliteitseisen
In dit hoofdstuk behandel je alle producten die je in hoofdstuk 4 beschreven hebt en moet opleveren, zoveel mogelijk in detail. Het gaat dan zowel om producten die je aan je opdrachtgever levert, als om de producten die school van je vraagt. Daarin rafel je de resultaten die je moet opleveren uiteen in kleinere (deel)producten. Zo kan het resultaat ‘een stuk werkende code’ bestaan uit een ontwerp, code, een testrapport en overdrachtsdocumentatie, etc.
In elk geval staan de volgende zaken ook op die lijst:
- Een eindverslag
- Eindpresentatie
- Reflectieverslag (afstudeerders) of projectverslag (onderwijsprojecten)
- Bijlagen (waarnaar je in de hoofdtekst correct verwijst)
Voor ieder van de beschreven producten definieer je vervolgens meetbare (SMART) kwaliteitseisen. Je bedenkt welke activiteiten je moet doen om de producten volgens die kwaliteitseisen te maken en hoe je ervoor zorgt dat die kwaliteit ook in het proces bewaakt wordt (proceskwaliteitseisen). Dit breng je onder in een tabel. Hieronder staat een voorbeeld, dat expres niet uitputtend is ingevuld, ook zijn de kwaliteitseisen nog niet SMART geformuleerd. En… realiseer je dat het slechts een voorbeeld is!
Product |
Productkwaliteitseisen
(SMAR(T))
Benodigde activiteiten om te komen tot het product
Proceskwaliteitseisen
(5XW 1xH)
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
Productkwaliteitseisen | Benodigde activiteiten om te komen tot het product | Proceskwaliteitseisen | |
PvA |
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
ICA Controlekaart Voldoet aan |
PvA template | Gesprek houden met opdrachtgever om |
informatie te krijgen |
Achitectueel overzicht opstellen
Deployment diagram opstellen
Sub-systemen uitwerken (als deze er zijn)
Database ontwerp opstellen
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 |
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
Oplevering en goedkeuring van product door opdrachtgever en projectbegeleider tussendoor en op de opleverdatum
Respons in maximaal 1 sec
Maximaal 3 major bugs (wel een alternatief of eventuele oplossing voorlegen)
Code omzetten tot applicatie
Applicatie testen
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 |
Bevat alle unittests
Bevat zowel de verwachte resultaten als de daadwerkelijke resultaten van de unittests
Unittests uitvoeren
Bugs rapporterenGoedkeuring van min. 2 groepsleden voor elk afgeronde onderdeel Oplevering en goedkeuring van product door opdrachtgever en projectbegeleider tussendoor en op de opleverdatum |
ICA Controlekaart
Voldoet aan Eindverslag 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
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 Oplevering en goedkeuring van product door opdrachtgever en projectbegeleider tussendoor en op de opleverdatum |
Applicatie | Respons in maximaal 1 sec Maximaal 3 major bugs (wel een alternatief of eventuele oplossing voorlegen) | 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 |
Respons in maximaal x tijd
Maximaal x major bugs
….
Oplevering en
goedkeuring van
tussenproducten
door
opdrachtgever aan
het einde van
iedere sprint
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 |
….
Requirements uitvragen
Werkzaamheden observeren
UC diagram maken
Fully dressed use cases uitschrijven
Domeinmodel maken
….
Code
100% (geslaagde) unittests
Commentaar in het Engels
Voldoende aan guideline
Traceable naar specifieke requirements
…..
Schrijven code
Unittests schrijven
Code reviewen
….
Onderzoeksverslag
ICA controlekaart
…..
Wat is nodig om je onderzoeksvraag te beantwoorden, welke activiteiten moet je doen? Bijvoorbeeld:
Interviewen betrokkenen
Literatuuronderzoek
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 |
Ontwikkelmethode
Nu je weet wat je gaat opleveren (producten en kwaliteit daarvan) en wat je daarvoor moet doen (overzicht activiteiten) met welkegrenzen en randvoorwaarden, geef je aan welke methode(n) jij gaat inzetten in je project. Heb je te maken met een adviestraject dan ligt het voor de hand om eerst een onderzoek te doen en daarna met een advies te komen. Ben je bezig met het ontwerp van bijvoorbeeld een website of ga je een stuk software ontwikkelen, maak dan eerst een onderbouwde keuze tussen bijvoorbeeld waterval, incrementeel, iteratief of een combinatie van die laatste twee. Daarna kun je eventueel specifieker worden door het kiezen van een bepaalde ontwikkelmethode. Hierbij spelen in elk geval de volgende overwegingen een rol:
...