+ All Categories
Home > Documents > Procesele ingineriei cerin ţelor

Procesele ingineriei cerin ţelor

Date post: 16-Mar-2016
Category:
Upload: zed
View: 71 times
Download: 1 times
Share this document with a friend
Description:
Procesele ingineriei cerin ţelor. Ob i ective. Descrierea principalelor activităţi ale ingineriei cerinţelor şi a relaţiilor între acestea I ntroduce rea tehni cilor pentru identificarea şi analiza cerinţelor Validarea cerin ţ elor şi rolul revizuirii cerinţelor - PowerPoint PPT Presentation
55
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 1 Procesele ingineriei cerinţelor
Transcript
Page 1: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 1

Procesele ingineriei cerinţelor

Page 2: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 2

Obiective

Descrierea principalelor activităţi ale ingineriei cerinţelor şi a relaţiilor între acestea

Introducerea tehnicilor pentru identificarea şi analiza cerinţelor

Validarea cerinţelor şi rolul revizuirii cerinţelor

Rolul managementului cerinţelor ca suport al altor procese ale ingineriei cerinţelor

Page 3: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 3

Subiecte tratate

Studiul de fezabilitate Identificarea şi analiza cerinţelor Validarea cerinţelor Managementul cerinţelor

Page 4: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 4

Procesul ingineriei cerinţelor

Scop: crearea şi întreţinerea unui document al cerinţelor sistem.

Variază funcţie de:• domeniul aplicaţiei• persoanele implicate• organizaţia care dezvoltă cerinţele.

Activităţi generice comune tuturor variantelor procesului:• Identificarea cerinţelor;• Analiza cerinţelor;• Validarea cerinţelor;• Managementul cerinţelor.

Page 5: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 5

Procesul ingineriei cerinţelor

Feasibilitystudy

Requirementselicitation and

analysisRequirementsspecification

Requirementsvalidation

Feasibilityreport

Systemmodels

User and systemrequirements

Requirementsdocument

Page 6: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 6

Perspectivă alternativă asupra procesului ingineriei cerinţelor

Activităţile organizate sub forma unui proces iterativ în jurul unei spirale împărţiţă în trei zone.

Timpul şi efortul alocat fiecărei activităţi într-o iteraţie depinde de:• etapa din cadrul procesului• tipul sistemului dezvoltat.

Page 7: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 7

Perspectivă alternativă asupra procesului ingineriei cerinţelor

Requirementsspecification

Requirementsvalidation

Requirementselicitation

System requirementsspecification and

modeling

Systemrequirements

elicitation

User requirementsspecification

Userrequirements

elicitation

Business requirementsspecification

Prototyping

Feasibilitystudy

Reviews

System requirementsdocument

Page 8: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 8

Perspectivă alternativă asupra procesului ingineriei cerinţelor

În etapele iniţiale: înţelegerea• cerinţelor economice generale• cerinţelor non-funcţionale• cerinţelor utilizator.

În etapele ulterioare: • ingineria cerinţelor sistem• modelarea sistemului.

Page 9: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 9

Perspectivă alternativă asupra procesului ingineriei cerinţelor

Potrivită abordărilor în care cerinţele sunt dezvoltate pe diferite nivele de detaliu.

Numărul de iteraţii în spirală poate varia => spirala poate fi părăsită după ce au fost identificate o parte sau toate cerinţele utilizator.

Dacă activitatea de prototipare este extinsă pentru a include dezvoltare iterativă => modelul permite ca cerinţele şi implementarea sistemului să fie dezvoltate în paralel.

Page 10: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 10

Studiul de fezabilitate

Studiul de fezabilitate decide dacă sistemul propus merită sau nu a fi dezvoltat.

Este un studiu scurt şi concentrat care verifică dacă:• sistemul contribuie la obiectivele

organizaţionale;• sistemul poate fi realizat utilizând tehnologiile

curente şi bugetul alocat;• sistemul poate fi integrat cu alte sisteme

utilizate.

Page 11: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 11

Implementarea studiului de fezabilitate

Intrări: • Cerinţe business preliminare;• Scurtă descriere a sistemului;• Schiţarea modului în care sistemul va sprijini

