C4- Metoda Cazurilor de Utilizare

41
Proiectarea și Managementul Sistemelor Informatice C4 Metoda cazurilor de Lect. univ. dr. Mircea Moca ([email protected] - birou 431) http://bis.econ.ubbcluj.ro/moodle/course/view.php?id=11 utilzare

Transcript of C4- Metoda Cazurilor de Utilizare

Page 1: C4- Metoda Cazurilor de Utilizare

Proiectarea și Managementul

Sistemelor Informatice

C4 – Metoda cazurilor de

Lect. univ. dr. Mircea Moca ([email protected] - birou 431)

http://bis.econ.ubbcluj.ro/moodle/course/view.php?id=11

C4 – Metoda cazurilor de

utilzare

Page 2: C4- Metoda Cazurilor de Utilizare

Cuprins

1. Legătura dintre metoda cazurilor de utilizare şi fazele elicitaţiei

2. Trăsăturile sistemului

3. Modelul cazurilor de utilizare

1. Documente utilizate1. Documente utilizate

2. Scenarii de utilizare1. Taxonomia scenariilor de utilizare

2. Gruparea scenariilor de utilizare

3. Documentarea cazurilor şi scenariilor de utilizare

2

Page 3: C4- Metoda Cazurilor de Utilizare

Obiective1. Aprofundarea metodei de elicitaţie Cazuri de

utilizare

a) Extragerea şi documentarea cazurilor de utilizare

b) Realizarea conexiunilor între cazuri de utilizare şi obiectiveobiective

3

Page 4: C4- Metoda Cazurilor de Utilizare

Trăsături (de sistem)

Necesități

Document de viziune

Cerin țe

4

Specifica ții de documenta ție

utilizator

Specifica ții de design (proiectare)

Specifica ții de testare

Specifica ții suplimentare (!)Model Use-Case

Cerin țede sistem

IBM Rational4

Page 5: C4- Metoda Cazurilor de Utilizare

Trăsături de sistem

Trăsătura este o caracteristică/ capabilitate a sistemului care satisface direct necesitatea unui stakeholder.

Exemple:

ATMul va permite unui client să realizeze transfer de � ATMul va permite unui client să realizeze transfer de bani între conturi

� Interfața grafică cu utilizatorul va furniza ajutor contextual

5

Page 6: C4- Metoda Cazurilor de Utilizare

Caracterizarea trăsăturilor

� Atribute

� Informații despretrăsături

� Ajută la evaluarea,

Atribute pentru trăsăturile sistemului:Stare

• Propus• Aprobat

• Încorporat (Integrat)Importanță – Cât este de � Ajută la evaluarea,

urmărirea, prioritizarea și managementul trăsăturilor

Importanță – Cât este de importantă trăsătura pentru client/ utilizator

• Critic• Important• Util

EfortRiscStabilitateRelease țintitAtribuit persoanei ...Motiv

6

Page 7: C4- Metoda Cazurilor de Utilizare

Elaborarea cazurilor de utilizare

Pe baza trăsăturilor sistemului, se realizează:

� Identificarea scenariilor de utilizare

� Formarea cazurilor de utilizare

� Corelări între cazuri de utilizare� Corelări între cazuri de utilizare

� Documentarea scenariilor şi cazurilor de utilizare

� Reprezentarea grafică a cazurilor de utilizare (UML –diagrama cazurilor de utilizare)

7

Page 8: C4- Metoda Cazurilor de Utilizare

Documente utilizate în

modelul cazurilor de utilizare

Studiu/interviu realizare Model Cazuri de

Utilizare- Descrierea studiului

- Listă cu toți actorii-Listă cu toate cazurile de

Client

Automat de reciclare

Reciclează articole

Operator

-utilizare

Recicleaz ă articole- Scurtă descriere

- Flux de acțiuni/ev.

Tipărește raportzilnic

- Scurtă descriere- Flux de acțiuni/ev.

Modific ă valori atricole- Scurtă descriere- Flux de acțiuni

Adaug ă un nou tip de sticl ă- Scurtă descriere

- Flux de evenimente

Tipărește raport zilnic

