Requirements Engineering/het werk/werkstuk/2013-14/Groep 08

Uit Werkplaats
< Requirements Engineering‎ | het werk‎ | werkstuk‎ | 2013-14
Versie door Tom Nikken (overleg | bijdragen) op 1 apr 2014 om 16:02 (Scenario bij UC 4)
(wijz) ← Oudere versie | Huidige versie (wijz) | Nieuwere versie → (wijz)
Ga naar: navigatie, zoeken

Requirements Engineering


 © comments



 






Analyse voor Claus international



Werkstuk Requirements Engineering


Thomas de Bel, Ronnie Swanink, Bart van de Put, Tom Nikken



Onderwijsinstituut voor Informatica en Informatiekunde

Radboud Universiteit Nijmegen







version 18 februari 2022



Page Break




Introduction

Claus International is een non-profit organisatie die in de decembermaand cadeaus verspreidt naar kinderen over de hele wereld. De werkwijze van Claus International is echter redelijk verouderd, en is hard aan vernieuwing toe om de werkdruk te verlagen en om het bedrijf te redden van een financiële ondergang door een steeds verder krimpend publiek. In dit document wordt een aantal wijzigingen beschreven die de systemen die Claus International nu gebruikt moeten versnellen, en het mogelijk moeten maken om meer klanten aan te trekken in de toekomst.

Wij hebben de vraag van Claus International om een nieuw informatiesysteem geanalyseerd en hebben een ontwerp gemaakt voor een informatiesysteem dat deze problemen oplost. In dit document wordt beschreven:

  • Een analyse van de stand van zaken en de problemen die spelen bij Claus International.
  • Een analyse van de functionaliteiten die in het informatiesysteem nodig zijn.

Voor de beschrijving van de analyse van de functionaliteiten wordt gebruik gemaakt van Use Cases. Een Use Case is een document dat één van de functionaliteiten van een systeem stap-voor-stap beschrijft. Per Use Case worden er vervolgens voorbeelden gegeven voor een mogelijke invulling van die Use Case aan de hand van zogenaamde Scenario's. Ook is er per use case een datamodel gemaakt, beschreven met ORM.

Er zal worden ingegaan op de eisen waar een dergelijk systeem aan zou moeten voldoen. Er wordt gekeken naar wat de basisfunctionaliteit is, welke mensen hier een rol in spelen en hoe de interactie tussen gebruikers en het systeem verloopt. Verder wordt er gekeken naar of er eisen zijn waar aan moeten worden voldaan.

Problem statement

In de huidige situatie verloopt alle communicatie tussen lokale distributiecentra en het administratieve hoofdkantoor geheel via post. Dit is een langzame en arbeidsintensieve manier van communicatie. Door deze langzame communicatie loopt de centrale administratie eigenlijk altijd achter, en kan het bedrijf niet goed zijn werk doen. Iedereen die gegevens wil veranderen, zich wil inschrijven of een donatie wil doen moet op het moment nog naar een van de lokale distributiecentra om dit te regelen. Een groot nadeel hiervan is dat hierdoor een kleiner publiek kan worden bereikt. Klanten moeten dus een hoop moeite doen om de diensten van Claus International te gebruiken. Hierdoor blijven donaties en nieuwe klanten weg. Op dit moment is het ook nog zo dat er bij inschrijven gecommuniceerd moet worden om te controleren of een kind wel daadwerkelijk bij een ouder hoort. Dit is een omslachtig en arbeidsintensief proces, en draagt ook bij aan de administratieve achterstand.

Case analysis

Stakeholder analysis

Hieronder staan een aantal stakeholders beschreven. Stakeholders zijn (fictieve) gebruikers die een distinctieve rol hebben in het huidige systeem, en welke ook een rol gaan spelen in het nieuwe systeem.

Naam Rol Beschrijving
Meneer S. Claus Management Meneer S. Claus wil dat de administratie op orde is zodat er geen cadeautjes op verkeerde plekken terecht komen.
Medewerker A Medewerker administratief hoofdkantoor Deze medewerkers zijn verantwoordelijk voor het verwerken van de binnenkomende post van de

distributiecentra. Zij werken de administratieve database bij. Deze medewerkers regelen ook de distributie van de cadeaus naar de lokale distributiecentra.

Medewerker B Medewerker distrubutiecentrum De medewerkers in de distributiecentra zijn het gezicht naar de klanten toe. Zij nemen nieuwe registraties en wijzigingen aan. Deze sturen zij per post op naar het administratieve hoofdkantoor. Ook zijn zij verantwoordelijk voor het ontvangen van de hoeveelheden cadeaus en het verspreiden van deze cadeaus over het lokale publiek.
Peter Hendriks Ouder Ouders zijn de gebruikers van het systeem. Zij melden hun kinderen aan en zorgen ervoor dat Claus International op de hoogte is van hun wensen.