procesele economice. Rezultat:

• Raport care recomandă continuarea sau renunţarea la dezvoltarea sistemului.

Page 12: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 12

Implementarea studiului de fezabilitate

Bazat pe:• evaluarea informaţiilor despre ce se cere, • colectarea de informaţii,• scrierea unui raport.

Întrebări puse persoanelor din organizaţie:• Ce se întâmplă dacă sistemul nu ar fi implementat?• Care sunt problemele procesului curent?• Cum va ajuta sistemul propus?• Care vor fi problemele la integrarea cu alte sisteme?• Sunt necesare tehnologii noi? Ce calificări?• Ce facilităţi trebuie sprijinite de către noul sistem? Ce

facilităţi NU e necesar a fi sprijinite de către noul sistem?

Page 13: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 13

Identificarea şi analiza cerinţelor

Numită şi extragerea sau descoperirea cerinţelor.Implică activităţi în comun ale personalului tehnic cu clienţii pentru a înţelege:

• domeniul aplicaţiei;• serviciile pe care sistemul trebuie să le ofere;• constângerile operaţionale ale sistemului.

Stakeholder-ii (părţile interesate, partenerii)= persoanele şi asociaţiile implicate.

Exemple:• Utilizatori finali• Manageri• Ingineri implicaţi în întreţinere• Experţi ai domeniului• Sindicate, etc.

Page 14: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 14

Analiza cerinţelor: problematică

Părţile interesate nu ştiu exact ce vor. Părţile interesate exprimă cerinţele în termenii lor

propri. Diferite părţi interesate pot avea cerinţe contradictorii

(conflictuale). Factorii organizaţionali şi politici pot influenţa

cerinţele sistemului. Modificarea cerinţelor în timpul procesului de

analiză: • Pot să apară noi părţi interesate. • Se poate schimba contextul economic.

Page 15: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 15

Spirala cerinţelor

Requirementsclassification and

organisation

Requirementsprioritization and

negotiation

Requirementsdocumentation

Requirementsdiscovery

Page 16: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 16

Activităţile procesului Descoperirea cerinţelor

• Interacţiune cu părţile interesate pentru a descoperi cerinţele acestora. În acest stadiu sunt descoperite cerinţele de domeniu..

Clasificarea şi organizarea cerinţelor• Gruparea cerinţelor aflate în relaţie şi organizarea lor în

cluster-e coerente. Metodă: Identificare cerinţe comune. Utilizarea unui model arhitectural al sistemului pentru a

identifica subsistemele şi a asocia cerinţe fiecărui subsistem.. Prioritizare şi negociere• Prioritizarea cerinţelor şi rezolvarea conflictelor între acestea.

Documentarea cerinţelor• Cerinţele sunt documentate şi constituie intrare în

următoarea buclă a spiralei.

Page 17: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 17

Descoperirea cerinţelor

Def. Procesul de culegere de informaţii despre sistemele propuse şi cele existente şi distilarea cerinţelor utilizator şi sistem din aceste informaţii.

Surse de informaţii:• Documentaţii;• Părţile interesate în sistem (stakeholders);• Specificaţii ale unor sisteme similare.

Page 18: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 18

Exemplu: Părţile interesate pentru sistemul ATM

Clienţii băncii Representanţi ai altor bănci Managerii băncii Personalul contabil Administratorii bazei de date Managerii pentru securitate Departmentul de vânzări (marketing) Inginerii de la întreţinere hardware şi software Reglementatorii bancari

Page 19: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 19

Puncte de vedere

Def. Punctele de vedere sunt un mod de a structura cerinţele astfel încât să reprezinte perspectivele diferitelor părţi interesate. Părţile interesate pot fi clasificate ca diferite puncte de vedere.

Obs. Fiecare punct de vedere oferă o nouă perspectivă asupra sistemului; aceste perspective nu sunt complet independente – de obicei se suprapun propunând astfel cerinţe comune.

Această analiză multi-perspectivă este importantă deoarece nu există un mod unic corect de a analiza cerinţele sistemului.

Page 20: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 20

Tipuri de puncte de vedere Puncte de vedere interactorPersoane sau alte sisteme care interacţionează direct cu sistemul.