Modific ă valori articole

Adaug ă un nou tip de sticl ă

Manager

8

Page 9: C4- Metoda Cazurilor de Utilizare

Modelul cazurilor de utilizare - șablon

• Modelul cazurilor de

utilizare

Asigură o vedere globală

completă asupra

funcțonalității sistemului

Arată comportamentul

Modelul cazurilor de utilizare

1. IntroducereRolul sistemului – nivel gegeral

2. Descrierea metodei pentru ob ținerea modelului

Vedere de ansamblu asupra modelului

3. Ierarhia M odelului de cazuri de utilizare Arată comportamentul

sistemului în context

Poate servi ca și contract între

client și dezvoltatori

Input pentru activități ulterioare

din ciclul de dezvoltare al

produsului

List ă cu to ți actoriiList ă cu toate cazurile de utilizare9

utilizareComponentele modelului, reprezentate ca și ierarhie. Pentru fiecare componentă, se furnizează:

Nume, scurt ă descriere, rol în sistem și conținut:

ActoriNume și scurtă descriere despre actor și asocieri

Cazuri de utilizareNume și scurtă descriere despre caz de utilizare și asocieri

4. Diagrame cu cazuri de utilizare

Page 10: C4- Metoda Cazurilor de Utilizare

Proprietăți ale actorilor în modelul

cazurilor de utilizare

� Proprietăți utilizate în descrierea actorilor:

� Nume

� Scurtă descriere� Ce sau pe cine reprezintă actorul

� De ce este necesar actorul (rol)

� Interesul actorului în utilizarea sistemului

� Relații� Asocieri și comunicații spre și dinspre cazurile de utilizare

� Actorii apar în diagramele cazurilor de utilizare arătând cum interacționează acesta cu modelul

10

Page 11: C4- Metoda Cazurilor de Utilizare

Exemplu de scurtă descriere a actorului:

� Client� Clientul adună sticle, conserve și flacoane acasă și le aduce la

magazin (unde se află mașina de reciclat) pentru a primi bani.

� Operator� Operator� Operatorul este responsabil pentru mentenanța mașinii de

reciclat.

� Manager� Managerul este responsabil pentru întrebări legate de bani și

serviciile oferite de magazin clienților.

11

Page 12: C4- Metoda Cazurilor de Utilizare

Proprietăți ale cazurilor de utilizare din

model

� Proprietăți pentru cazuri de utilizare:� Nume

� Scurtă descriere� Scurtă descriere

• Descrie rolul și motivația cazului de utilizare� Relații între cazuri de utilizare și actori

� Descriere scurtă a cazului de utilizare� Cazurile de utilizare vor fi detaliate ulterior în analiză, în

raportul cazurilor de utilizare

12

Page 13: C4- Metoda Cazurilor de Utilizare

Cum denumim cazurile de utilizare?

Fiecare caz de utilizare trebuie să aibă un nume care să indice ceea ce se ob ține prin interacțiunile cu actorul (actorii) –REZULTATUL ob ţinut

Exemple de denumiri corecte/incorecte:

� Reciclează articolePrimește articole de reciclat� Primește articole de reciclat

� Acceptă articole de reciclat� Returnează articole� Depune articole

Care dintre formulările de mai sus indică valoarea/ atingerea scopului pentru actor?

13

Page 14: C4- Metoda Cazurilor de Utilizare

Exemple de descrieri ale cazurilor de

utilizare

� Reciclează articole

� Utilizatorul utilizează mașina de reciclat pentru a returna automat articole (sticle, conserve, flacoane) care sunt contabilizate şi de la care primește chitanță. Cu chitanța se poate obține cash la un aparat adecvat.aparat adecvat.

� Adaugă un nou tip de sticlă

� Noi tipuri de sticle pot fi adăugate mașinii prin pornirea ei în –mod învățare - și inserând 5 exemple de sticlă ca și când se returnează articole în mod obișnuit. În acest fel mașina măsoară sticlele și învață să le identifice. Managerul specifică valorile pentru noul tip de sticlă.

14

Page 15: C4- Metoda Cazurilor de Utilizare