Mission and vision statement

  • Mission: Ons doel is om de communicatie binnen het bedrijf makkelijker te maken. We willen de interne en externe communicatie van Claus International versnellen en vereenvoudigen.
  • Vision: Wij denken dit doel te bereiken door alle berichtgeving via een centraal systeem te laten verlopen. Hiermee hoeft de klant niet meer naar een van de lokale distributiecentra om zijn/haar gegevens door te geven aan Claus International of om donaties te maken. De communicatie tussen lokale distributiecentra en het administratieve hoofdkantoor hoeft niet meer per post, waardoor de administratie veel meer up-to-date is.
  • Values: We vinden het belangrijk dat het proces doorzichtig is voor onze klant en dat de klant een goed idee heeft van wat het uiteindelijke product gaat worden.

Statement of work

Deliverable DeliverbleType Façade Filled Focused Comment
Introduction Contextual Preliminary version Preliminary version Complete Keep it short at first, only a sketch; nice, clear and complete at the end.
Status: 100% 100% 100% -
Problem statement Key deliverable As good as possible As good as possible Complete
Status: 100% 100% 100% -
Stakeholder list/analysis Contextual As good as possible As good as possible Complete
Status: 100% 100% 100% -
Mission-Vision-(Values) Contextual Complete Complete Complete
Status: 100% 100% 100% -
Statement of Work Contextual Complete, and up-to-date Complete, and up-to-date Complete, and up-to-date
Status: 100% 100% 100% -
Risk Analysis Contextual Complete, and up-to-date Complete, and up-to-date Complete, and up-to-date
Status: 100% 100% 100% -
Use Case Survey Key deliverable As good as possible Nearly complete Complete
Status: 100% 100% 100% -
Integrated UC Diagram Key deliverable Complete (though preliminary) Complete Complete One for whole project
Status: 100% 100% 100% -
Use Cases Key deliverable Not yet! "Filled" level Complete
Status: 100% 100% -
Scenarios Key deliverable Not yet! Several for each UC Complete ("focused" level)
Status: 100% 100% -
Domain Models Key deliverable Not yet! Partially complete Complete One for each UC
Status: 100% 100% -
Business rules per UC Key Deliverable Not yet! Partially complete Complete
Status: 100% 100% -
Integrated Domain Model Key deliverable Not yet! First draft Complete One for whole project
Status: 100% 100% -
Busines Rules Catalogue Key deliverable Not yet! Partially complete Complete
Status: 100% 100% -
Non-functional Requirements Key deliverable Not yet! Partially complete Complete
Status: 100% 100% -
Terminological Definitions Key deliverable Notes Partially complete Complete
Status: 100% 100% 100% -
Executive sponsor viewpoint Implicit deliverable Complete Complete Complete Integrated in M-V-(V)!
Status: 100% 100% 100% -
Use case tests Implicit deliverable Not yet! As good as possible Complete Integrated in scenarios; to be done, but not written down explicitly as a separate item
Status: 100% 100% -

Risk analysis

# Category Risk Solution needed by Status Days lost Expectancy factor Risk factor
01 Team Uitvallen teamlid 2 dagen n.v.t. 3 3% 0.09
02 Opdrachtgever Uitvallen opdrachtgever 5 dagen n.v.t. 6 10% 0.6
03 Communicatie Miscommunicatie opdrachtgever 3 dagen n.v.t. 5 50% 1.5
04 Project Toevoeging eisen 3 dagen n.v.t. 5 2% 0.1
05 Communicatie Miscommunicatie team 1 dag n.v.t. 1 75% 0.75

Requirements

Use cases

In dit onderdeel worden de use cases beschreven. Als eerste is er een overzicht te zien van welke use cases er allemaal zijn opgesteld voor dit project. Vervolgens is er een diagram opgesteld waarop te zien is hoe deze use cases uiteindelijk worden gebruikt door de eindgebruikers van het systeem. Als laatste zijn de volledige uitwerkingen van de use cases gegeven.

De use cases zijn een belangrijk deel van de eisen. Niet alleen geven de use cases de basis aan van hoe het nieuwe systeem zou moeten werken, maar daarnaast geven ze ook mogelijkheden om uiteindelijk te testen of een gebouwd systeem ook voldoet aan de aanvankelijk opgestelde eisen. Binnen het project voor Claus International is er conform aan de opdracht gefocust op het verwerken van de gegevens van de verzorgers en hun kinderen. Er zijn dan ook alleen use cases opgesteld voor het management van de klantgegevens.

Use case survey