Exemplu: într-un sistem ATM, punctul de vedere ale clientului, punctul de vedere al bazei de date.

Puncte de vedere indirectePărţile interesate care nu utilizează sistemul direct dar care influenţează cerinţele.

Exemplu: într-un sistem ATM, punctul de vedere al managementului, punctul de vedere al personalului (staff).

Puncte de vedere de domeniuCaracteristicile şi constrângerile de domeniului care influenţează cerinţele.

Exemplu: într-un sistem ATM, standarde pentru comunicare inter-bancară.

Page 21: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 21

Identificarea punctelor de vedere

Identificarea utilizează:• Furnizorii şi beneficiarii serviciilor sistem;• Sistemele care interacţionează direct cu

sistemul specificat;• Regulamente şi standarde;• Suresle cerinţelor economice şi non-funcţionale;• Inginerii care trebuie să dezvolte şi să întreţină

sistemul;• Marketing şi alte puncte de vedere economice.

Page 22: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 22

Exemplu: Ierarhia punctelor de vedere la sistemul LIBSYS

ArticleprovidersFinanceLibrary

managerLibrarystaffUsers

InteractorIndirect

All VPs

Classificationsystem

UIstandards

Domain

ExternalStaffStudents CataloguersSystemmanagers

Page 23: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 23

Intervievare

În intervievare formală sau informală, echipa pentru ingineria cerinţelor (RE team) pune întrebări părţilor interesate referitoare la sistemul pe care îl utilizează şi la cel care trebuie dezvoltat.

Există două tipuri de interviu:• Interviu închis: se caută răspunsuri la un set de întrebări

predefinite.• Interviu deschis: nu există o agendă predefinită şi este

explorat un domeniu (range) al problematicii împreună cu părţile interesate.

Page 24: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 24

Interviuri în practică

Normal, o combinaţie de interviu închis şi deschis. Interviurile sunt utile pentru a înţelege în general

ceea ce fac părţile interesate şi a modul în care ar putea interacţiona cu sistemul.

Interviurile nu sunt bune pentru a înţelege cerinţele sistem• Inginerii de cerinţe nu pot înţelege terminologia specifică

a domeniului;• Anumite cunoştinţe din domeniu sunt atât de familiare

încât sunt persoanele din domeniul respectiv le exprimă cu dificultate în cuvinte sau consideră că nu trebuie exprimate explicit.

Page 25: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 25

Intervieviatori eficienţi

Intervieviatorii trebuie să fie cu mintea deschisă, să dorească să asculte părţile interesate şi să nu aibă idei preconcepute despre cerinţe.

Trebuie să formuleze întrebări sau propuneri concrete şi să nu se aştepte pur şi simplu să li se răspundă la întrebarea ‘ce doriţi’.

Page 26: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 26

Scenarii

Def. Scenariile sunt exemple din viaţa reală referitoare la modul în care sistemul poate fi utilizat.

Trebuie să includă• O descriere a situaţiei iniţiale;• O descriere a fluxului normal de evenimente;• O descriere a ceea ce poate funcţiona greşit;• Informaţii despre alte activităţi concurente;• O descriere a stării la finalizarea scenariului.

Page 27: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 27

Exemplu: scenariu în cadrul sistemului LIBSYS (1)

Premiza iniţială: Utilizatorul s-a conectat (logat) la sistemul LIBSYS şi a localizat revista care conţine copia articolului.

Normal: Utilizatorul selectează articolul de copiat. Sistemul îi solicită acestuia fie să furnizeze informaţia de subscriber pentru revistă fie să indice cum va plăti articolul. Metodele alternative de plată sunt prin carte de credit sau prin cont bancar.

Utilizatorul este apoi solicitat să completeze formularul de copyright cu detaliile tranzacţiei şi să îl submită sistemului LIBSYS.

Formularul de copyright este verificat şi, dacă e OK, versiunea PDF a articolului este descărcată în zona de lucru a sistemului LIBSYS de pe calculatorul utilizatorului, iar utilizatorul este informat că acesta este disponibil. Utilizatorului i se cere să selecteze o imprimantă, după care pe aceasta este imprimată o copie a articolului. Dacă articolul a fost marcat cu ‘print-only’ atunci el este şters de pe sistemul utilizatorului imediat ce utilizatorul a confirmat că imprimarea s-a încheiat.

