Een Use Case is een manier om Requirements te noteren. Een Use Case bevat de volgende dingen:
- Systeem (waarover gaat het)
- Actors (Wie is betrokken)
- Doel
- Scenarios
- Uitbereidingen
- Onderstuenende actoren (mensen/systemen)
Neem dit voorbeeld:
Use Case Diagram
Hier onder zien we een use case diagram. Een use case diagram kan handig zijn om verschillende redenen:
- Wanneer je de Requirements aan het verzamelen bent kan dit makkelijk visualiseren hoe verschillende gebruikers het systeem gebruiken.
- Wanneer je met diverse groepen werkt kan het een duidelijke manier zijn om systeem functionaliteit over te brengen
- Tijdens het designen van het systeem kan het handig zijn als planning van features, zodat je zeker weet dat je alles hebt wat nodig is.
- Als je wilt duidelijk maken wat er in het systeem zit en wat er extern is.
Design
Een use case diagram bestaat uit verschillende gedeeltes die hieronder uitgelegd worden.
1. Actors
Actors zijn de externe entiteiten die jouw systeem gebruiken, hieronder vallen Gebruikers, Andere systemen of hardware apparaten. In de context van een UseCase Diagram, Actors starten de interactie met een usecase, en krijgen een uitkomst terug. Het goed snappen van de verschillen in jouw gebruikers is cruciaal voor een accurate Use Case Diagram
2. Use Cases
De Use Cases zijn de acties of scenarios. Zij representeren de dingen die het systeem kan doen. In het voorbeeld van online winkelen kunnen use cases bijvoorbeeld “plaats bestelling”, “track je pakketje”, “update product informatie” zijn. Use cases zijn altijd ovaal :3
3. System Boundary
Een System boundry of Systeem Grens laat visueel zien wat er allemaal onder het systeem valt. Het laat zien wat er allemaal in het systeem zit en wat er buiten valt. Dit helpt visueel.
Relaties
Verder kunnen er lijnen getrokken worden tusssen de Actors en Use Cases, maar er kunnen ook relaties zitten tussen Use Cases. Er zijn verschillende soorten relaties:
- Association Relationship Dit is de communicatie tussen een Actor en een Use Case. Het is een rechte lijn tussen de 2.
- Include Relationship
Je kan ook een relatie hebben tussen 2 Use Cases, Als 1 Use case de functionaliteit gebruikt van de andere Use Case. In dit geval trek je een pijl van degene die de functionaliteit gebruikt richting de Use Case die gebruikt wordt. Verder zet je de text
<<include>>
bij de pijl - Extend Relationship
Dit is een relatie tussen 2 use cases waarbij de ene use case de functionaliteit van de ander uitbereidt. In dit geval trek je een pijl van de Use Case die wordt uitgebreidt naar de Use Case die dient als uitbereiding. Ook zet je
<<extend>>
bij deze pijl neer. - Generalization Relationship een generalisatie relatie kan je gebruiken als 2+ Use Cases samengevat kunnen worden als een simpelere Use Case, denk bijvoorbeeld aan het huren van een auto en een fiets, dit kan je generaliseren naar het huren van een vertuig. In dit geval trek je een pijl van alle items die samen naar de generalisatie lijden:
Links
Er zijn diverse software tools waarmee je use case diagrammen (en nog heel veel meer) kunt modelleren. Bijvoorbeeld (met links naar de studentversies):
Go visit my friend Thomas his article for more info on this subject.