Requirements Engineering - Use cases PDF

Document Details

HeroicSugilite3653

Uploaded by HeroicSugilite3653

Hogeschool Utrecht

Tags

use cases requirements engineering software design system analysis

Summary

This document discusses requirements engineering and use cases, providing an overview of use case diagrams, descriptions, and scenarios. It includes examples and practical applications, suitable for undergraduate-level learning of software engineering concepts.

Full Transcript

Requirements Engineering: Use cases Vak code Semester 2 Sprint 6 – Week 1 – College 1 Agenda 1. Introductie use case 2. Use case diagram Elementen use case diagram 3. Use case description Elementen use case description De drie scenario’s 4. Link tussen domeinmodel...

Requirements Engineering: Use cases Vak code Semester 2 Sprint 6 – Week 1 – College 1 Agenda 1. Introductie use case 2. Use case diagram Elementen use case diagram 3. Use case description Elementen use case description De drie scenario’s 4. Link tussen domeinmodel, user story en use case 5. Opdracht Leerdoelen Na afloop van het college Weet je wat een use case diagram en -description is Ken je de verschillende elementen in een use case diagram Draagt bij aan leeruitkomsten Kun je een use case diagram maken 1. Kent en begrijpt de basisprincipes van Ken je alle elementen van de use case procesanalyse en ontwerpmethoden om de description samenhang van informatiesystemen te kunnen analyseren en herontwerpen, zoals UML, Ken je de drie verschillende scenario's van BPMN, DMN. een use case description 2. Kent en begrijpte de basisprincipes van een ICT-selectie en kan deze toepassen, waaronder Ken je de connectie tussen het domeinmodel requirements opstellen, selectiecriteria en user stories vastestellen die gebaseerts zijn op een organisatiecontext, prioriteren, long- en Kun je een use case description maken shortlist screeren 1 Introductie use case Opstellen functioneel ontwerp ANALYSE ANALYSE VALIDATIE Opdracht/kwestie User stories Domeinmodel VALIDATIE Productvisie ANALYSE VERWERKING VERWERKING Use case descriptions Sitemap diagram Bedrijfsprocesanalyse Use case diagram VERWERKING Functioneel ontwerp Visie & Scope Actor descriptions Wireframes Wat is dat, een Use Case? Use Case Gebruik Geval Soft- en/of hardware Een “gebruiksgeval” kun je lezen als een toepassing: Hoe gebruikt een actor een systeem? Iets of iemand die een handeling verricht en daarmee een proces beïnvloed (een gebruikersrol) Wat is een use case? Functionaliteit Compleet, consistent, ondubbelzinnig Een samenhangende reeks van acties, inclusief varianten en foutafhandeling, die een systeem, subsysteem of klasse kan uitvoeren in interactie met actoren Mens-machinegrens Bron: J Rumbaugh, The UML Reference manual Use case in gewone taal Wie? Wat? Systeem Wie (actor) kan wat (functionaliteit) met systeem doen Voorbeeld: studentvolgsysteem Voorbeeld use cases: Student toevoegen Student wijzigen Student zoeken Student inschrijven Student verwijderen Adresgegevens toevoegen Aantal EC berekenen Rapport genereren Cijferlijst verzenden per email … Zelfstandig naamwoord + werkwoord 9 Waarom een use cases? Wat moet een systeem allemaal kunnen Wat zijn alle mogelijke scenario’s Testen of de use cases werken Wie heeft welke rechten Licenties software 2 Use case diagram Wat is een use case diagram WhatsApp Receive message Archive chat User Compose message «actor» Send message Other app Use case diagram Weergave van Interactie tussen gebruiker (actor) en systeem Use cases waar gebruiker bij betrokken is Doel Globaal overzicht geven van wie wat met een systeem kan doen Vanwege eenvoud goed communicatiemiddel! Use case diagram Systeem WhatsApp Receive message Associatie Use case Actor (mens) Archive chat User Compose message Actor (ander systeem) «actor» Send message Other app Use case WhatsApp Wat actor(en) met systeem kunnen doen Receive message Ellips met naam Afgebakende functionaliteit Archive chat Zelfstandig naamwoord + werkwoord User Compose message «actor» Send message Other app Relaties tussen use cases BankierenApp Verplicht! QR scannen Include Bedrag overboeken Gebruiker Bevestigen met vingerafdruk Betaalpas aanvragen WhatsApp Optioneel Extend «extend» Bericht schrijven Afbeelding toevoegen Gebruiker Bericht versturen Let op pijlrichting! Relaties tussen actoren: overerving Beheerder kan hetzelfde als Gebruiker plus een Gebruiker Applicatie extra use case Profiel inzien Gebruiker aanmaken Beheerder 3 Use case description Look and feel use case description Name, description Brief description of the process (what is happening) in the use case Actors List of actors Pre-condition What must occur before Post-condition What had occured as a result of use case Main scenario (Happy flow) Description of the sequence of activities in the most commenly completed path. The most routine path from pre- to post-condition Actor list System list 1. List de actor steps here 1.1 list the system steps here 2. 2.1 Pre- en postconditie Aannamen Resultaat voorafgaand Use case na uitvoeren aan use use case case Preconditie Postconditie Scenario’s Een andere weg naar Main scenario (happy flow) succes Alternate scenario Exception scenario Doel niet bereikt! Link diagram en description Use case diagram: overzicht van alle actoren en use cases Use case description: stap voor stap uitleg van de use case over de interactie tussen actor en systeem WhatsApp Voor iedere use case Receive message een use case description De actoren in de Archive chat use case description User Compose message «actor» Send message Other app Use case description template (1/2) Name, description Brief description of the process (what is happening) in the use case Actors List of actors Pre-condition What must occur before Post-condition What had occured as a result of use case Main scenario (Happy flow) Description of the sequence of activities in the most commenly completed path. The most routine path from pre- to post-condition Actor list System list 1. List de actor steps here 1.1 list the system steps here 2. 2.1 Use case description template (2/2) Alternate path List the description here. The less common sequences to get from pre- to post-condition Actor list System list 1. List de actor steps here 1.1 list the system steps here 2. 2.1 Exception path List the description here. The sequence of actions that prevents getting to the post- conditions Actor list System list 1. List de actor steps here 1.1 list the system steps here 2. 2.1 Invullen use case description Het is belangrijk dat je het zo goed mogelijk invult: Hoe beter ingevuld hoe beter je de ICT oplossing kan valideren Hoe beter je fouten kan detecteren Hoe beter je weet of de oplossing is gemaakt volgens ontwerp Zo min mogelijk kans op onvoorziene scenario’s Voorbeeld Complete online transaction Customer makes an online purchase Actors Customer Pre-condition Customer must be logged in Post-condition Item purchased, payment is logged Main scenario (Happy flow) Customer makes a payment, and the payment is logged in the transaction history Actor list System list 1. Customer selects account type 1.1 displays transaction options 2. Customer selects “payment” 2.1 displays payment fields 3. Customer completes payee fields 3.1 system validates fields 3.2 system displays amount box 4. Customer enters amount 4.1 system validates account balance 4.2 system prompts customer to confirm 5. Customer submits transaction 5.1 system displays confirmation message Voorbeeld Alternate path Customer makes a transfer Actor list System list 1. Customer selects account type 1.1 displays transaction options 2. Customer selects “transfer” 2.1 system displays transfer account options 3. Customer chooses account 3.1 system prompts for transfer frequency 4. Customer enters frequency 4.1 system displays amount box 5. Continue happy flow at step 4 Exception path Insufficient funds Actor list System list 1. Starts at happy flow 4 4.1 system validates account balance 4.2 insufficient funds detected 4.3 system displays message insufficient funds 4.4 use case ends 4 Link andere modellen Use cases en het domeinmodel User userId firstName WhatsApp lastName dateOfBirth Set status emailAddress profilePicture status Set profile picture createMessage() setProfilePicture() setStatus() User Create Message Use cases en het domeinmodel (2) UC1 – Profiel UC2 – Bericht opstellen UC3 – Bericht … instellen versturen User.firstname set/get get - User.lastname set/get get - User.profilePicture set/get - - Message.text - set get Message.sendDateTime - - set Message.isRead - - set … Use cases en user stories #1 – Gebruiker #2 – Gebruiker bericht #3 Gebruiker bericht … naam instellen sturen individu sturen groep UC1 – Profiel instellen X UC2 – Bericht opstellen X X UC3 – Bericht versturen X X UC4 – Bericht ontvangen … 5 Opdracht Samenvatting Use case: een samenhangende reeks van acties, inclusief varianten en foutafhandeling, die een systeem, subsysteem of klasse kan uitvoeren in interactie met actoren Use case diagram WhatsApp Use case description Receive message Archive chat User Compose message «actor» Send message Other app Tot de volgende keer

Use Quizgecko on...
Browser
Browser