Versions Compared

Key

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

...

  • Het project duurt tot 7 juni 2024.
  • De applicatie-backend wordt ontwikkeld in Java.
  • Om de applicatie te koppelen met een database wordt de Java Persistence API (JPA) toegepast, waardoor het later mogelijk is om relatief makkelijk andere databases met de applicatie te koppelen.
  • Het uiteindelijke product moet werkzaam zijn op Windows 11 en MacOS 13.
  • Na het project is het team niet verantwoordelijk voor gebruikerstraining of systeemonderhoud; de oplevering omvat een installatiegids.
  • Het hele database systeem moet gebackupt kunnen worden als een file via een cloud service als dropbox, zodat er geen kosten zijn om het database systeem te hosten.

...

DeelproductProductkwaliteitseisenBenodigde activiteitenProceskwaliteitseisen
Plan van aanpakHet plan van aanpak moet het doel van het project, de projectgrenzen, de randvoorwaarden, de eisen van de deelproducten en risicos bevatten.alle hoofdstukken bevatten van het document "Toelichting op PvA 4.0".
De opdrachtgever gaat akkoord met het Plan van Aanpak
  1. Eerste gesprek houden met de opdrachtgever om extra informatie over de opdracht te verkrijgen
  2. Goed de opdrachtinformatie doorlezen
Het plan van aanpak wordt in een assessment in een van de eerste drie weken met de domeinbegeleider en de professional skills begeleider besproken waarna feedback volgt en aangepast wordt.
Software Requirement Specification

Het SRS moet usecases bevatten, en de code/tests moeten traceerbaar zijn naar deze usecases.

  1. De userstories zijn genummerd.
  2. De usecases zijn gekoppeld aan de relevante userstories.
  3. Bevat system sequence diagrammen voor de balangrijkste usecases.
  4. Bevat sequence diagrammen voor de belangrijkste usecases.
  5. Bevat functionele eisen volgens FURPS.
  6. Bevat schermontwerpen voor de applicatie

Het SRS moet gebaseerd zijn op het template bestand "SRS" van de HAN.

  1. Userstories bedenken
  2. Usecases bedenken
  3. Usecases uitwerken
  4. System sequence diagrammen makenmaken mits usecase groot of onduidelijk is.
  5. Functionele en non-functionele eisen opstellen volgens FURPS+
  6. Frontend ontwerpen maken
Nadat een onderdeel gemaakt is wordt het door de kwaliteitsmanager gereviewd.
Software Design Document

Het SDD moet designkeuzes uitleggen en beargumenteren. In het SDD moet verwezen worden naar SOLID of GRASP principes, zoals aangeleerd in Object oriented analysis and design.

  1. Het SDD bevat een deployment-diagram.
    1. Het deployment-diagram bevat de juiste versies van gebruikte software.
    2. Communicatie tussen lagen bevat de gebruikte poorten en communicatietechnieken.
  2. Het SDD bevat een package-diagram.
  3. Het SDD bevat sequence diagrammen voor grote of onduidelijke usecases.
  4. Het SDD bevat een klasse diagram met uitleg over de gemaakte keuzes.
  5. Het SDD bevat een PDM met uitleg over de gemaakte keuzes.

Het SDD moet gebaseerd zijn op het template bestand "SDD" van de HAN.

  1. Sequence diagrammen uitwerken
  2. Sequence diagrammen toelichten
  3. Klasse diagram maken
  4. Er moet een deployment diagram gemaakt worden
  5. Er moet een package-diagram gemaakt worden
  6. Er moet worden beschreven worden hoe de applicatie geïnstalleerd kan worden
Nadat een onderdeel gemaakt is wordt het door de kwaliteitsmanager gereviewd.
Java-code
  1. De code wordt met Java gemaakt.
  2. Er word gebruik gemaakt van Maven.
  3. In de code wordt enkel de Engelse taal gebruikt.
  4. Namen van classes, methods en variables voldoen altijd aan camelCase.
  5. Namen van classes beginnen altijd met een hoofdletter.
  6. Namen van packages bevatten nooit hoofdletters.
  7. Voor elke method staat een comment met daarin een korte beschrijving van de method.
  8. Wanneer een class gebruik maakt van een externe library wordt er gebruik gemaakt van het adapter pattern.
  9. De naam van testclasses is de naam van de geteste class plus Test.
  1. Er moet een maven project gemaakt worden
  2. De code van usecases moet gemaakt worden
Elke pull-request word door tenminste 2 andere teamleden nagekeken of de code voldoet aan de eisen gesteld in kolom 2. Bij oplevering wordt de gehele codebase naar de opdrachtgever gestuurd.
Database
  1. De database moet minimaal in de derde normaalvorm zijn
  2. De database moet gemaakt worden op basis van het PDM
  3. De database moet gebackupt kunnen worden via een cloud service als dropbox, en moet niet gehost worden als een externe database.
  4. Tabelnamen en attributen zijn met camelCase geschreven.
  5. Tabelnamen beginnen met hoofdletters
  6. Enkel de Engelse taal word gebruikt in de database
  1. De database moet ontworpen worden o.b.v de verkregen testdatabase
  2. Het PDM moet gemaakt worden
Telkens als de database veranderd moet minimaal 1 ander persoon de structuur controleren om er zeker van te zijn dat het goed gedaan is.
TestplanHet testplan bevat informatie over de tests die uitgevoerd gaan worden, en instructies over hoe deze uitgevoerd moeten worden. De tests moeten traceerbaar zijn naar de usecases in het SRS.
  1. Tests moeten bedacht worden
  2. Tests moeten beschreven worden
Elke keer als er een Java test gemaakt is wordt deze in dit document toegelicht.
TestrapportHet testrapport bevat de resultaten van de tests die uitgevoerd zijn volgens het testplan. 
  1. De resultaten van de tests moeten beschreven worden.
  2. Er moet een conclusie gemaakt worden
Nadat alles is getest wordt er een rapport gemaakt waarin beschreven staat wat er wel goed gaat en wat er niet goed gaat.
Installatiegids

De installatiegids moet beschrijven hoe de applicatie geïnstaleerd geïnstalleerd kan worden en hoe de ontwikkelomgeving moet worden opgezet. Dit moet op een manier zodat iemand zonder verstand van ict het ook kan.

  1. Beschrijven installatie van applicatie
  2. Beschrijven opzet ontwikkelomgeving
De installatiegids moet getest en gereviewed worden door iemand anders dan die hem geschreven heeft.
Gebruikershandleiding

Beschrijft hoe je de functies in de applicatie kunt uitvoeren.

  1. Beschrijven hoe je de functies in de applicatie kunt uitvoeren.
 

...