Page 28: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 28

Exemplu: scenariu în cadrul sistemului LIBSYS (2)

Ce poate funcţiona incorect: Utilizatorul poate greşi la completarea formularului de copyright. În acest caz formularul trebuie re-prezentat utilizatorului pentru corectare. Dacă formularul retransmis este tot incorect atunci este respinsă cererea utilizatorului pentru articol. Plata ar putea fi respinsă de către sistem. Cererea utilizatorului pentru articol este, de asemenea, respinsă.

Descărcarea articolului poate să eşueze. Se re-încearcă până se reuşeşte sau până utilizatorul închide sesiunea. Ar putea să nu fie posibilă imprimarea articolului. Dacă articolul nu este marcat ca ‘print-only’ atunci este păstrat în spaţiul de lucru al sistemului LIBSYS. Altfel, articolul este şters iar contul utilizatorului este creditat cu costul articolului. Alte activităţi: Descărcări simultane ale altor articole. Starea sistemului la finalizare: Utilizatorul este conectat. Articolul descărcat a fost şters din spaţiul de lucru al sistemului LIBSYS dacă a fost marcat ca ‘print-only’.

Page 29: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 29

Cazuri de utilizare

Cazurile de utilizare sunt tehnici UML bazate pe scenariu care identifică actorii implicaţi într-o iteracţiune şi care descriu interacţiunea însăşi.

Un set de cazuri de utilizare ar potea descrie toate interacţiunile posibile cu sistemul.

Pentru a adăuga detalii la cazurile de utilizare pot fi folosite diagrame de secvenţe care să arate secvenţa de procesare a evenimentului în sistem.

Page 30: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 30

Cazul de utilizare: imprimare articol

Article printing

Page 31: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 31

Cazurile de utilizare ale sistemului LIBSYS

Article printing

Article search

User administration

Supplier Catalogue services

LibraryUser

LibraryStaff

Page 32: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 32

Secvenţa de imprimare articol

User

item:Article

copyrightForm:Form

request

complete

myWorkspace:Workspace

myPrinter:Printer

request

return

copyright OK

deliver

article OK

print send

confirminform

delete

Page 33: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 33

Factori sociali şi organizaţionali

Sistemele software sunt utilizate într-un context social şi organizaţional. Aceasta poate influenţa sau chiar domina cerinţele sistem.

Factorii sociali şi organizaţionali nu constituie un punct de vedere ci influenţează toate punctele de vedere.

Analiştii buni trebuie să fie sensibili la aceşti factori, fără a exista însă un mod sistematic de a aborda analiza lor.

Page 34: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 34

Etnografie

Sociologii petrec un timp considerabil observând şi analizând modul în care oamenii lucrează.

Oamenii nu trebuie să explice sau să formuleze în cuvinte modul în care lucrează.

Se pot observa factori sociali şi organizaţionali importanţi.

Studii etnografice arată că modul de lucru este de obicei mai bogat şi mai complex decât este sugerat prin simple modele ale sistemului.

Page 35: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 35

Etnografie focalizată

Dezvoltată într-un proiect care studiază procesul de control al traficului aerian.

Combină etnografia cu prototiparea. Ca rezultat la dezvoltarea prototipului apar

întrebări fără răspuns care focalizează analiza etnografică.

Problema cu etnografia este ca aceasta studiază practicile existente, care pot avea unele baze istorice ce nu mai sunt relevante.

Page 36: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 36

Etnografie şi prototipare

Ethnographicanalysis

Debriefingmeetings

Focusedethnography

Prototypeevaluation

Generic systemdevelopment

Systemprotoyping

Page 37: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 37

Domeniul de aplicare a etnografiei

Cerinţele care sunt derivate din modul în care oamenii lucrează în realitate şi nu din modul în care definiţiile procesului sugerează că ar trebui să lucreze.

Cerinţele care sunt derivate din cooperarea cu şi conştientizarea activităţilor altor persoane.

