Requirements Engineering/het werk/werkstuk/2009-10/Groep 06 Groepsnaam
Groep 06 - Examenportal
Werkstuk Requirements Engineering
Onderwijsinstituut voor Informatica en Informatiekunde
Radboud Universiteit Nijmegen
version 18 februari 2022
Introduction
Studenten van de opleidingen informatica en informatiekunde volgen, zoals alle universitaire studenten, een curriculum teneinde een diploma te behalen. De student legt daarbij een heel traject af van vakken en toetsen. De vrijheid waarmee een student zijn curriculum kan invullen maakt deze opleidingen uniek.
Maar deze vrijheid brengt ook meer administratieve procedures en complexiteit met zich mee. Er is nu niet een eenduidig systeem om de diverse administratieve taken af te handelen die een student gedurende zijn studie moet uitvoeren. In dit document worden de requirements voor het een dergelijk systeem vanuit het perspectief van de student behandeld, het project draagt de titel Examenportal.
Problem statement
Het is voor studenten informatica en informatiekunde is het niet mogelijk om de studievoortgang te monitoren of een studieplanning te maken. Stel dat een student zou willen zien wanner hij welke vakken moet volgen en daarbij ook de behaalde resultaten tot nu toe. De student moet in de huidige situatie de volgende stappen uitvoeren:
- Verzamel de volgende papieren: curriculum, aangevraagde vrijstellingen en goedgekeurde keuzevakken. Als de student deze niet heeft kan hij bij de onderwijsbureau een kopie hiervan aanvragen, deze formulieren zitten ook in zijn studentdossier aldaar.
- Zoek resultaten per vak op TIS (digitaal).
- Eventueel de rooster generator raadplegen om te zien in welk semester de keuzevakken gegeven worden
Als het nieuwe studiejaar begint kunnen er vakken vervallen, deze worden dan vervangen door anderen. Dit wordt voor aanvang van het studiejaar per email doorgegeven aan de studenten. Ook zijn deze wijzigingen op papier terug te vinden bij de studentadministratie. Daarnaast kunnen er ook andere vakken in het curriculum vervangen worden. Hiervoor is toestemming van de docent en examencommissie nodig. De student kan dus meerdere vervangende vakken hebben ten opzichte van zijn originele studieprogramma. Op het moment wordt niet duidelijk geregistreerd welke invulling een student geeft aan zijn curriculum dus het is voor de student niet altijd duidelijk wat zijn studieprogramma is (of kan zijn door nog onbekende keuze mogelijkheden).
Als een student een examen wilt aanvragen zijn daar verschillende handelingen voor nodig bij verschillende afdelingen. Het proces staat beschreven op de website van het FNWI maar er bestaat onder de studenten nog steeds verwarring. Er zijn een aantal verschillende aanvragen die een student in de loop der tijd kan of moet doen, afhankelijk van het studieprogramma dat hij volgt. Mogelijke examenaanvragen zijn; propedeuse, bachelorexamen, schakelverklaring (strict genomen geen examen, maar wel eenzelfde procedure), masterexamen. De huidige manier van werken wordt in het volgende voorbeeld geïllustreerd:
Bijvoorbeeld, als een student schakelverklaring (voor HBO-doorstromers) wilt aanvragen en zich als masterstudent wilt inschrijven dient hij de volgende stappen te doorlopen:
- De student dient bij de FSA een papieren uitdraai op te vragen van behaalde resultaten. Deze wordt voorzien van een stempel en een handtekening om de authenticiteit aan te tonen.
- Vervolgens moet hij met een marker op deze uitdraai aangeven welke vakken uit de totale lijst met behaalde resultaten relevant zijn voor de aanvraag van zijn schakelverklaring.
- Om te weten welke vakken dat zijn raadpleegt de student zijn papieren versie van het curriculum. Als hij deze niet heeft kan hij zijn curriculum opzoeken op de website van het FNWI of een kopie van zijn curriculum uit het studentdossier opvragen bij het onderwijsbureau.
- De gemarkeerde uitdraai van de behaalde resultaten geeft de student af bij het onderwijsbureau.
- De schakelverklaring wordt binnen twee weken thuis gestuurd.
- De student gaat met deze verklaring naar de centrale studentenadministratie om zijn inschrijving om te zetten.
Case analysis
Stakeholder analysis
Bij deze casus worden de requirements voor het Examenportal vanuit het prespectief van de student behandeld. De enige stakeholder waar hier rekening mee gehouden wordt is dus de student. Regelmatig overleg vindt plaats met de contactpersoon van deze stakeholder; Willem Elbers (willem.elbers<apestaaartje>student.ru.nl).
Mission and vision statement
Mission
Een beter inzicht verschaffen in de studieplanning en -voortgang van een student. Daarnaast moet het controleren van voorwaarden voor, en aanvragen van, examens eenduidig en overzichtelijk zijn. De invulling van keuzeruimte in een curriculum door een student dient ook door het Examenportal beheerd te worden.
Vision
Een digitaal systeem waar de student alle voor hem belangrijke informatie betreffende zijn studievoortgang kan inzien en belangrijke organisatorische zaken kan regelen. Het systeem is eenvoudig te gebruiken en geeft duidelijke feedback aan de gebruiker. Alle bestaande processen zoals vermeld in het Mission statement worden vervangen door de functionaliteiten in dit nieuwe digitale systeem.
Value
Gedurende dit project zijn de betrokkenheid van en de communicatie met de student de belangrijkste values. Als deze values niet in acht genomen worden zal het systeem niet goed op de wensen van de gebruiker aansluiten.
Executive Sponsor's Viewpoint
Patrick van Bommel (lid van examencommisie)
Het interview met Patrick van Bommel had uiteraard betrekking op het gehele Examenportal systeem. Met betrekking tot de student merkte hij op dat de procedure van examenaanvraag nu erg omslachtig is, een student moet bij verschillende afdelingen/personen langs om gegevens en/of handtekeningen te halen. Het aanvragen en verwerken van vrijstelling of vervanging van een vak wordt behoeft ook een centraal systeem. Daarnaast moeten de studieresultaten van de student in dit centrale systeem zichtbaar zijn.
(bron: interview afgenomen door groep2)
Vera Kamphuis (studieadviseur)
Ook bij het interview met Vera Kamphuis is voornamelijk gekeken naar de belangen van de student ivm. de scope van dit project. Vera gaf aan, net zoals Patrick dat eerder deed, dat de procedure van aanvraag voor examens verspreid is over vele actoren en vereist dat de student zelf documenten en handtekeningen gaat verzamelen. Het monitoren van student voortgang, studieplanning en alle geldende studie- en examenregels voor een student is een must. Het zou wenselijk zijn als studenten en studieadviseurs aantekeningen bij studenten kunnen bewaren.
De grote overlap in visie van Patrick en Vera is gunstig, het betekend dat beiden een overeenkomend beeld hebben van het systeem. Stel dat dit niet zo was, dan hadden we wellicht een meeting moeten beleggen om de verschillen boven tafel te krijgen en te verklaren (bijvoorbeeld middels een workshop).
Statement of work
Deliverable | Facade iteratie | Status | Filled iteratie | Status | Focused iteratie | Status |
---|---|---|---|---|---|---|
Introduction | Voorlopige versie | v | Voorlopige versie | v | Compleet | v |
Problem statement | Zo goed mogelijk | v | Zo goed mogelijk | v | Compleet | v |
Stakeholder analysis | Zo goed mogelijk | v | Zo goed mogelijk | v | Compleet | v |
Mission-vision-values | Compleet | v | Compleet | v | Compleet | v |
Statement of work | Compleet, en up-to-date | v | Compleet, en up-to-date | v | Compleet, en up-to-date | v |
Risk analysis | Compleet, en up-to-date | v | Compleet, en up-to-date | v | Compleet, en up-to-date | v |
Use case survey | Zo goed mogelijk | v | Bijna Compleet | v | Compleet | v |
Use case diagram(s) | Zo goed mogelijk | v | Bijna Compleet | v | Compleet | v |
Integrated UC diagram | Compleet (of voorlopig) | v | Compleet | v | Compleet | v |
Use cases | Nog niet! | o | Filled level | v | Compleet | v |
Scenarios | Nog niet! | o | Meerdere per UC | v | Compleet | v |
Domain models | Nog niet! | o | Gedeeltelijk compleet | v | Compleet | v |
Integrated domain model | Nog niet! | o | Gedeeltelijk compleet | v | Compleet | v |
Business rules catalogue | Nog niet! | o | Gedeeltelijk compleet | v | Compleet | v |
Non-functional requirements | Notities | v | Gedeeltelijk compleet | v | Compleet | v |
Terminological definitions | Notities | v | Gedeeltelijk compleet | v | Compleet | v |
Executive sponsor viewpoint | Compleet (geïntegreerd in M-V-V!) | v | Compleet (geïntegreerd in M-V-V!) | v | Compleet (geïntegreerd in M-V-V!) | v |
Use case tests | Notities | o | Zo goed mogelijk | v | Compleet | v |
Business process definitions | Indien relevant | o | Indien relevant | o | Indien relevant | o |
GUI metaphors / storyboards | Indien relevant | o | Indien relevant | o | Indien relevant | o |
Bij de status zijn de volgende invullingen mogelijk;
- o = niet gereed
- v = gereed
- datum = zal voor deze datum gereed zijn
Risk analysis
# | Category | Risk | Resolution needed by | Status | Days lost | Likelyhood it will happen | Risk rating |
---|---|---|---|---|---|---|---|
01 | Requirements incompleet | Er ontbreken requirements in de use case survey. | Filled iteratie | Open | 7dagen | 10% | high |
02 | Planning | De planning wordt niet gehaald. | Reviewen tijdens iedere iteratie. | Open | 2-5dagen | 25% | medium |
03 | Verwachtingen systeem | De opgestelde requirements geven geen goed beeld van de verwachtingen die de stakeholders en toekomstig gebruikers hebben. | Filled iteratie | Open | 7dagen, afhankelijk van moment van ontdekking. Later = meer tijd kwijt | 10% | high |
04 | Informatie incompleet | De informatie die aangeleverd is door de stakeholders blijkt incompleet. Bijvoorbeeld systeem kritische eigenschappen missen (zoals regels voor toelating tot examens). | Focused iteratie | Open | 2-5dagen | 25% | high |
05 | Beschikbaarheid stakeholders | De stakeholders zijn niet beschikbaar voor het evalueren van dit document in verschillende stadia, dat kan vertraging veroorzaken. | Iedere iteratie | Open | 7dagen | 10% | low |
Requirements
Use cases
Use case survey
Omdat de scope van dit project binnen het domein van de student ligt, staan hier alle use cases waar de student een initiating actor is. We zien hier dat het goedkeuren van het vakkenpakket van de student bestaat uit drie verschillende usecases, namelijk het aanvragen van vrijstelling(en), vervangend(e) vak(ken) en invulling van de keuzeruimte(n). We identificeren in totaal zes usecases voor de student in het systeem:
# | Name | Description | Initiating actor |
---|---|---|---|
01 | Bekijken studentprofiel | Bekijk naw gegevens, contact gegevens, informatie over de studie (curriculum, inschrijving) en notities in studentdossier. | Student |
02 | Bekijken studievoortgang | Bekijk een overzicht met het studieprogramma dat de student volgt plus reeds behaalde resultaten. | Student |
03 | Aanvraag vrijstelling | Vraag vrijstelling aan voor een vak, met argumentatie. | Student |
04 | Aanvraag vervangend vak | Vraag een vervangend vak aan voor een verplicht vak, met argumentatie. | Student |
05 | Aanvraag goedkeuring invulling vakkenpakket | Vraag goedkeuring aan voor de invulling van een keuzevak, vrijekeuzeruimte of bijvakkenpakket,met argumentatie. | Student |
06 | Aanvraag examen | Vraag een propedeuse, minor, bachelor of master examen aan. Toon hierbij ook een checklist zodat een student kan zien wat er nog gedaan moet worden. | Student |
Integrated use case diagram
Individual use cases
Zoals besproken met Niels zal ik niet alle usecases in ORM uitwerken maar slechts een (gevarieerde) selectie hiervan.
Use Case: | Bekijken studievoortgang |
---|---|
Description | De student bekijkt een overzicht van vakken en keuzeruimten die hij moet voldoen volgens het curriculum, zijn huidig gekozen vakkenpakket en reeds behaalde resultaten. Hierdoor ontstaat een beeld van de voortgang van de student en wat hem nog te doen staat. |
Triggers | De student wilt zijn voortgang inzien (om bijvoorbeeld een studieplanning maken). |
Preconditions | De gebruiker is ingelogd. |
Basic course of events | 1) De gebruiker navigeert naar de studievoortgang module. 2) Het systeem toont een overzicht aan de student met daarin:
|
Exceptions | Geen. |
Postconditions | Geen. |
Related business rules | 2, 3 |
Use Case: | Aanvraag vrijstelling |
---|---|
Description | Een student vraagt vrijstelling aan voor een vak uit zijn curriculum en geeft daar een argumentatie bij. Het resultaat van iedere aanvraag wordt door het systeem getoond in het beginscherm van deze module. |
Triggers | De student is van mening dat hij een vak in zijn curriculum niet hoeft te volgen. |
Preconditions | De gebruiker is ingelogd. |
Basic course of events | 1) De gebruiker navigeert naar de vrijstelling module. 2) Het systeem toont een overzicht van alle reeds gedane aanvragen met daarbij het resultaat van de aanvraag en eventueel commentaar van de examencomissie en/of vakdocent(en). |
Exceptions | 7) Als de ingevoerde argumentatie incorrect is (bijvoorbeeld leeg) geeft het systeem een waarschuwing dat dit verplichte veld correct ingevuld dient te worden. |
Postconditions | Er is een formeel verzoek tot vrijstelling voor een vak ingediend door de student. |
Related business rules | . |
Use Case: | Aanvraag goedkeuring invulling vakkenpakket |
---|---|
Description | Een student kiest een aantal vakken om in zijn vakkenpakket te gebruiken ter invulling van (een deel van) zijn curriculum. Het resultaat van iedere aanvraag wordt door het systeem getoond in het beginscherm van deze module. Als de student een Minor wilt behalen kan hij (een deel van) zijn keuzeruimten gebruiken hiervoor, hij kan dit kenbaar maken door een duidelijke argumentatie in te vullen. |
Triggers | De student heeft een invulling van keuzeruimte uit het curriculum naar eigen wens samengesteld. |
Preconditions | De gebruiker is ingelogd. |
Basic course of events | 1) De gebruiker navigeert naar de invulling vakkenpakket module. 2) Het systeem toont een overzicht van alle reeds gedane aanvragen met daarbij het resultaat van de aanvraag en eventueel commentaar van de examencomissie en/of vakdocent(en). |
Alternative paths | 5) Als de gebruiker een keuzeruimte selecteert waar al een invulling voor goedgekeurd is geeft het systeem aan dat bij goedkeuring van een nieuwe aanvraag de oude invulling vervalt en dus vervangen wordt. De gebruiker kan annuleren (de usecase gaat verder bij stap 4) of instemmen (de usecase gaat verder bij stap 6). |
Exceptions | 5) Als de gebruiker een keuzeruimte selecteert waar reeds een aanvraag voor is ingediend, maar er is nog geen resultaat hiervan bekend, geeft het systeem aan dat er nog geen nieuwe aanvraag voor deze keuzeruimte ingediend kan worden. De usecase gaat verder bij stap 4. 7) Als de gebruiker een samenstelling van vakken kiest welke tezamen niet voldoende ECTS omvatten geeft het systeem een waarschuwing dat dit geen correcte invulling van de geselecteerde keuzeruimte is. |
Postconditions | Er is een formeel verzoek voor invulling van keuzeruimte ingediend. |
Related business rules | 2, 3 |
Scenarios
Individual scenarios
De eerste die scenarios (Bekijken student profiel en Bekijken studievoortgang) zijn triviaal en daarom weggelaten uit dit overzicht. Bij ieder scenario wordt aangenomen dat de gebruiker reeds is ingelogd.
Aanvraag vrijstelling
- 1) Student Piet Janssen navigeert naar de vrijstelling module.
- 2) Zijn enige eerder gedane aanvraag voor vrijstelling wordt getoond; Discrete Wiskunde, aanvraag goedgekeurd.
- 3) Hij selecteert de actie "een nieuwe vrijstelling wilt aanvragen".
- 4) Een lijst met alle vakken uit het vakkenpakket binnen het curriculum Informatiekunde van Piet Janssen wordt getoond.
- 5) Hij selecteert het vak Domeinmodelleren.
- 6) Hij geeft aan dat hij in aanmerking komt voor vrijstelling omdat hij een studie HBO-informatica heeft afgerond.
- 7) Het systeem meldt dat de aanvraag is ingediend.
Exception path:
- 6b) Hij geeft als argument; ""
- 7b) Het systeem meldt; "U heeft geen argumentatie opgegeven, dat is verplicht bij deze aanvraag." en hij dient opnieuw stap 6 uit te voeren.
Aanvraag vervangend vak
- 1) Student Piet Janssen navigeert naar de vervangend vak module.
- 2) Zijn enige eerder gedane aanvraag voor een vervangend vak wordt getoond; Discrete Wiskunde vervangen door Complexiteitstheorie, aanvraag afgekeurd omdat er niet voldoende overlap is.
- 3) Hij selecteert de actie "een nieuwe aanvraag voor een vervangend vak indienen".
- 4) Een lijst met alle vakken uit het vakkenpakket binnen het curriculum Bachelor Informatiekunde 2004 van Piet Janssen wordt getoond.
- 5) Hij selecteert het vak Domeinmodelleren.
- 6) Een lijst met alle beschikbare vakken uitgezonderd vakken uit zijn curriculum wordt getoond.
- 7) Hij selecteert het vak Beeldverwerking.
- 8) Hij geeft als argument; Beeldverwerking is leuker.
- 9) Het systeem meldt dat de aanvraag is ingediend.
Exception path:
- 8b) Hij geeft als argument; ""
- 9b) Het systeem meldt; "U heeft geen argumentatie opgegeven, dat is verplicht bij deze aanvraag." en hij dient opnieuw stap 3 uit te voeren.
Aanvraag goedkeuring invulling vakkenpakket
- 1) Student Henk Stubbe navigeert naar de keuzeruimte module.
- 2) Zijn enige eerder gedane aanvragen voor invulling van keuzeruimte worden getoond;
- Bijvakkenpakket, aanvraag afgekeurd omdat er niet voldoende samenhang is.
- Bijvakkenpakket, aanvraag afgekeurd omdat er niet voldoende samenhang is.
- 3) Hij selecteert de actie "een nieuwe aanvraag voor de invulling van een keuzeruimte indienen".
- 4) Het systeem toont de keuzeruimten Bijvakkenpakket, vrijekeuzeruimte, keuzevak informatica overeenkomstig zijn curriculum Informatica.
- 5) Hij selecteert Bijvakkenpakket
- 6) Het systeem geeft aan dat er een totaal aantal van 18 ECTS nodig is met daarbij de beschikbare vakken uitgezonderd andere vakken uit zijn huidige vakkenpakket.
- 7) Hij selecteerd de vakken Beeldverwerking, Patroonherkenning en Securityprotocols
- 8) Hij geeft als argument; Ik vind deze vakken interessant en ze passen bij de andere vakken in mijn vakkenpakket.
- 9) Het systeem meldt dat de aanvraag is ingediend.
Alternative path:
- 2c) Het systeem toont oa. een goedgekeurde aanvraag voor de invulling van de vrijekeuzeruimte.
- 5c) Hij selecteert vrijekeuzeruimte.
- 6c) Het systeem meldt; bij goedkeuring van deze nieuwe aanvraag vervalt oude invulling van uw vrijekeuzeruimte. De gebruiker krijgt de keuze om verder te gaan bij stap 4 of 6.
Exception path:
- 2b) Het systeem toont oa. een ingediende aanvraag voor de invulling van de vrijekeuzeruimte met als resultaat "wacht op verwerking".
- 5b) Hij selecteert vrijekeuzeruimte.
- 6b) Het systeem meldt; er kan nog geen nieuwe aanvraag voor deze keuzeruimte ingediend worden totdat de huidige aanvraag verwerkt is. De gebruiker moet verder gaan bij stap 4.
- 7d) Hij selecteerd de vakken Beeldverwerking en Securityprotocols.
- 9d) Het systeem meldt; "De geselecteerde vakken hebben gezamelijk niet genoeg ECTS om de geselecteerde keuzeruimte op te vullen" en hij dient opnieuw stap 7 uit te voeren.
- 8e) Hij geeft als argument; ""
- 9e) Het systeem meldt; "U heeft geen argumentatie opgegeven, dat is verplicht bij deze aanvraag." en dient opnieuw stap 8 uit te voeren.
Aanvraag examen
- 1) Student Wim van Kampenhout navigeert naar de examenaanvraag module.
- 2) Hij heeft nog geen eerder gedane aanvragen, dus het systeem toont een leeg overzicht.
- 3) Hij selecteert de actie "een nieuwe examen aanvraag indienen".
- 4) Het systeem toont de keuze uit een bachelor of master examen.
- 5) Hij selecteert het bachelor examen.
- 6) Het systeem toont zijn curriculum en vakkenpakket met behaalde resultaten. Tot zijn tevredenheid ziet dat aan alle vereisten voor dit examen voldaan is.
- 7) Hij bevestigt de aanvraag van het examen.
- 8) Het systeem meldt dat de aanvraag is ingediend.
Exception path:
- 6b) Hij ziet dat niet aan alle vereisten voor dit examen voldaan is, einde usecase.
Integrated Domainmodel
Non-functional Requirements
De belangrijkste non-functionals:
Nonfunctional requirement | Argumentatie |
---|---|
Authenticatie | Het is een gesloten systeem, alleen te gebruiken door de actoren zoals gesteld in de use cases. |
Autorisatie | Studenten kunnen alleen hun eigen gegevens inzien. |
Privacy | De notities in het dossier van een student moeten niet publiek toegankelijk zijn. Alleen direct betrokkenen bij de student (zoals een studiebegeleider) dienen toegang te hebben. |
Data integriteit | De consistentie en juistheid van gegevens van een student en zijn studievoortgang zijn van groot belang. |
Beschikbaarheid | Het systeem kan zich, behoudens hoge uitzondering, geen downtime permitteren. |
Betrouwbaarheid | Het systeem moet zich exact aan alle reglementen houden. De student maakt belangrijke beslissingen over zijn studie op basis van dit systeem, het dient dus accuraat en betrouwbaar te zijn. |
Bruikbaarheid | Het systeem moet een aantal student taken eenvoudiger maken, dat kan alleen als de usability van het systeem in acht wordt genomen. |
Addendum
Business Rules Catalogue
Nr. | regel |
---|---|
1 | Student ONLY inzien profiel OF THAT student |
2 | Vak UNIQUE onderdeel van vakkenpakket |
3 | ALL vak onderdeel van curriculum ALSO onderdeel van vakkenpakket |
4 | Student ONLY toelating tot examen FOR curriculum IF goedkeuring vakkenpakket FOR THAT curriculum |
5 | Student ONLY behalen examen FOR curriculum IF goedkeuring vakkenpakket AND resultaat FOR ALL vak onderdeel van THAT vakkenpakket als beschreven door OER |
Terminological Definitions
- Toegang tot Individuele Studentgegevens (TIS): Je kunt hier je (studie)adres wijzigen en, afhankelijk van je opleiding, ook je tentamenresultaten opvragen en je aan- of afmelden voor onderwijs en tentamens.
- Curriculum: De inhoud van een opleiding, d.w.z. de vakken en en studieruimte voor bepaalde themas.
- Onderwijs Examen Regeling (OER): In de OER zijn alle regels over het onderwijs en examens vastgelegd, voor ieder curriculum is er een OER.
- Vakkenpakket: De vakken die een student volgt ter invulling van een curriculum. Deze invulling moet uiteraard conform de OER van het betreffende curriculum zijn.
- Vrije keuze vak: Een vak dat de student mag kiezen uit het gehele aanbod van de universiteit.
- Bijvak: Een vak dat de student zelf mag kiezen. De student moet echter wel kunnen aantonen dat de gekozen bijvakken een samenhangend geheel vormen.
- ECTS: Studiepunt, European Credit Transfer System.