Simbolurile UML pentru reprezentarea

cazurilor de utilizareApasă but. start

Mașină gata

Prima sticlă

Mașină gata Recicleaz ă articole OperatorClient

Alertă, articol blocat

Problema rezolvată

Mașină gata

Următoarea sticlă

Cere chitanță

Tipărește chitanță

Următoarea sticlă

articole

Liniile și săgețile indică un dialog(comunicație în ambele sensuri)

Săgeata indică cine inițiază (declanșează) cazul de utilizare

15

Page 16: C4- Metoda Cazurilor de Utilizare

Secvențe de interacțiuni

Fiecare caz de utilizare reprezintă un set de secven țe de interac țiuni între actor(i) şi sistem.

Sistem

O secvență de interacțiuni ale sistemului cu actorii pentru obținerea unui rezultat util (de valoare) pentru un actor (denumit și actor primar).

16

Page 17: C4- Metoda Cazurilor de Utilizare

Scenarii de utilizare

• Un caz de utilizare poate fi format din mai multe instanțe

• Un scenariu este o instanță a unui caz de utilizare

Reciclează articoleClient Operator

utilizare• O secvență specifică de acțiuni

17

Page 18: C4- Metoda Cazurilor de Utilizare

Cazuri de utilizare speciale

Sunt importante, nu trebuiesc omise:� Pornirea și oprirea sistemului� Mentenanța sistemului� Mentenanța informațiilor� Exemplu: rutine automate verifică baza de date

� Abordate mai ușor în iterații ulterioare� Abordate mai ușor în iterații ulterioare

� Adăugarea noilor funționalități unui sistem care rulează� Important pentru sistemele cu funcționare în timp real și

fără opriri

� Portarea sistemului care rulează în medii noi� Cazuri de utilizare în care actorul este firma de dezvoltare

software

� Scenarii de deployment, mentenanţă

18

Page 19: C4- Metoda Cazurilor de Utilizare

Identificarea scenariilor în cazul de

utilizare

1. Identificarea tuturor scenariilor posibile pentru un caz de utilizare

2. Formarea listei cu toate întrebările care vor fi adresate utilizatoruluiutilizatorului

� Procedură:

� Lucru pe hârtie cu utilizatorii

� Întrebare: ce ar putea să nu meargă (să meargă greșit)?

� Întrebare: ce s-ar putea să nu meargă (să nu se întâmple)?

� Întrebare: ce tipuri de resurse se pot bloca?

� Codificare: A1, A2, A3, etc

� Se pot descrie detaliat, însă de obicei este suficientă identificarea lor19

Page 20: C4- Metoda Cazurilor de Utilizare

Cazuri de utilizare: fluxuri de activități /

evenimente

Într-un caz de utilizare:

• 1 Flux de baz ăScenariul în cazul fericit !

• Câteva fluxuri alternative� Variante obi șnuite

Exemplu: retragere numerar din cont curent

� Cazuri rareExemplu: retragere numerar cu valoare mai mare de X lei

� Flux excep țional (cu erori, excep ții)Exemplu: Caseta de numerar este goală

20

Page 21: C4- Metoda Cazurilor de Utilizare

Descrierea cazurilor de utilizare: pas cu pas

Pentru fiecare caz de utilizare identificat și confirmat de beneficiar din modelul cazurilor de utilizare, trebuie specificat procesul pas cu pas (flux de acțiuni/evenimente).

Nume caz de utilizare

Scurt ă descriereFP1 Flux principal

1. Primul pas2. Al doilea pas3. Al treilea pas, etc.

FA1.1 Flux alternativ 1FA 1.2 Flux alternativ 2 FA 1.3 Flux alternativ 3

Nume caz de utilizare

21

Page 22: C4- Metoda Cazurilor de Utilizare

Scenarii de utilizare

� Definiție, principii� Definiție, principii

� Tipuri de scenarii

� Identificarea și documentarea scenariilor

� Avantajele scenariilor

22

Page 23: C4- Metoda Cazurilor de Utilizare

Definiție, principii

1. O descriere a unei modalități posibile de utilizare a sistemului.