Page 38: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 38

Validarea cerinţelor

Se ocupă cu demonstrarea faptului că cerinţele definesc sistemul pe care clientul îl doreşte cu adevărat.

Costurile erorilor la nivelul cerinţelor este ridicat, deci validarea este foarte importantă• Eliminarea unei erori la nivelul cerinţelor după livrare ar

putea ajunge până la 100 de ori costul eliminării unei erori de implementare.

Obs. Validarea se suprapune cu analiza în sensul descoperirii unor probleme legate de cerinţe.

Page 39: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 39

Verificarea cerinţelor

Validitate. Furnizează sistemul acele funcţii care oferă cel mai bun suport necesităţilor clientului?

Consistenţă. Există conflicte între cerinţe? Completitudine. Sunt incluse toate funcţiile

solicitate de client? Realism. Cerinţele pot fi implementate cu

bugetul şi tehnologiile disponibile ? Verificabilitate. Cerinţele pot fi verificate?

Page 40: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 40

Tehnici pentru validarea cerinţelor Revizuiri ale cerinţelor

• Analiză manuală sistematică a cerinţelor. Prototipare

• Utilizarea unui model executabil al sistemului pentru a cerifica cerinţele.

Generare de cazuri de testare• Dezvoltarea de teste ale cerinţelor pentru a

verifica testabilitatea.

Obs. Aceste tehnici pot fi utilizate în mod conjugat sau individual.

Page 41: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 41

Revizuiri ale cerinţelor

Pe perioada formulării definiţiilor cerinţelor sunt necesare revizuiri regulate ale acestora.

În revizuiri trebuie implicat atât personalul de la client cât şi cel de la contractor.

Revizuirile pot fi formale (cu documete complete) sau informale. O comunicare bună între dezvoltatori, clienţi şi utilizatori poate rezolva probleme încă din stadii incipiente.

Page 42: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 42

Verificări la revizuire

Verificabilitate. Este cerinţa testabilă în mod real?

Înţelegere. Este cerinţa înţeleasă corespunzător?

Posibilitate de urmărire. Este specificată clar originea cerinţei?

Adaptabilitate. Poate fi cerinţa modificată fără a genera un impact considerabil asupra altor cerinţe?

Page 43: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 43

Managementul cerinţelor

Def. Managementul cerinţelor este procesul de gestionare a cerinţelor în schimbare în timpul procesului de inginerie a cerinţelor şi a dezvoltării sistemului.

Cerinţele sunt în mod inevitabil incomplete şi inconsistente• Cerinţe noi apar în timpul procesului pe măsură ce

necesităţile economice (business) se modifică şi se dezvoltă o mai bună înţelegere a sistemului;

• Punte de vedere diferite pot avea cerinţe diferite iar acestea sunt deseori contradictorii.

Page 44: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 44

Modificarea cerinţelor

Prioritatea cerinţelor diferitelor puncte de vedere se modifică în timpul procesului de dezvoltare.

Clienţii sistemului pot specifica cerinţe dintr-o perspectivă economică, care pot fi în conflict cu cerinţele utilizatorilor finali.

Contextul economic şi tehnic se schimbă în timpul dezvoltării sistemului.

Page 45: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 45

Evoluţia cerinţelor

Time

Changedunderstanding

of problem

Initialunderstanding

of problem

Changedrequirements

Initialrequirements

Page 46: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 46

Cerinţe durabile şi volatile Cerinţe durabile. Cerinţe stabile derivate din

activitatea de bază a organizaţiei clientului. Exemplu: un spital va avea întotdeauna doctori, asistente, etc.

Pot fi derivate din modelele domeniului. Cerinţe volatile. Cerinţe care se schimbă în

timpul dezvoltării sau utilizării sistemului. Exemplu: Într-un spital, cerinţele derivate din politica de asigurare a sănătăţii.

Page 47: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 47

Clasificarea cerinţelor

Tip cerinţă Descriere

Cerinţe mutabile Cerinţe care se modifică datorită schimbărilor apărute în contextul în care operează organizaţia. De exemplu, în sisteme destinate spitalelor, finanţarea pacienţilor se poate modifica iar acest lucru necesită colectarea de informaţii pentru tratamente diferite.