# Name Description Initiating actor
01 Verzorger toevoegen Een verzorger moeten zichzelf kunnen toevoegen of laten toevoegen door een medewerker. Verzorger/Medewerker
02 Gegevens verzorger wijzigen Een verzorger moet zijn gegevens kunnen wijzigen of een medewerker moet de gegevens van een verzorger kunnen wijzigen. Verzorger/Medewerker
03 Kind toevoegen Een verzorger moet een kind kunnen toevoegen of kunnen laten toevoegen door een medewerker. Verzorger/Medewerker
04 Gegevens kind wijzigen Een verzorger moet de gegevens van een kind kunnen wijzigen of kunnen laten wijzigen door een medewerker. Verzorger/Medewerker
05 Doneren Een donatie aan Claus International doen. Donateur
06 Gegevens kind opvragen Bekijken van gegevens en cadeauwensen per kind. Medewerker

Integrated use case diagram

Use case diagram.png

Individual use cases

UC1 Verzorger toevoegen

UC1: Verzorger toevoegen
Use case diagram Verzorger toevoegen uml.JPG
Description Het toevoegen van een verzorger aan het systeem d.m.v. een account.
Source Client case en gesprekken met de opdrachtgever.
Version 1.5
Actor Verzorger of Medewerker
Trigger Verzorger wilt zichzelf aanmelden als verzorger.
Basic course of events
  1. Verzorger/Medewerker geeft aan dat er een verzorger ingeschreven moet worden.
  2. Systeem laat formulier zien waarin contactgegevens moeten worden ingevuld.
  3. Verzorger geeft contactgegevens in.
  4. Systeem geeft aan dat de gegevens zijn opgeslagen.
Alternate paths


Exception paths Incorrecte gegevens

4. Het systeem stelt vast dat de NAW gegevens incorrect zijn ingevuld en geeft een foutmelding.
5. De usecase gaat verder bij 2.

Assumptions
  • De site is online
  • De database is online
Preconditions
Postconditions De verzorger is ingeschreven in het systeem
Related business rules
# Rule Definition
001 Het adres van een persoon moet bestaan.
Author Ronnie Swanink
Date 5-3-2014

UC2 Gegevens verzorger wijzigen

UC2: Gegevens verzorger wijzigen
Use case diagram Gegevens verzorger wijzigen uml.JPG
Description Een verzorger moet zijn gegevens kunnen wijzigen of een medewerker moet de gegevens van een verzorger kunnen wijzigen.
Version 1.0
Actor Verzorger of Medewerker
Trigger Een verzorger wil zijn gegevens wijzigen of laten wijzigen door een medewerker bij een distributiecentrum of een medewerker wil de gegevens van een verzorger wijzigen.
Basic course of events
  1. Medewerker geeft aan de gegevens van de verzorger te willen wijzigen.
  2. Systeem vraagt de naam van de verzorger.
  3. Medewerker geeft de naam van de verzorger.
  4. Systeem toont gegevens van de verzorger.
  5. Medewerker wijzigt (deel van) de gegevens.
  6. Systeem controleert gegevens en vraagt om bevestiging.
  7. Medewerker bevestigt de gegevens.
  8. Systeem voert de wijzigingen door en geeft aan dat de gegevens succesvol zijn gewijzigd.
Alternate paths

Verzorger wijzigt gegevens

  1. Verzorger geeft aan zijn gegevens te willen wijzigen.
  2. Systeem toont gegevens van de verzorger.
  3. Verzorger wijzigt (deel van) de gegevens.
  4. Systeem controleert gegevens en vraagt om bevestiging.
  5. Verzorger bevestigt de gegevens.
  6. Systeem voert de wijzigingen door en geeft aan dat de gegevens succesvol zijn gewijzigd.


Verzorger verwijderen

5. Verzorger/medewerker geeft aan de verzorger uit het systeem te willen verwijderen.
6. Systeem vraagt om bevestiging.
7. Verzorger/medewerker bevestigt het verwijderen van de verzorger.
8. Systeem verwijdert de verzorger en geeft aan dat de verzorger is verwijderd.
9. De use case eindigt hier

Actor annuleert wijziging
7. Actor zegt de wijziging te willen annuleren.
8. De use case eindigt hier.

Exception paths

Incorrecte gegevens

6. Het systeem constateert dat (een deel van) de gegevens incorrect zijn.
7. Ga verder bij stap 5.

Assumptions
  • De site is online
  • De database is online
Preconditions De te wijzigen verzorger is in het systeem geregistreerd.
Postconditions De gegevens van de verzorger zijn gewijzigd.
Related business rules
# Rule Definition
001 Het adres van een persoon moet bestaan.
Author Tom Nikken
Date 24-03-2014

UC3 Kind toevoegen

