Requirements Engineering/het werk/werkstuk/2013-14/Groep 07/report
Groep 07 Groepsleden
- Sander van Dam, s4350766
- Daniel Roeven, s4356772
- Jaco Schalij, s4356357
- Sjuul Föllings, s4360265
- Timo van Niedek, s4326164
Inhoud
- 1 Introduction
- 2 Problem Statement
- 3 Stakeholder list/Analysis
- 4 Mission
- 5 Vision
- 6 Statement of Work
- 7 Risk analysis
- 8 Use Case Survey
- 9 Integrated UC Diagram
- 10 Use Cases
- 11 Integrated Domain Model
- 12 Scenarios
- 12.1 Piet Pietersen wil een pagina aanmaken
- 12.2 Niek Jansen wil pagina bekijken via link zonder toestemming
- 12.3 Docent Rik Rikkertsen wil een punt toevoegen
- 12.4 Student Stefan Ulrich Dent wil een punt bekijken
- 12.5 Administrator Frans Loppy voegt een gebruiker toe of verandert de gegevens
- 12.6 Docent Gerard Bruiker logt in
- 13 Business Rules Catalogue
- 14 Non-functional requirements
- 15 Terminological Definitions
Introduction
De universiteit van Skeerdam is een relatief kleine universiteit die zich specialiseert in biologie en artificiële intelligentie. De universiteit wil een nieuwe elektronische werkplaats voor haar studenten en docenten. Ze hebben tot nu toe gewerkt met openbare werkplaatsen, maar deze zijn erg traag en gegevens zijn over verschillende systemen verspreid. Ook is de beveiliging niet optimaal.
Het vernieuwde systeem moet de mogelijkheid bieden om werkstukken te maken en in te leveren, cijfers in te voeren en te bekijken en leerstof te bekijken. Dit wordt mogelijk gemaakt door de twee hoofdonderdelen: pagina’s en punten. Verschillende gebruikers hebben verschillende privileges om pagina’s en punten te bekijken en te bewerken. Deze privileges worden toegewezen door ofwel het systeem (in geval van punten) of door een gebruiker zelf (zie voor verduidelijking de Business Rules).
Pagina’s moeten tegelijkertijd bewerkt kunnen worden zonder dat er gegevens verloren gaan. Dit wordt gerealiseerd door het opslaan van de wijzigingsdatum in het systeem (zie Integrated Domain Model voor verheldering).
Het bekijken, bewerken en aanmaken van een pagina is beschreven in de use case "Pagina Aanmaken/Bewerken".
De universiteit gaf aan dat de digitale veiligheid en integriteit van de nieuwe werkplaats belangrijk is. Deze veiligheid wordt gewaarborgd door drie maatregelen:
- Het feit dat nieuwe gebruikers alleen door de systeemadministrator kunnen worden toegevoegd (zie use case "Gebruiker Toevoegen/Gebruikersgegeven Veranderen").
- Het feit dat gebruikers alleen toegang tot de werkplaats verkrijgen als ze een geldige combinatie van S-, of P-Nummer en wachtwoord opgeven (zie use case "Gebruiker inloggen/uitloggen")
- Het feit dat er restricties zijn op het bekijken en bewerken van pagina’s en punten (zie Business Rules).
Tenslotte is het belangrijk dat de nieuwe werkplaats gebruiksvriendelijk is. Dit wordt verwerkelijkt door het duidelijke aanbod van wat gebruikers kunnen doen op elk gegeven moment en de veilige indeling van de werkplaats; gebruikers kunnen gerust met de werkplaats spelen zonder angstig te zijn dat ze per ongeluk iets verpesten.
De structuur van dit verslag is volgens de Requirements Engineering methode van Kulak & Guiney [K&G] opgesteld.
Dit verslag is bedoeld om helder en ondubbelzinnig weer te geven en om in kaart te brengen wat ons plan van aanpak is met betrekking tot de wensen en eisen van de Universiteit.
Problem Statement
Huidige elektronische werkplaats moet worden vervangen. Er zijn een aantal fundamentele problemen met de huidige werkplaats:
- De huidige werkplaats is niet gebruiksvriendelijk. Studenten kunnen moeilijk informatie vinden die ze nodig hebben voor hun studie.
- De huidige werkplaats is niet snel genoeg.
- De huidige werkplaats ziet er niet mooi uit.
- De huidige werkplaats mist functionaliteit om punten in te voeren, te bekijken en eventueel aan te passen.
Stakeholder list/Analysis
Stakeholder List
- Bauke Brenninkmeijer (Hoogleraar-directeur van de universiteit van Skeerdam, lid van het college van bestuur)
- Niek Janssen (Docent aan de universiteit van Skeerdam)
- Etienne Bruines (Docent aan de universiteit van Skeerdam)
- Brandaan Brouwers (Docent aan de universiteit van Skeerdam)
User Demography
- Student (Een persoon die ingeschreven staat als student bij de universiteit van Skeerdam)
- Medewerker (Een persoon die ingeschreven staat als docent ofwel studentassistent aan de universiteit van Skeerdam)
- Administrator (Een persoon die werkt aan de universiteit van Skeerdam bij de afdeling Systeembeheer of de afdeling Administratie)
Zie het Integrated UC-Diagram voor de privileges van de verschillende gebruikers.
N.B.: één persoon kan meerdere rollen vervullen (denk aan studentassistent: medewerker én student).
Mission
De elektronische werkplaats moet verbeterd worden omdat de oude werkplaats niet genoeg functionaliteit heeft en niet gebruiksvriendelijk genoeg is.
Vision
De centrale elektronische werkplaats moet de volgende functionaliteit hebben:
- Er moeten punten gegeven kunnen worden door docenten.
- Studenten moeten hun punten kunnen in zien.
- Opdrachten moeten ingeleverd kunnen worden door studenten.
- Er moet samengewerkt kunnen worden aan opdrachten door meerdere studenten.
- Er moet commentaar gegeven kunnen worden door docenten en studenten op de opdrachten.
- Docenten moeten toegang hebben tot gegevens van studenten (welke studie, welk jaar ze zijn begonnen, contactgegevens).
- De werkplaats moet goed beveiligd zijn.
- De werkplaats moet eenvoudig te beheren zijn.
- De werkplaats moet gebruiksvriendelijk zijn.
- De werkplaats moet er modern uit zien.
- De werkplaats moet consistent zijn door studenten en docenten te dwingen informatie gestructureerd te ordenen.
- De werkplaats moet één enkel systeem zijn waarmee al deze functies mogelijk zijn.
Statement of Work
Deliverable | Façade iteratie | Filled iteratie | Focused iteratie |
---|---|---|---|
Introduction | Klaar | Klaar | Klaar |
Problem statement | Klaar | Klaar | Klaar |
Stakeholder list/analysis | Klaar | Klaar | Klaar |
Mission-Vision-(Values) | Klaar | Klaar | Klaar |
Statement of Work | Klaar | Klaar | Klaar |
Risk Analysis | Klaar | Klaar | Klaar |
Use Case Survey | Klaar | Klaar | Klaar |
Integrated UC Diagram | Klaar | Klaar | Klaar |
Use Cases | Klaar | Klaar | Klaar |
Scenarios | Klaar | Klaar | Klaar |
Domain Models | Klaar | Klaar | Klaar |
Business rules per UC | Klaar | Klaar | Klaar |
Integrated Domain Model | Klaar | Klaar | Klaar |
Busines Rules Catalogue | Klaar | Klaar | Klaar |
Non-functional Requirements | Klaar | Klaar | Klaar |
Terminological Definitions | Klaar | Klaar | Klaar |
Risk analysis
# | Category | Risk | Solution needed by | Status | Days lost | Expectancy factor | Risk factor |
---|---|---|---|---|---|---|---|
01 | Projectleden | Een projectlid maakt zijn onderdeel niet (correct) | Meteen | Nog niet voorgekomen | Onbekend | 50% | 4 |
02 | Projectleden | Een projectlid besluit te stoppen met de studie | Meteen | Paul Hoekstra is gestopt met de studie | 2 | 10% | 8 |
03 | Projectleden | Een projectlid wil niet meer in de groep | Meteen | Nog niet voorgekomen | Onbekend | 5% | 8 |
04 | Communicatie | Communicatie tussen de projectleden gaat verkeerd | Zo snel mogelijk | Nog niet voorgekomen | Onbekend | 25% | 2 |
05 | Communicatie | Communicatie tussen de projectleden en stakeholders gaat verkeerd | Zo snel mogelijk | Nog niet voorgekomen | Onbekend | 40% | 5 |
06 | Stakeholders | Een stakeholder houdt zich niet aan de afspraak | Meteen | Nog niet voorgekomen | Onbekend | 5% | 7 |
07 | Technisch | Wiki slaat de aanpassingen niet (correct) op | Zo snel mogelijk | Nog niet voorgekomen | Onbekend | 5% | 6 |
08 | Technisch | Digitale hulpmiddelen zoals Wiki zijn niet bereikbaar | Zo snel mogelijk | Wiki is een paar keer traag geweest | 0.5 | 10% | 5 |
Use Case Survey
Use Case number | Use Case name | Initiating Actor | Description |
---|---|---|---|
PAG-01 | Pagina aanmaken/bewerken | Student, Medewerker, Administrator | Een gebruiker van het systeem maakt pagina's aan. Bestaat de pagina al, dan verloopt de Use Case via een alternative path: de gebruiker bewerkt de pagina. |
PAG-02 | Pagina bekijken | Student, Medewerker, Administrator | Een gebruiker van het systeem bekijkt pagina's. |
PNT-01 | Punt toevoegen/veranderen | Medewerkers | Medewerkers voegen punten toe voor studenten. Is dit punt al toegevoegd, dan veranderen medewerkers van de faculteit dit punt (dit verloopt via een alternative path). |
PNT-02 | Punt bekijken | Student, Medewerker | Een student bekijkt zijn eigen punt; een leraar bekijkt een punt die hij heeft toegekend. |
GBR-01 | Gebruiker toevoegen/gebruikersgegevens veranderen | Administrator | Administrators voegen gebruikers toe aan het systeem. Bestaat een gebruiker al, dan veranderen administrators de gegevens van de gebruiker in kwestie (dit verloopt via een alternative path). |
GBR-02 | Gebruiker inloggen/uitloggen | Student, Medewerker, Administrator | Gebruiker logt in in het systeem. Is de gebruiker al ingelogd, dan logt de gebruiker uit (dit verloopt via een alternative path). |
Integrated UC Diagram
Use Cases
Pagina aanmaken/bewerken
Use Case: | Pagina aanmaken/bewerken |
---|---|
Number | PAG-01 |
Version | 0.1 |
Description | Een gebruiker van het systeem maakt pagina's aan. Bestaat de pagina al, dan verloopt de Use Case via een alternative path: de gebruiker bewerkt de pagina. |
Actor |
|
Trigger |
|
Basic course of events |
Pagina aanmaken
|
Alternate paths |
Pagina bewerken
Pagina verwijderen
|
Preconditions |
Basic Course of Events:
Pagina bewerken
Pagina verwijderen
|
Postconditions |
Pagina aanmaken
Pagina bewerken
Pagina verwijderen
|
Related business rules |
|
Pagina bekijken
Use Case: | Pagina Bekijken | |
---|---|---|
Number | PAG-02 | |
Version | 0.1 | |
Description | Een gebruiker van het systeem bekijkt pagina's. | |
Actor |
| |
Trigger |
| |
Basic course of events |
Pagina bekijken via link met toestemming
| |
Alternate paths |
Pagina bekijken via navigatiebalk met toestemming
Pagina bekijken via link zonder toestemming
Pagina bekijken via navigatiebalk zonder toestemming
|
|
Preconditions |
| |
Postconditions |
| |
Related business rules |
|
Punt toevoegen/veranderen
Use Case: | Punt toevoegen/veranderen |
---|---|
Number | PNT-01 |
Version | 0.1 |
Description | Medewerkers voegen punten toe voor studenten. Is dit punt al toegevoegd, dan veranderen medewerkers van de faculteit dit punt (dit verloopt via een alternative path). |
Actor |
|
Trigger |
|
Basic course of events |
Punt toevoegen
|
Alternate paths |
Punt wijzigen
|
Preconditions |
|
Postconditions |
|
Related business rules |
|
Punt bekijken
Use Case: | Punt bekijken | |
---|---|---|
Number | PNT-02 | |
Version | 0.1 | |
Description | Een student bekijkt zijn eigen punt; een leraar bekijkt een punt die hij heeft toegekend. | |
Actor |
| |
Trigger |
| |
Basic course of events |
Nieuw punt bekijken
| |
Alternate paths |
Veranderd punt bekijken
|
|
Preconditions |
| |
Postconditions |
| |
Related business rules |
Gebruiker toevoegen/gebruikersgegevens veranderen
Use Case: | Gebruiker toevoegen/gebruikersgegevens veranderen |
---|---|
Number | GBR-01 |
Version | 0.1 |
Description | Administrators voegen gebruikers toe aan het systeem. Bestaat een gebruiker al, dan veranderen administrators de gegevens van de gebruiker in kwestie (dit verloopt via een alternative path). |
Actor |
|
Trigger |
|
Basic course of events |
Gebruiker toevoegen
|
Alternate paths |
Gebruikersgegevens wijzigen
|
Preconditions |
|
Postconditions |
|
Related business rules |
|
Gebruiker inloggen/uitloggen
Use Case: | Gebruiker inloggen/uitloggen |
---|---|
Number | GBR-02 |
Version | 0.1 |
Description | Gebruiker logt in in het systeem. Is de gebruiker al ingelogd, dan logt de gebruiker uit (dit verloopt via een alternative path). |
Actor |
|
Trigger |
|
Basic course of events |
Gebruiker inloggen
|
Alternate path 1 |
Gebruiker inloggen met fout wachtwoord
verder met stap 3 |
Alternate path 2 | Gebruiker uitloggen
|
Preconditions |
|
Postconditions |
|
Related business rules |
|
Integrated Domain Model
Scenarios
Piet Pietersen wil een pagina aanmaken
- Piet Pietersen klikt op de knop 'Pagina Aanmaken'.
- Het systeem toont Pieter het 'Bewerken'-scherm, met verschillende opties.
- Piet geeft aan welke gebruikers de pagina mogen bewerken.
- Het systeem laat zien welke gebruikers Piet heeft gekozen op het scherm.
- Piet kiest het lettertype waarmee hij wil gaan werken.
- Het systeem geeft het gekozen lettertype geselecteerd weer.
- Piet kiest een lettergrote.
- Het systeem verandert het formaat van de cursor, zodat de grote van de tekst duidelijk is.
- Piet typt tekst op de pagina.
- Het systeem geeft deze tekst weer op het scherm.
- Piet drukt op de "opslaan"-knop.
- Het systeem geeft de aangemaakte pagina weer aan de Piet.
Niek Jansen wil pagina bekijken via link zonder toestemming
- Niek klikt op een link naar een pagina waarvan hij geen toestemming heeft die te bekijken.
- Systeem toont Niek een pagina met de tekst "U heeft geen toestemming om deze pagina te bekijken".
Docent Rik Rikkertsen wil een punt toevoegen
- Rik Rikkertsen navigeert naar de pagina van de cursus waarvan hij/zij punten wilt toevoegen.
- Systeem geeft de pagina van deze cursus weer met onder andere de knop "Punt Toevoegen".
- Rik drukt op de knop 'Punt Toevoegen'.
- Systeem geeft een invoertabel met een lijst van de leerlingen die zich hebben ingeschreven voor de desbetreffende cursus.
- Rik voert de punten in die de leerlingen hebben gehaald.
- Systeem geeft deze punten direct weer in de invoertabel en vraagt de medewerker "Weet u zeker dat u de goede punten heeft ingevuld?".
- Rik controleert dat het de goede punten zijn en drukt op opslaan.
- Systeem bevestigt de toevoeging en geeft de punten nog een keer weer.
Student Stefan Ulrich Dent wil een punt bekijken
- Stefan U. Dent klikt op de knop "punt bekijken".
- Systeem toont een pagina met het punt.
Administrator Frans Loppy voegt een gebruiker toe of verandert de gegevens
- Administrator Frans klikt op de knop 'Gebruikersgegevens Wijzigen'.
- Systeem toont Frans huidige gebruikersgegevens en invoertabel voor gewijzigde gebruikersgegevens.
- Frans voert gewijzigde gebruikersgegevens in en drukt op opslaan.
- Systeem toont gewijzigde gebruikersgevens.
Docent Gerard Bruiker logt in
- Gerard Bruiker klikt op de knop 'Inloggen'.
- Systeem vraagt om S- of P-nummer en wachtwoord.
- Gerard Bruiker voert zijn P-nummer en wachtwoord in en drukt op inloggen.
- Systeem controleert Gerards P-nummer en wachtwoord en verleent toegang tot de wiki.
Business Rules Catalogue
# | Rule Definition | Type of Rule | Static/Dynamic | Source |
---|---|---|---|---|
01 | Een gebruiker heeft slechts één account. | Structural fact | Static | Management |
02 | Een student kan alleen pagina’s aanpassen van andere studenten en pagina’s van docenten als de docent bij het aanmaken van de pagina dit toestaat. | Action restricting | Static | Management |
03 | Alleen docenten die geregistreerd staan voor een vak kunnen punten van studenten aanpassen of invoeren voor dit vak. | Action restricting | Static | Management |
04 | Een student kan een ingeleverde assignment nog bewerken, als de deadline nog niet geweest is. | Structural fact | Static | Management |
05 | Een docent kan altijd wikipedia-pagina's bewerken, bijvoorbeeld om commentaar te leveren op studenten. | Structural fact | Static | Management |
06 | Iedere student moet een persoonlijke pagina hebben waarop praktische informatie staat over de student. | Structural fact | Static | Management |
07 | Er wordt alleen toegang tot de werkplaats verstrekt als het S- of P-nummer en het bijbehordende wachtwoord correct wordt ingevoerd. | Structural fact | Static | Management |
08 | Een pagina aanmaken kan alleen als de pagina nog niet bestaat. | Action restricting | Static | Management |
09 | Een pagina bekijken kan alleen als de gebruiker toestemming hiervoor heeft. | Action restricting | Static | Management |
Non-functional requirements
- Gebruiksvriendelijkheid
Het moet duidelijk zijn waar informatie staat op de elektronische werkplaats en gemakkelijk om pagina's te bewerken en punten aan te passen. Dit wordt (deels) verwerkelijkt door het handige navigatiesysteem (waarin in een html pad voor een logische structuur zorgt), en het feit dat pagina's vrij aangepast kunnen worden zonder dat men bang is voor verlies van gegevens.
- Veiligheid
Het moet onmogelijk zijn voor studenten om punten toe te voegen, aan te passen en punten te bekijken van andere studenten. Het moet onmogelijk zijn voor de administratie van de school om punten van studenten toe te voegen, bekijken of veranderen. Deze eis wordt gerealiseerd door strenge beveiliging (één account per persoon, lang en veilig wachtwoord vereist), en de indeling in gebruikers met verschillende privileges.
- Toegankelijkheid
De elektronische werplaats moet 99% van de tijd online zijn.
- Snelheid
De server van elektronische werkplaats moet minimaal een datasnelheid hebben van 70 mbit/s.
- Consistentie
Alle pagina's van de elektronische werkplaats moeten dezelfde layout gebruiken. Dit wordt bereikt doordat gebruikers niet een eigen layout kunnen kiezen, maar alleen in Wiki formatting hun documenten kunnen structureren. De layout gebeurd volautomatisch.
Terminological Definitions
Term | Definition |
---|---|
Administrator | Mederwerkers bij de afdeling Administratie of Systeembeheer |
Medewerker | Iemand die op de Universiteit van Skeerdam werkt, leraren en studentassistenten. |
Student | Iemand die op de Universiteit van Skeerdam studeert. |
Gebruiker | Een groep die alle administrators, medewerkers én studenten omvat. |
S-Nummer | Het identificatienummer van een student, wordt gebruikt als inlognaam. |
P-Nummer | Het identificatienummer van een medewerker of administrator, wordt gebruikt als inlognaam. |
Pagina | Onderdeel van de wiki. Kan door iedere gebruiker worden aangemaakt. |
Vak | Wordt gevolgd door een leerling en gegeven door een medewerker. |
Punt | Het cijfer wat een student krijgt voor een vak dat door een medewerker is gegeven. |
Wachtwoord | De geheime code die een gebruiker samen met zijn S- of P-Nummer gebruikt om in te loggen. |