Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Doelstelling, opdracht, en op te leveren resultaten voor het bedrijf en school

De opdrachtgever heeft op dit moment een niet-digitale oplossing voor het bijhouden van de verlofaanvragen en de administratieve bezigheden van werknemers, zoals op welke dagen mensen op kantoor aanwezig zijn en wat de reiskosten zijn.

De opdrachtgever geeft aan dat er een HR-portaal moet komen, waarbij werknemer-data wordt bijgehouden.

Dit HR-portaal moet het volgende bijhouden:

  • Werkt een medewerker thuis, of is de medewerker op kantoor en dan ook op welke werkplek.
    • Indien een medewerker op kantoor is, wat de afstand is die is afgelegd en wat de reiskosten zijn.
  • Een manier voor de medewerker om verlof aan te vragen, en voor een werkgever om deze aanvraag goed of af te keuren.
    • Hierbij moet er een slack bericht verstuurd worden indien de aanvraag is beoordeeld.

Het HR-portaal wordt gemaakt met behulp van het front-end framework Vue.js, en gebruikt Java spring boot als back-end.

Probleemstelling

Op het moment gaat het opgeven van werkplek bezetting via een spreadsheets op verschillende kanalen, naast het opgeven van de bezetting gaan declaraties via verschillende kanalen en is het noodzakelijk dat er een tussenpersoon de aanvragen doorstuurt naar de HR afdeling en de planner. Dit is tijdrovend en hierdoor kunnen er mogelijk inconsistenties optreden doordat het mogelijk is om fouten te maken bij het invullen.

Doelstelling

...

Probleemstelling

Op het moment gaat het opgeven van werkplek bezetting via een spreadsheets op verschillende kanalen, naast het opgeven van de bezetting gaan declaraties via verschillende kanalen en is het noodzakelijk dat er een tussenpersoon de aanvragen doorstuurt naar de HR afdeling en de planner. Dit is tijdrovend en hierdoor kunnen er mogelijk inconsistenties optreden doordat het mogelijk is om fouten te maken bij het invullen.

Doelstelling

Het bedrijf (JDI) wil alle declaratie aanvragen via een digitaal portaal gaan verwerken. Door het proces te automatiseren is het niet meer nodig dat een tussenpersoon de aanvragen doorstuurt naar de juiste afdeling en dit documenteert. Door het proces te automatiseren is de kans op menselijke fouten kleiner dan met de huidige oplossing. Door de oplossing houdt JDI meer tijd over voor andere werkzaamheden. Dit zorgt ervoor dat er meer geld overblijft.

De opdrachtgever geeft aan dat er een HR-portaal moet komen, waarbij werknemer-data wordt bijgehouden.

Dit HR-portaal moet het volgende bijhouden:

  • Werkt een medewerker thuis, of is de medewerker op kantoor en dan ook op welke werkplek.
    • Indien een medewerker op kantoor is, wat de afstand is die is afgelegd en wat de reiskosten zijn.
  • Een manier voor de medewerker om verlof aan te vragen, en voor een werkgever om deze aanvraag goed of af te keuren.
    • Hierbij moet er een slack bericht verstuurd worden indien de aanvraag is beoordeeld.

De opdracht

Het is aan de opdracht om een Human Resource portaal te bouwen, in het portaal is het mogelijk om in te vullen welke dagen de werknemers thuis of op kantoor werken. Het portaal kan de reisafstanden uitrekenen en dit terugkoppelen aan de declaratieformulieren. Daarnaast wordt het mogelijk voor de werknemers om verlof aan te vragen, en voor de werkgever/planner dit goed of af te keuren. Vervolgens kan er dan door middel van Slack met een bericht aangegeven worden wat het resultaat was van de aanvraag.

...

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.

BezigheidTijdDuur
Software ontwikkelen & reviewen20 Pauze5 uurPer week
Daily stand up1.5 uurPer week
Gesprek procesbegeleider1.5 uurPer week
Projectverslag4 uurPer week
Sprintplanning2 uurPer sprint
Sprintreview1 uurPer sprint
Retrospective1.5 uurPer sprint
Werkoverleg4 uurPer week
Gesprek opdrachtgever1 uurPer week

...

Pauze5 uurPer week



Softwaregrenzen

Het op te leveren softwarepakket wordt een Proof Of Concept (POC).

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
(SMAR(T))

Benodigde activiteiten om te komen tot het product

Proceskwaliteitseisen
(5XW 1xH)

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

Maximaal 3 major bugs (wel een alternatief of eventuele oplossing voorlegen)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

EindpresentatieBevat 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 opleverdatumdoor 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 print 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.  

...

groot

Risico

Kans
(groot-middel-klein)

Impact
(groot-middel-klein)

TegenmaatregelUitwijkstrategie
COVIDmiddelklein

Herverdelen opdrachten tijdens afwezigheid

Thuis online werken

Uitvaller in de groepkleinkleingroot
Herverdelen opdrachten, sprints re-scopen.
Version controlmiddelmiddel

Goed via Bitbucket bijhouden wie wat doet.

Branch protection rules (vereiste reviews)


Ontwikkelomgeving is niet beschikbaarkleingroot
Zelf lokaal proberen te werken totdat de problemen opgelost zijn.
Achterliggende API veranderd (optioneel/checken)kleingrootTijdstekortmiddelgrootGoed plannen en nagaan bij de opdrachtgever of het geplande product realistisch in de tijdsperiode van 8 weken past.Sprints herstructuren om het werk beter op te delen.Goed bijhouden aankomende aanpassingen API


Contributors Summary
columnsedits,comments,lastupdate
scopedescendants