2. Descrie un exemplu concret de satisfacere/ eșuare în satisfacere a unui scop (grup de scopuri).

� Stakeholderii în general preferă să discute de cerințe de sistem în termeni de exemple, decât în termeni de intenții/ cerințe abstracte.

� Scenariul este un mediator între abstract și concret.

23

Page 24: C4- Metoda Cazurilor de Utilizare

Caracteristici

� În general scenariile definesc o secvență de pași de interacțiune realizați pentru satisfacerea unui scopși surprinde relația cu contextul sistemului.

� Logica unui scenariu de utilizare poate fi parte a cazului de utilizare sau poate fi o variantă cazului de utilizare sau poate fi o variantă alternativă. � Poate fi o trecere întreagă pe tot parcursul cazului de utilizare, precum

logica unui scenariu principal sau o parte a acestuia + unul sau mai multe scenarii alternative.

� Logica unui scenariu de utilizare poate fi o trecere prin logica conținută de mai multe cazuri de utilizare.

24

Page 25: C4- Metoda Cazurilor de Utilizare

Scenarii: cerințe de sistem->în context

� Cerințele există într-un context specific:

� Scenariile sunt utilizate pentru a documenta informații legate de contextul sistemului

� Informație de context:

Actori, roluri� Actori, roluri

� Obiective

� Precondiții

� Postcondiții

� Resurse

� Locații fizice (~geolocații)

25

Page 26: C4- Metoda Cazurilor de Utilizare

Actori

� Actorii sunt persoane sau sisteme care interacționează cu sistemul.

� Un scenariu de utilizare specifică:

� Pentru fiecare pas din interacțiune, care sunt actorii implicați.implicați.

� Interacțiuni între actori.

� Interacțiuni între actori și alte persoane care nu interacționează direct cu sistemul (stakeholderi).

� Caracteristici relevante legate de actori (ex: intenţii).

26

Page 27: C4- Metoda Cazurilor de Utilizare

Obiective (perspectiva scenariilor)

� Scenariile ilustrează satisfacția/ insatisfacția

îndeplinirii obiectivului/ obiectivelor.

� Obiectivele corespunzătoare sunt asociate la:

� Un scenariu sau� Un scenariu sau

� Actorilor sau

� Pașilor (în mod individual) din scenariu.

� Exemplu:

� g1. Reciclarea articolelor (Să fac bani?).

27

Page 28: C4- Metoda Cazurilor de Utilizare

Condiții necesare

Realizarea scenariilor poate fi condiționată:� Precondiție:� Condiții care trebuie să fie îndeplinite înainte de executarea

scenariului pentru ca acesta să poată fi realizat.� Se pot reflecta în iniţializarea instanţelor, constructori de clase ...

� Postcondiție:� Postcondiție:� Condiții care trebuie să fie îndeplinite fie în cadrul

sistemului fie în contextul acestuia, după realizarea scenariului.

� Garanții de succes sunt condiții care sunt îndeplinite după rularea cu succes a scenariului.

� Garanții minime sunt condiții care sunt îndeplinite întotdeauna, indiferent dacă execuția scenariului s-a încheiat cu succes sau nu.

28

Page 29: C4- Metoda Cazurilor de Utilizare

Resurse și locații

Resursele sunt precondiții speciale care trebuiesc să fie îndeplinite pentru ca un scenariu să poată fi realizat (executat).

Exemple: informații, persoane, alte resurse temporale, financiare, materiale.Exemplu de precondiţie: cel puțin o persoană și un articol de reciclat.

Locația unui scenariu poate fi un loc fizic sau fictiv în care scenariul este realizat.

� Scenariile se pot realiza diferit (comportamentul sistemului) în locații diferite.

� Dacă este o precondiție, scenariul poate fi realizat doar în locație.

29

Page 30: C4- Metoda Cazurilor de Utilizare

Clasificare

� Pe baza cantității informațiilor deținute din context (la care fac referire), scenariile pot fi clasificate în:

� Scenarii interne, de sistem

� Scenarii de interacțiune (actor-sistem)

� Scenarii de context� Scenarii de context

Sistem

Contextulsistemului