UC3: Kind toevoegen
Use case diagram Kind toevoegen uml.JPG
Description Het toevoegen van een kind aan een verzorger.
Source Client case en gesprekken met de opdrachtgever.
Version 1.5
Actor Verzorger of Medewerker
Trigger Verzorger wilt een kind toevoegen aan het systeem.
Basic course of events
  1. Verzorger/Medewerker geeft aan dat hij/zij een kind wilt inschrijven.
  2. Systeem toont formulier waarin de gegevens van het kind moeten worden ingevuld.
  3. Verzorger/Medewerker geeft gegevens in.
  4. Systeem geeft aan dat de gegevens zijn opgeslagen.
Alternate paths

Verzorger selecteren

Als een medewerker het kind toe wilt voegen moet eerst een verzorger geselecteerd worden om het kind aan toe te voegen.

  1. Systeem toont formulier om een ouder in te zoeken.
  2. Medewerker selecteert ouder.
  3. Usecase gaat verder bij stap 2.
Exception paths Incorrecte gegevens

4. Het systeem stelt vast dat de gegevens incorrect zijn ingevuld.
5. De usecase gaat verder bij 2.

Assumptions
  • De site is online
  • De database is online
Preconditions
  • De actor is ingelogd in het systeem
Postconditions Kind is toegevoegd in het systeem bij de bijbehorende verzorger.
Related business rules
# Rule Definition
001 Het adres van een persoon moet bestaan.
002 Elk kind moet een verzorger hebben.
Author Ronnie Swanink
Date 5-3-2014

UC4 Gegevens kind wijzigen

UC4: Gegevens kind wijzigen
Use case diagram Gegevens kind wijzigen uml.JPG
Description Het wijzigen van de in het systeem opgeslagen gegevens van een kind.
Source
Version 1.2
Actor Verzorger of Medewerker
Trigger Een verzorger wil zelf de gegevens van een kind wijzigen of laat dit door een medewerker bij een distributiecentrum doen.
Basic course of events
  1. Verzorger/medewerker geeft aan de gegevens van een kind te willen wijzigen.
  2. Systeem toont huidige gegevens.
  3. Verzorger/medewerker wijzigt (deel van) de gegevens en geeft aan dit te willen doorvoeren.
  4. Systeem controleert gegevens en vraagt om bevestiging.
  5. Verzorger/medewerker bevestigt de gegevens.
  6. Systeem voert de wijzigingen door en geeft aan dat de gegevens succesvol zijn gewijzigd.
Alternate paths

Kind verwijderen

3. Verzorger/medewerker geeft aan het kind uit het systeem te willen verwijderen.
4. Systeem vraagt om bevestiging.
5. Verzorger/medewerker bevestigt het verwijderen van het kind.
6. Systeem verwijdert het kind en toont aan de verzorger/medewerker dat het verwijderen voltooid is.

Exception paths

Incorrecte gegevens

4. Het systeem constateert dat (een deel van) de gegevens incorrect zijn.
5. Ga verder bij stap 3.

Assumptions
  • De site is online
  • De database is online
Preconditions
Postconditions De gegevens van een kind zijn gewijzigd naar wens van een medewerker/verzorger.
Related business rules
# Rule Definition
001 Het adres van een persoon moet bestaan.
002 Elk kind moet een verzorger hebben.
003 Een verzorger mag alleen de gegevens van de kinderen die aan zijn/haar account gekoppeld zijn aanpassen.
004 Als een verzorger zijn/haar account verwijdert worden alle kinderen van die ouder uit het systeem verwijderd.
Author Bart van de Put
Date 11-03-2014

UC5 Een donatie maken

UC5: Een donatie maken
Use case diagram Doneren uml.JPG
Description Het doneren van geld aan Claus International door een donateur.
Source De business case en gesprekken met Claus International
Version 1.1
Actor Donateur
Trigger Een donateur wil geld overmaken naar Claus International
Basic course of events
  1. De donateur geeft aan het systeem aan een donatie te willen maken.
  2. Het systeem laat het donatiescherm zien en deze vraagt de donateur om zijn naam.
  3. De donateur voert zijn naam in.
  4. Het systeem stuurt de donateur door naar het betalingssysteem.
  5. De donateur handelt zijn transactie af met het betalingssysteem.
  6. Het systeem geeft aan dat de transactie succesvol is verlopen en bedankt de donateur.
Alternate paths

De donateur wenst anoniem te blijven

3. De donateur laat het veld waar hij zijn naam in moet vullen leeg.

4. De use case gaat verder bij stap vier.

Exception paths

Het betalingssysteem is offline of valt uit

4. Het systeem geeft aan dat de donateur op een later tijdstip een nieuwe poging moet doen. De use case eindigt hier.

De rekening van de donateur is leeg

5. Het systeem geeft aan dat de transactie is mislukt. De use case eindigt hier.

Assumptions
  1. De site is online.
  2. De rekening van Claus International is beschikbaar.