Cerinţe emergente

Cerinţe care apar pe măsură ce, odată cu dezvoltarea sistemului, se dezvoltă înţelegerea acestuia de către client. Procesul de proiectare poate revela noi cerinţe emergente.

Cerinţe consecinţe

Cerinţe care apar ca urmare a introducerii sistemului de calcul. Introducerea sistemului de calcul poate schimba procesele organizaţiei şi poate deschide noi căi de a lucra, generând noi cerinţe pentru sistem.

Cerinţe de compatibilitate

Cerinţe care depind de sistemele sau de procesele economice particulare unei organizaţii. Pe măsură ce acestea se schimbă, cerinţele de compatibilitate impuse sistemului contractat sau livrat ar putea, de asemenea, să se dezvolte.

Page 48: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 48

Planificarea managementului cerinţelor

În timpul procesului de inginerie a cerinţelor trebuie planificate:• Identificarea cerinţelor

• Cum se identifică cerinţele in mod individual;• Un proces de management al schimbărilor

• Procesul de urmat la analiza unei schimbări la cerinţe;• Politicile de urmărire

• Cantitatea de informaţii referitoare la relaţiile între cerinţe păstrată;

• Instrumentul CASE suport• Instrumentul suport necesar pentru a gestiona schimbarea

cerinţelor;

Page 49: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 49

Posibilitatea de urmărire

Posibilitatea de urmărire este legată de relaţiile dintre cerinţe, de sursele lor şi de proiectarea sistemului

Posibilitatea de urmărire a sursei• Legături de la cerinţe la părţile interesate care le-au

propus; Posibilitatea de urmărire a cerinţelor

• Legături între cerinţe dependente; Posibilitatea de urmărire a proiectării

• Legături de la cerinţe la artefactele proiectării;

Page 50: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 50

O matrice a posibilităţii de urmărire

Page 51: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 51

Instrument CASE suport

Memorarea cerinţelor• Cerinţele trebuie gestionate într-un depozit de date sigur

şi manevrabil. Managementul schimbărilor

• Procesul de management al schimbărilor este un proces de tip flux de activităţi pentru care se pot definii mai multe stadii, iar fluxul de informaţii între aceste stadii poate fi parţial automatizat.

Managementul posibilităţii de urmărire• Extragerea automată a legăturilor dintre cerinţe.

Page 52: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 52

Managementul schimbării cerinţelor

Trebuie aplicat tuturor schimbărilor propuse pentru cerinţe.

Stadii principale• Analiza problemei. Discutarea problemei apărută la

cerinţe, verificarea validităţii ei şi propunerea de schimbări;

• Analiza schimbării şi costurilor ei. Evaluarea efectelor schimbării asupra altor cerinţe;

• Implementarea schimbării. Modificarea documentului cerinţelor şi a altor documente pentru a reflecta schimbarea. Recomandare: minimizarea referinţelor externe şi modularizarea secţiunilor documentului.

Page 53: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 53

Managementul schimbării

Changeimplementation

Change analysisand costing

Problem analysis andchange specification

Identifiedproblem

Revisedrequirements

Page 54: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 54

Puncte cheie

Procesul ingineriei cerinţelor include un studiu de fezabilitate, identificarea şi analiza cerinţelor, specificarea cerinţelor şi managementul cerinţelor.

Identificarea şi analiza cerinţelor este un proces iterativ care implică înţelegerea domeniului, colectarea cerinţelor, clasificarea, structurarea, alocarea de priorităţi şi validarea lor.

Sistemele au mai multe părţi interesate (stakeholders), care au cerinţe diferite.

Page 55: Procesele ingineriei cerin ţelor

©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 7 Slide 55

Puncte cheie

Factorii sociali şi organizaţionali influenţează cerinţele sistemului.

Validarea cerinţelor se ocupă de verificări pentru validitate, consistenţă, completitudine, realism şi verificabilitate.

Schimbările procesului economic conduc inevitabil la modificări ale cerinţelor.

Managementul cerinţelor include planificarea şi managementul schimbărilor.


Recommended