Scenariu

30

Page 31: C4- Metoda Cazurilor de Utilizare

Cum construiesc scenariile de utilizare?

În principiu se scriu scenarii pentru fiecare fațetă de context:

� Fațeta subiect: scenariu de actualizare a informațiilor de

context (ex: self-addaptive applications).

� Fațeta utilizare: scenarii în care se specifică fluxurile de � Fațeta utilizare: scenarii în care se specifică fluxurile de

activități (evenimente) -- workflow

� Fațeta IT: scenarii care specifică proceduri de mentenanţă şi

backup (salvarea stărilor, datelor, contextului)

� Faţeta dezvoltare: scenariile specifică secvenţe de acţiuni,

interacţiuni între sistem şi inginerii care modifică sistemul (ex:

modifică implementările sau soluţiile pentru anumiţi algoritmi)

31

Page 32: C4- Metoda Cazurilor de Utilizare

Clasificarea scenariilor

Criterii de clasificare:

� Obiectiv

� Contribuţia la satisfacerea obiectivelor

� Nivel de abstractizare (abstract real)

Tipuri:Tipuri:

� Scenarii de stare curentă şi stare dorită

� Scenarii pozitive şi negative

� Scenarii de folosire greşită

� Scenarii descriptive, exploratorii şi explicative

� Scenarii interne, de interacţiune şi de context

� Scenariu principal, alternative şi excepţionale

32

Page 33: C4- Metoda Cazurilor de Utilizare

Scenarii de stare actuală - stare dorită

Sunt utilizate pentru a sprijini crearea unui model conceptual al unui

sistem deja existent într-un anumit context, sau crearea modelului

pentru sistemul ţintit (dorit):

� Scenarii de stare actuală -> sistem existent (releveu)

� Scenarii de stare dorită -> sistem ţintit

Scenarii de stare actuală:Scenarii de stare actuală:

� Folosirea actuală a sistemului

� Conţine aspecte specifice, perspective reale, constatabile deja

� Crearea modelului funcţional:

� Funcţii

� Fluxuri de date

� Modele de date, baze de date

Scenarii de stare curentă:

� Documentarea stării dorite

33

Page 34: C4- Metoda Cazurilor de Utilizare

Scenarii pozitive-negativeScenariu pozitiv:� Utilizat pentru documentarea unei secvenţe de interacţiuni

dorite

� Duce la satisfacerea unui set de scopuri asociate (intenţii ale stakeholderilor în leg. cu sistemul).

Scenariu negativ:� Utilizat pentru documentarea unei secvenţe de interacţiuni

� Care duc la eşecul în satisfacerea unui set de scopuri (intenţii ale stakeholderilor în leg. cu sistemul).

� Pot fi permise sau interzise

Obiectiv

34

Page 35: C4- Metoda Cazurilor de Utilizare

Scenarii de utilizare greşită

Scenariile de utilizare greşită (de abuz) sunt folosite pentru documentarea unui sistem împotriva scopului pentru care a fost conceput.� Un utilizator ostil utilizează sistemul împotriva intereselor

stakeholderilor (- ... mecanisme de protecţie)

� Cazul de utilizare reprezintă o ameninţare pentru sistem, stakeholderi sau alte sisteme din context.

� Utilizate doar când sistemul trebuie să trateze aspecte de securitate (cerinţe calitative – de securitate, confidenţialitate).

35

Page 36: C4- Metoda Cazurilor de Utilizare

Scenarii descriptive, exploratorii şi explicative

Scenarii descriptive:

� Descriu un proces sau workflow cu scopul de a înţelege operaţiile necesare din proces, agenţii implicaţi, evenimentele care apar, etc.

� Permit stakeholderilor să identifice sub-scopuri şi să asocieze funcţii de care nu erau conştienţi în prealabil.

� Încep prin afirmarea obiectivului.

� Utilizarea scenariilor descriptive – ilustrarea sensului obiectivelor, � Utilizarea scenariilor descriptive – ilustrarea sensului obiectivelor, detalierea algoritmilor, detalierea ideilor inovative privind mecanisme de sistem.

Scenarii exploratorii:

� Create pentru a explora şi evalua soluţii alternative posibile pentru alegerea celei mai bune - convenabile soluţii.� Explorarea beneficiilor – riscurilor pentru diferitele alternative posibile pentru

atingerea unui scop.

� Scenariile exploratorii sprijină procesul decizional în analiză.

36

Page 37: C4- Metoda Cazurilor de Utilizare

Scenarii de sistem interneScenarii interne de sistem (de tip A):� Utilizate pentru documentarea interacţiunilor interne din

sistem� Ca interacţiunile componentelor unui sistem (subsisteme)

� NU se descriu interacţiuni cu elemente din contextul sistemului.

Scenarii de interacţiune (de tip B):Scenarii de interacţiune (de tip B):� Utilizate pentru documentarea interacţiunilor între sistem şi

actorii săi (persoane, sisteme din context)

Scenarii de context (de tip C):� Utilizate pentru a documenta interacţiunile între sistem şi

actorii săi şi descrierea informaţiilor de context care sunt relevante pentru utilizarea sistemului sau sistemul în sine.� Exemplu: interacţiuni între actori şi alte persoane ca utilizatori-

beneficiari indirecţi ai sistemului (stakeholderi).

37

Page 38: C4- Metoda Cazurilor de Utilizare

Scenarii: principal, alternative şi

excepţionaleScenariul principal:

� Documentează cea mai obişnuită secvenţă de interacţiuni pentru satisfacerea unui obiectiv.

� Varianta standard, directă, scurtă de a atinge un scop.

Scenariile alternative:

Defineşte secvenţe de interacţiuni alternative pentru scenariul principal.� Defineşte secvenţe de interacţiuni alternative pentru scenariul principal.

� Scenariile alternative diferă de cel principal prin minim un pas realizat (sau ordinea de execuţie)

Scenariile excepţionale:

� Cauzate de evenimente excepţionale de-a lungul scenariului principal.

� Scenariul documentează cum trebuie să reacţioneze sistemul la un eveniment excepţional.

� Exemple: eşecuri hardware, căderea conexiunii internet, input invalid de la utilizator.

38

Page 39: C4- Metoda Cazurilor de Utilizare

Caz de utilizare – un set de scenarii

� Scenariul unui caz de utilizare este o secvenţă validă de interacţiuni care rezultă din scenariile: principal, alternative şi excepţionale definite pentru cazul de utilizare care conduc la terminarea (realizarea) cazului de utilizare.� Terminare: fie satisfacerea obiectivelor fie un abandon � Terminare: fie satisfacerea obiectivelor fie un abandon

predefinit.

Un caz de utilizare conţine:� Informaţie de context

� Scenariu principal

� Scenarii alternative

� Scenarii excepţionale

39

Page 40: C4- Metoda Cazurilor de Utilizare

Reguli pentru documentarea scenariilor

� Folosirea timpului prezent

� Folosirea diatezei active

� Folosirea structurii subiect – predicat – substantiv

� Evitarea verbelor modale (ex: ar trebui) – introduc ambiguitate în

formularea scenariilor -> formularea cerinţelor funcţionale

� Separarea clară a unei interacţiuni de alte interacţiuni

� Numerotarea fiecărui pas din interacţiune

� Este admisă doar o secvenţă de interacţiuni pe scenariu

� Descrierea scenariului – din perspectiva unei persoane din exterior

� Denumirea actorilor – identificare, control

� Afirmarea explicită a obiectivului urmărit de scenariu

� Accent pe cum este satisfăcut obiectivul prin realizarea scenariului

40

Page 41: C4- Metoda Cazurilor de Utilizare

Standardizarea cerințelor

Crearea/ adoptarea de șabloane pentru standardizarea cerințelor.

Avantaje:

- Crește utilizabilitatea rezultatelor muncii altor echipe din proiectdin proiect

- Se evită reinventarea roții

- Informațiile sunt înțelese așa cum trebuie –minimizarea riscului de interpretare

- Informațiile necesare se pot căuta țintit

- Documentele par mai familiare (nu intimiează)

- Documentele sunt citite mai ușor41