Preconditions
Postconditions Er is geld overgemaakt naar de rekening van Claus International.
Related business rules
Author Thomas de Bel
Date 10-3-2014

UC6 Gegevens kind opvragen

UC6: Gegevens kind opvragen
Use case diagram Gegevens kind opvragen uml.jpg
Description Het opvragen van de wensen van het kind en van het adres van de ouders.
Source Gesprek met bestuur van Claus International
Version 1.1
Actor Een medewerker.
Trigger Een medewerker wil de gegevens van een kind inzien.
Basic course of events
  1. De medewerker geeft aan gegevens van een kind in te willen zien.
  2. Het systeem vraagt om de naam van het kind.
  3. De medewerker geeft de naam van het kind.
  4. Het systeem laat zien:
    • De naam van het kind.
    • De NAW gegevens van het kind.
    • De wensen van het kind.
    • De naam van de ouder.
    • De NAW gegevens van de ouder.
Alternate paths Geen
Exception paths De medewerker geeft de naam van een kind dat niet in het systeem geregistreerd is.

4. Het systeem geeft aan dat dit kind niet in de database voorkomt
5. Ga verder bij stap 2.

Assumptions Geen.
Preconditions De medewerker weet de naam gegevens van het kind
Postconditions De medewerker heeft de naam van het kind, de NAW gegevens van het kind, de wensen van het kind, de naam van de ouder van het kind en het adres van de ouder van het kind.
Related business rules Geen.
Author Tom Nikken
Date 12-3-2014

Domain Model per Use Case

In dit onderdeel wordt per use case een zogenaamd domeinmodel gegeven. In deze modellen is te zien met wat voor gegevens er eigenlijk wordt gewerkt op de achtergrond. Dit is weergegeven in ORM-schema's welke ook beperkingen op de gegevens weergeven. De domeinmodellen zijn belangrijk om inzicht te krijgen in wat er precies moet worden bijgehouden per use case. Verder geven deze modellen een leidraad op het moment dat onderdelen van het systeem geïmplementeerd gaan worden.

UC1 Verzorger toevoegen

UC1 Model Groep8.PNG

UC2 Gegevens verzorger wijzigen

Zie UC1 Verzorger toevoegen.

UC3 Kind toevoegen

UC3 Model Groep8.PNG

UC3 Kind toevoegen

Zie UC4 Gegevens kind wijzigen.

UC5 Donatie maken

UC5RE.png

UC6 Gegevens kind opvragen

UC3 Model Groep8.PNG

Scenario's

Scenario's zijn een variatie op de use cases, maar dan op concreet niveau. Waar de use cases erg abstract zijn, wordt er in de scenario's juist aandacht gericht op de invulling van waarden in de stappen van het systeem. Dit is aan de ene kant om een voorbeeld te hebben hoe de use case kan verlopen en om de mogelijke paden binnen een use case te laten zien, maar aan de andere kant ook om invoer te hebben die op een bepaalde manier door het systeem af moet worden gehandeld.

Scenario bij UC 1

Scenario: Verzorger toevoegen
Basic course of events

1. Peter Hendriks navigeert naar de pagina om een verzorger toe te voegen.
2. Het systeem laat een formulier zien waarin contactgegevens moeten worden ingevuld.
3. Peter vult de volgende gegevens in:

Voornaam Achternaam Land Stad Straat Postcode
Peter Hendriks Nederland Amsterdam P.C. Hooftstraat 1 1071 BX

4. Het systeem geeft aan dat de gegevens zijn opgeslagen.

Exception path

1. Peter Hendriks navigeert naar de pagina om een verzorger toe te voegen.
2. Het systeem laat een formulier zien waarin contactgegevens moeten worden ingevuld.
3. Peter vult de volgende gegevens in:

Voornaam Achternaam Land Stad Straat Postcode
Peter Hendriks Hendriksland Amsterdam P.C. Hooftstraat 1 1071 BX

4. Het systeem geeft aan dat de gegevens incorrect zijn, en laat opnieuw het formulier zien.
3. Peter vult de volgende gegevens in:

Land Stad Straat Postcode
Nederland Amsterdam P.C. Hooftstraat 1 1071 BX

4. Het systeem geeft aan dat de gegevens zijn opgeslagen.

Scenario's bij UC 2

Scenario: Gegevens verzorger wijzigen
Basic course of events Medewerker B wil Peter Hendriks uit het systeem verwijderen.
  1. Medewerker B geeft aan een verzorger uit het systeem te willen verwijderen.
  2. Het systeem vraagt om de naam van de verzorger.
  3. Medewerker B vult "Peter Hendriks" in.
  4. Systeem toont de gegevens van Peter Hendriks:
Voornaam Achternaam Land Stad Straat Postcode Email-adres
Peter Hendriks Nederland Amsterdam P.C. Hooftstraat 1 1071 BX peter@hendriks.nl
  1. Medewerker B geeft aan de verzorger uit het systeem te willen verwijderen.
  2. Het systeem vraagt om een bevestiging.
  3. Medewerker B bevestigt dat Peter Hendriks uit het systeem verwijderd moet worden.
  4. Het systeem verwijdert Peter Hendriks en geeft aan dat Peter Hendriks uit het systeem is verwijderd.
Exception path Peter Hendriks wil zijn gegevens wijzigen, maar maakt een typefout.
  1. Peter Hendriks geeft aan zijn gegevens te willen wijzigen.
  2. Systeem toont de gegevens van Peter Hendriks:
Voornaam Achternaam Land Stad Straat Postcode Email-adres
Peter Hendriks Nederland Amsterdam P.C. Hooftstraat 1 1071 BX peter@hendriks.nl
  1. Peter Hendriks wijzigt zijn gegevens naar:
Voornaam Achternaam Land Stad Straat Postcode Email-adres
Peter Hendriks Nederland Oosterhuot Sesamstraat 32 4794 BN peter@hendriks.nl
  1. Het systeem geeft aan dat de plaats 'Oosterhuot' niet bestaat.
  2. Peter Hendriks wijzigt zijn gegevens naar:
Voornaam Achternaam Land Stad Straat Postcode Email-adres
Peter Hendriks Nederland Oosterhout Sesamstraat 32 4794 BN peter@hendriks.nl
  1. Het systeem vraagt om een bevestiging
  2. Peter Hendriks bevestigt de wijziging.
  3. Het systeem wijzigt de gegevens en geeft aan dat de gegevens zijn gewijzigd.

Scenario bij UC 3

Scenario: Kind toevoegen
Basic course of events

1. Peter Hendriks navigeert naar de pagina om zijn kind toe te voegen.
2. Het systeem laat een formulier zien waarin de NAW-gegevens en de wensen moeten worden ingevuld.
3. Peter vult de volgende gegevens in:

Voornaam Achternaam Land Stad Straat Postcode Wens
Kareltje Hendriks Nederland Amsterdam P.C. Hooftstraat 1 1071 BX Brandweerauto, speelgoedvliegtuig, lego

4. Het systeem geeft aan dat de gegevens zijn opgeslagen.

Alternative path

1. Peter Hendriks vraagt aan een medewerker zijn kind toe te voegen. De medewerker navigeert naar de pagina om een ouder te selecteren.
1. Het systeem toont een formulier om te zoeken naar ouders.
1. De medewerker vult "Peter Hendriks" in.
1. Het systeem toont een lijst van ouders die aan die naam voldoen.
1. De medewerker selecteert het account van Peter Hendriks.
2. Het systeem laat een formulier zien waarin de NAW-gegevens en de wensen moeten worden ingevuld.
3. De medewerker vult de volgende gegevens in:

Voornaam Achternaam Land Stad Straat Postcode Wens
Kareltje Hendriks Nederland Amsterdam P.C. Hooftstraat 1 1071 BX Brandweerauto, speelgoedvliegtuig, lego

4. Het systeem geeft aan dat de gegevens zijn opgeslagen.

Exception path

1. Peter Hendriks navigeert naar de pagina om zijn kind toe te voegen.
2. Het systeem laat een formulier zien waarin de NAW-gegevens en de wensen moeten worden ingevuld.
3. Peter vult de volgende gegevens in:

Voornaam Achternaam Land Stad Straat Postcode Wens
Kareltje Hendriks Nederland AmsterdamPlek P.C. Hooftstraat 1 1071 BX Brandweerauto, speelgoedvliegtuig, lego

4. Het systeem geeft aan dat de gegevens incorrect zijn, en laat opnieuw het formulier zien.
3. Peter vult de volgende gegevens in:

Voornaam Achternaam Land Stad Straat Postcode Wens
Kareltje Hendriks Nederland Amsterdam P.C. Hooftstraat 1 1071 BX Brandweerauto, speelgoedvliegtuig, lego

4. Het systeem geeft aan dat de gegevens zijn opgeslagen.

Scenario bij UC 4

Scenario: Gegevens kind wijzigen
Basic course of events Peter Hendriks wil het adres van zijn zoontje Kareltje Hendriks aanpassen.

1. Peter Hendriks geeft aan dat hij de gegevens van zijn kind Kareltje Hendriks wil wijzigen.
2. Het systeem toont een pagina met de huidige gegevens van Kareltje Hendriks:

Voornaam Achternaam Land Stad Straat Postcode Wens
Kareltje Hendriks Nederland Amsterdam P.C. Hooftstraat 1 1071 BX Brandweerauto, speelgoedvliegtuig, lego

3. Peter Hendriks wijzigt de gegevens van Kareltje Hendriks:

Voornaam Achternaam Land Stad Straat Postcode Wens
Kareltje Hendriks Nederland Maaskantje Dorpsstraat 62 1337 XD Brandweerauto, speelgoedvliegtuig, lego

4. Het systeem controleert de gegevens en vraagt om een bevestiging.
5. Peter Hendriks bevestigt de gegevens.
6. Het systeem geeft aan dat de gegevens succesvol zijn gewijzigd.

Alternate path Peter Hendriks wil zijn zoontje Kareltje Hendriks uit het systeem verwijderen.

1. Peter Hendriks geeft aan dat hij de gegevens van zijn kind Kareltje Hendriks wil wijzigen.
2. Het systeem toont een pagina met de huidige gegevens van Kareltje Hendriks:

Voornaam Achternaam Land Stad Straat Postcode Wens
Kareltje Hendriks Nederland Amsterdam P.C. Hooftstraat 1 1071 BX Brandweerauto, speelgoedvliegtuig, lego

3. Peter Hendriks geeft aan Kareltje Hendriks uit het systeem te willen verwijderen.
4. Het systeem vraagt om een bevestiging voor het verwijderen van Kareltje Hendriks.
5. Peter Hendriks bevestigd het verwijderen van Kareltje Hendriks.
6. Het systeem geeft aan dat Kareltje Hendriks succesvol uit het systeem is verwijderd.

Exception path Medewerker B wil het adres van Kareltje Hendriks aanpassen, maar vergeet de letters van de postcode.

1. Medewerker B geeft aan dat hij de gegevens van Kareltje Hendriks wil wijzigen.
2. Het systeem toont een pagina met de huidige gegevens van Kareltje Hendriks:

Voornaam Achternaam Land Stad Straat Postcode Wens
Kareltje Hendriks Nederland Amsterdam P.C. Hooftstraat 1 1071 BX Brandweerauto, speelgoedvliegtuig, lego

3. Medewerker B wijzigt de gegevens van Kareltje Hendriks:

Voornaam Achternaam Land Stad Straat Postcode Wens
Kareltje Hendriks Nederland Maaskantje Dorpsstraat 62 1337 Brandweerauto, speelgoedvliegtuig, lego

4. Het systeem geeft aan dat de postcode incorrect is.
5. Medewerker B wijzigt de gegevens van Kareltje Hendriks:

Voornaam Achternaam Land Stad Straat Postcode Wens
Kareltje Hendriks Nederland Maaskantje Dorpsstraat 62 1337 XD Brandweerauto, speelgoedvliegtuig, lego

6. Het systeem vraagt om een bevestiging.
7. Peter Hendriks bevestigt de gegevens.
8. Het systeem geeft aan dat de gegevens succesvol zijn gewijzigd.

Scenario bij UC 5

Scenario: Een donatie maken
Basic course of events
  1. Peter Hendriks navigeert naar het onderdeel van het systeem waar een donatie gemaakt kan worden.
  2. Het systeem laat het donatiescherm zien. Hierop kan Peter Hendriks kiezen om zijn naam in te voeren.
  3. Peter Hendriks kiest ervoor om niet anoniem te blijven en voert zijn naam in. Vervolgens klikt hij op 'verder gaan'.
  4. Het systeem stuurt Peter Hendriks naar het scherm van het betalingssysteem.
  5. Peter Hendriks kiest er binnen het scherm van het betalingssysteem voor om met Ideal te betalen. Vervolgens vult hij de benodigde gegevens in, kiest een bedrag en drukt op accepteren.
  6. De transactie is succesvol verlopen. Het systeem geeft dit aan en weergeeft ook een bedankwoordje.
Alternative paths

De donateur wenst anoniem te blijven

  1. Peter Hendriks navigeert naar het onderdeel van het systeem waar een donatie gemaakt kan worden.
  2. Het systeem laat het donatiescherm zien. Hierop kan Peter Hendriks kiezen om zijn naam in te voeren.
  3. Peter Hendriks wil anoniem blijven en laat daarom het veld, waar hij zijn naam in moet vullen, leeg. Vervolgens klikt hij op 'verder gaan'.
  4. Het systeem stuurt Peter Hendriks naar het scherm van het betalingssysteem.
  5. Peter Hendriks kiest er binnen het scherm van het betalingssysteem voor om met Ideal te betalen. Vervolgens vult hij de benodigde gegevens in, kiest een bedrag en drukt op accepteren.
  6. De transactie is succesvol verlopen. Het systeem geeft dit aan en weergeeft ook een bedankwoordje.
Exception paths

Het betalingssysteem is offline of valt uit

  1. Peter Hendriks navigeert naar het onderdeel van het systeem waar een donatie gemaakt kan worden.
  2. Het systeem laat het donatiescherm zien. Hierop kan Peter Hendriks kiezen om zijn naam in te voeren.
  3. Peter Hendriks kiest ervoor om niet anoniem te blijven en voert zijn naam in. Vervolgens klikt hij op 'verder gaan'.
  4. Het systeem geeft weer dat er op dit moment geen mogelijkheid is om een transactie te doen en vraagt Peter Hendriks om het later nog een keer te proberen.

De rekening van de donateur is leeg

  1. Peter Hendriks navigeert naar het onderdeel van het systeem waar een donatie gemaakt kan worden.
  2. Het systeem laat het donatiescherm zien. Hierop kan Peter Hendriks kiezen om zijn naam in te voeren.
  3. Peter Hendriks kiest ervoor om niet anoniem te blijven en voert zijn naam in. Vervolgens klikt hij op 'verder gaan'.
  4. Het systeem stuurt Peter Hendriks naar het scherm van het betalingssysteem.
  5. Peter Hendriks heeft zich vergist en dacht dat zijn salaris al binnen was gekomen. Nu heeft hij geen geld om een donatie te maken. Het betalingssysteem meldt dat de transactie niet mogelijk is en stuurt Peter weer terug naar het beginscherm van het systeem.

Scenario's bij UC 6

Scenario: Gegevens opvragen
Basic course of events S. Claus wil de wensen van Kareltje Hendriks zien.
  1. S. Claus geeft aan de gegevens van een kind te willen zien.
  2. Het systeem vraagt om de naam van het kind.
  3. S. Claus vult "Kareltje Hendriks" in.
  4. Het systeem geeft de gegevens van het kind:

Kind

Voornaam Achternaam Land Stad Straat Postcode Wensen
Kareltje Hendriks Nederland Amsterdam P.C. Hooftstraat 1 1071 BX Brandweerauto, speelgoedvliegtuig, lego

Ouder

Voornaam Achternaam Land Stad Straat Postcode
Peter Hendriks Nederland Amsterdam P.C. Hooftstraat 1 1071 BX
exception path S. claus wil de gegevens van Kareltje zien, maar vult een verkeerde naam in.
  1. S. Claus geeft aan de gegevens van een kind te willen zien.
  2. Het systeem vraagt om de naam van het kind.
  3. S. Claus vult "gtvfbgbtvh" in.
  4. Het systeem geeft aan dat dit kind niet in het systeem zit en vraagt nogmaals om de naam van het kind.
  5. S. Claus vult "Kareltje Hendriks" in.
  6. Het systeem geeft de gegevens van het kind:

Kind

Voornaam Achternaam Land Stad Straat Postcode Wensen
Kareltje Hendriks Nederland Amsterdam P.C. Hooftstraat 1 1071 BX Brandweerauto, speelgoedvliegtuig, lego

Ouder

Voornaam Achternaam Land Stad Straat Postcode
Peter Hendriks Nederland Amsterdam P.C. Hooftstraat 1 1071 BX

Non-functional Requirements

  • Toegankelijkheid

Het systeem moet minstens 99% van de tijd online zijn.

  • Consistent

Elke gebruiker van het systeem werkt altijd met de meest recente gegevens.

  • Veiligheid

Het mag niet mogelijk zijn voor niet-medewerkers om gegevens buiten hun eigen account (d.w.z. de accountgegevens, en de gegevens van de kinderen die onder dat account ingeschreven staan) te wijzigen of te zien.

  • Gebruiksvriendelijk

Door het hele systeem heen wordt dezelfde interface gebruikt. De gebruiksvriendelijkheid moet worden vastgesteld door een testgroep.

Addendum

Integrated Domainmodel

Groep8 IDM.png

Business Rules Catalogue

# Rule Definition Type of Rule Static/Dynamic Source
001 Het adres van een persoon moet bestaan. Structural fact Static Interview
002 Elk kind moet een verzorger hebben. Structural fact Static Interview
003 Een verzorger mag alleen de gegevens van de kinderen die aan zijn/haar account gekoppeld zijn aanpassen. Access restricting Static Interview
004 Als een verzorger zijn/haar account verwijdert worden alle kinderen van die ouder uit het systeem verwijderd. Action triggering Static Interview

Terminological Definitions

  • Verzorger: een ouder, pleegouder, stiefouder of een ander persoon verantwoordelijk voor een/meerdere kind(eren).
  • Donateur: een persoon die een donatie wil maken aan Claus International.
  • Medewerker: een medewerker van Claus international werkzaam in een distributiecentrum of in het administratieve hoofdkantoor.
  • Betalingssysteem: De verzameling van betalingsmogelijkheden die de site van Clauss International ter beschikking stelt.
  • NAW-gegevens: Een combinatie van land, stad, straat (+ huisnummer) en postcode.