Sunteți pe pagina 1din 40

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.

Alexandra Florea

Cur s 2 - Metodologii de realizare a sistemelor informatice

Cuprins
 Concepte utilizate n realizarea sistemelor informatice
 Definirea i coninutul metodologiilor
 Clasificarea metodologiilor de realizare a sistemelor informatice
 Etapele de realizare a sistemelor informatice conform metodologiei SSADM
 Etapele de realizare a sistemelor informatice conform metodologiei MERISE
 Etapele de realizare a sistemelor informatice conform OMT
 Proces iterativ de dezvoltare a sistemelor informatice utiliznd UML
 Metodologia unificat de realizare a sistemelor informatice
 Metodologii bazate pe dezvoltarea rapid
 Metodologii bazate pe dezvoltarea agil
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Concepte utilizate n realizarea sistemelor informatice

Concept Definire

Proces/etapa Este un ansamblu de activiti intercorelate, care utilizeaz resurse n


vederea atingerii unei funcii obiectiv, bine stabilit. Procesele pot fi
primare, suport i organizatorice. n anumite metodologii se regsesc
sub denumirea de cale sau flux de lucru.
Activitate Cuprinde tipurile de aciuni ntreprinse pentru utilizarea eficient a
resurselor. Este o parte a unui proces. n unele metodologii, pentru
conceptul de aciune se folosete conceptul de faz, pas sau segment.
Faz Reprezint intervalul de timp cuprins ntre dou puncte-cheie ale unui
proces, pe durata cruia este atins un set bine definit de obiective (n
Rational Unified Process ).
Pai Reprezint o succesiune de activiti desfurate n cadrul etapei de
lucru (n metodologia SSADM).
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Concepte utilizate n realizarea sistemelor informatice

Concept Definire

Sarcinile Sunt componente ale activitilor i constituie un ansamblu de aciuni


de realizarea crora sunt responsabile persoane sau grupuri de persoane.
O sarcin este caracterizat de precondiii, elemente livrabile i
postcondiii. Modul de ordonare n timp a sarcinilor, activitilor,
etapelor sau proceselor formeaz
Ciclul de via al Este definit prin de modul de ordonare n timp a sarcinilor, activitilor,
sistemului etapelor sau proceselor. este un ablon pentru ordonarea activitilor de
informatic realizare a sistemului informatic, cuprinznd intervalul de timp care
ncepe cu decizia de elaborarea a unui sistem informatic i se ncheie cu
decizia de abandonare a acestuia i nlocuirea lui cu un nou sistem
informatic.
Ciclul de este cuprins n ciclul de via al sistemului informatic. El cuprinde
dezvoltare al intervalul de timp de la luarea deciziei de realizare a unui sistem
sistemului informatic pn n momentul intrrii sistemului n exploatare.
informatic
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Definirea i coninutul metodologiilor

O metodologie de realizare a unui sistem informatic trebuie s cuprind:


 etapele/procesele de realizare a unui sistem informatic structurate
n subetape, activiti, sarcini i coninutul lor;
 fluxul realizrii acestor etape/procese, subetape i activiti;
 modalitatea de derulare a ciclului de via a sistemului informatic;
 modul de abordare al sistemelor;
 strategiile de lucru/metodele de realizare;
 regulile de formalizare a componentelor sistemului informatic;
 tehnicile, procedurile, instrumentele, normele i standardele
utilizate;
 modalitile de conducere a proiectului (planificare, programare,
urmrire) i modul de utilizare a resurselor financiare, umane i
materiale etc.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Clasificarea metodologiilor de realizare a sistemelor


informatice
A. Clasificare dup gradul de generalitate:

 Metodologiile generale au un grad nalt de generalitate, pot fi folosite


pentru realizarea sistemelor informatice din domenii diferite. Exemple:
SSADM (Structured System Analysis and Design Methodology), MERISE
(Mthode dEtude et de Realization, Informatique pour les Systmes
dEntreprise), OMT (Object Modeling Technique), RUP (Rational Unified
Process).

 Metodologiile cadru cuprind elemente aplicabile exclusiv numai unor


produse software. Exemple de metodologii: Selection and Implementation of
Integrated Packaged Software (SIIPS) elaborat de KPMG. Ea are acceleratori
de implementare pentru ORACLE i SAP.

 Metodologii specializate sunt cele dezvoltate i utilizate pentru


implementare a unui singur produs software. Exemple: AIM (pentru Oracle E
Business Suite), POIS (pentru Sun Systems), Extract (pentru Extract),
Signature (pentru Scala), ASAP (pentru SAP).
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Clasificarea metodologiilor de realizare a sistemelor


informatice
B. Clasificare din punct de vedere al modului de abordare al
sistemelor:

 Metodologiile cu abordare structurat au ca principiu de lucru mprirea


sistemului n subsisteme pe baza funciilor sistemului (abordarea funcional)
sau n funcie de date (abordarea bazat pe date). Propun modelarea datelor
separat de modelarea procedurilor. Modelarea procedurilor se face plecnd de
la ideea c funciile sunt active, avnd un comportament, iar datele sunt
afectate de aceste funcii.

 Metodologiile cu abordare orientat obiect permit construirea sistemelor


informatice folosind conceptele tehnologiei orientate obiect. Tehnologia
orientat obiect a aprut odat cu apariia limbajelor de programare orientate
obiect. Primele limbaje orientate obiect au fost SIMULA (1960), SMALLTALK
(1970), CLOS, EIFFEL, ACTOR, C++, Object Pascal (1980).
Metodologiile cu abordare structurat
Avantajele utilizrii metodologiilor structurate:

 Utilizarea reprezentrii grafice, la ndemna att a analitilor,


ct i a beneficiarilor;
 Planificarea eficace a proiectului prin divizarea n subsisteme;
 Un mediu bine structurat este flexibil din punct de vedere al
comportamentului;
 Are obiective clare, o arie de cuprindere cunoscut;
 Posibilitatea reducerii timpului i a costului de dezvoltare a
sistemului prin luarea n considerare de la nceput a detaliilor,
prin interaciunea continu cu beneficiarul;
 Modificarea unei anumite activiti a sistemului nu conduce la
reluarea integral a studiului.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Metodologiile cu abordare structurat


Exemple de metodologii cu abordare structurat:
 Structured Analysis and Design Information Systems
(STRADIS). Este prima metodologie descris, propus de Cris
Gane i Trish Sarson.
 Yourdon Systems Method (YSM).
 Information Engineering (IE).
 Structured System Analysis and Design Methodology (SSADM).
 Mthode dEtude et de Realization, Informatique pour les
Systmes dEntreprise MERISE .
 Jackson System Development (JSD) .
 Information System Work and Analysis of Changes (ISAC).
 Effective Techical and Human Implementation of Computer-
based Systems (ETHICS) .
 Soft System Methodology (SSM) .
 Multiview .
 Process Innovation.
 Rapid Application Development (RAD) .
 Metodologia Institutului Centrului de Informatic din Romnia
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Metodologiile cu abordare orientat obiect


Avantajele utilizrii metodologiilor orientate obiect:
 Datele i prelucrrile nu mai sunt reprezentate distinct, ca n cazul
abordrii structurate, ci ncapsulat n clase de obiecte.
 Analiza realizat pentru un sistem poate fi modificat n scurt timp
pentru a fi utilizat pentru analiza sistemelor din aceeai sfer de
activitate.
 Modelele utilizate sunt flexibile i uor de ntreinut.
 Posibilitatea de a aborda domenii i tipuri de probleme din ce n ce mai
provocatoare.
 Consisten crescut ntre activitile de analiz, proiectare i
programare.
 Robusteea sistemelor.
 Reutilizarea rezultatelor analizei, proiectrii i implementrii.
 Reprezentarea explicit a elementelor comune tuturor componentelor
sistemului.
 Consisten crescut ntre toate modelele dezvoltate n timpul analizei
orientate obiect, proiectrii i programrii.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Metodologiile cu abordare orientat obiect


Exemple de motodologii cu abordare orientat obiect:
 Object Oriented Software Engineering (OOSE) conceput de Ivar Jacobson.
 Object Modeling Technique (OMT) elaborat de James Rumbaugh, Michael
Blaha i alii. Metodologia a fost iniial utilizat de General Electic and
Development Center;
 Object Oriented Design (OOD) elaborat de Grady Booch, este o metodologie
similar metodologiei OMT, dezvolt aceeai idee analiza i proiectarea
iterativ, insistnd asupra prii de proiectare ;
 Object Oriented Analysis (OOA) elaborat de Peter Coad i Edward Yourdon;
 Object Oriented Structured Design (OOSD) elaborat de Wasserman;
 Object Oriented System Analysis (OOSA) este o metodologie de proiectare a
sistemelor n timp real propus de Sally Shlaer i Steven Mellor. Autorii au
continuat s mbunteasc aceast metodologie, publicnd chiar i o lucrare
despre cum se pot utiliza notaiile UML n cadrul metodologiei Shlaer/Mellor.;
 Responsibility Driven Design (RDD), aparinnd lui Wirfs Brock, Wilkesson i
Wienner;
 Object Oriented Role Analysis, Synthesis and Structuring aparinnd lui Reens
Kaugh;
Mare parte din deosebirile dintre OOD, OAD, OOSA, OMT i OOSE au
fost nlturate n anul 1997 prin elaborarea unui standard cu privire la
simboluri, notaii, tipuri de diagrame, tipuri de modele etc., numit UML
(Unified Modeling Language).
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Clasificarea metodologiilor de realizare a sistemelor


informatice
C. Clasificare dup modelul ciclului de via:

 Modelul de parcurgere n cascad


 Modelul de parcurgere n spiral
 Modelul de parcurgere cu extensii
 Modelul de parcurgere evolutiv
 Modele de parcurgere compozite (cicluri n V i n X)
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Modelul de parcurgere n cascad


 Parcurgerea secvenial a etapelor, cu eventuale reveniri la etapa
precedent.
 Utilizat pentru sisteme informatice de mic complexitate.
 Modelul n cascad sau liniar este teoretic, deoarece n realitate,
parcurgerea etapelor este un proces iterativ, desfurndu-se adesea
n paralel mai multe activiti.
Definirea
cerinelor

Analiza

Proiectarea

Implementarea

Testarea

Utilizarea i
ntreinerea
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Modelul de parcurgere n spiral (modelul cu prototip)


 Presupune elaborarea complet, rapid i la costuri sczute a unei
versiuni iniiale, simplificate, cu caracter de prototip, pe baza creia
se stabilesc noi specificaii de definire a sistemului informatic i se
desfoar activitatea de realizare a unei noi versiuni de sistem
informatic.
 Elaborarea noii versiuni presupune parcurgerea integral sau
parial a etapelor, modificndu-se numai anumite pri din
prototip.
Prototip 4

Prototip 3

Prototip 2

Prototip 1
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Modelul de parcurgere cu extensii (incremental)


Se utilizeaz atunci cnd sistemele informatice se pot realiza i pune n
funciune parial pe subsisteme, aplicaii, module.
Realizarea lor se poate face deci n maniera extensibil,
astfel nct la nceput se analizeaz i se Specificarea
cerinelor
definesc cerinele, iar apoi subsistemele se realizeaz
i se integreaz prin extensii succesive Analiz

sau simultane.
De obicei, extensiile se ramific din Proiectare Proiectare
subsistem 1 subsistem n
etapa de proiectare a sistemului informatic.
Implementare Implementare
subsistem 1 subsistem n

Testare Testare
subsistem 1 subsistem n

ntreinere ntreinere
subsistem 1 subsistem n
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Modelul de parcurgere evolutiv


 Se utilizeaz n cazul sistemelor complexe, care se descompun n
subsisteme. Ele sunt realizate i livrate n mod iterativ i contribuie
la sporirea treptat a performanelor sistemului.
 Oricare dintre subsisteme trece prin toate fazele de dezvoltare a
sistemelor: definirea cerinelor, analiz, proiectare, implementare,
testare, intreinere, pentru ca n final acestea s fie integrate.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Modele de parcurgere compozite (ciclul n V )


 Este o variant a modelului cascad, n care se aplic teste explicite
pentru creterea controlului asupra modului n care se desfoar
etapele.
 Latura din stnga a literei V este parcurs descendent i conine
etapele de dezvoltare propriu-zise, iar cea de-a doua latur, din
dreapta, se parcurge ascendent, pe ea realizndu-se verificrile i
validrile elementelor create anterior.
Definirea Validare
cerinelor

Proiectare Testare sistem


sistem

Proiectare Testare
subsistem subsistem

Codificare/asamblare
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Etapele de realizare a sistemelor informatice conform


metodologiei SSADM

SSADM include un set de tehnici, instrumente i formulare standard pentru


descrierea sistemului existent sau a sistemului proiectat (noul sistem).
Caracteristici generale:
 Este o metodologie orientat pe structura datelor.
 Pune n eviden dou tipuri de modele: modelul logic i modelul fizic al
sistemului, deci separ proiectarea logic de proiectarea fizic.
 Se bazeaz pe specificarea clar a cerinelor i a unor reguli detaliate
pentru construirea (proiectarea) celor dou modele. Face apel la
reprezentarea fluxurilor de date i prelucrrilor cu ajutorul diagramelor.
 Conine cinci module: studiul de fezabilitate, analiza cerinelor,
specificarea cerinelor, specificarea logic a sistemului i proiectarea fizic.
Fiecare modul este divizat n etape de lucru. Fiecare etap este mprit
ntr-un numr de pai care definesc intrrile, ieirile i sarcinile ce trebuie
realizate.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Etapele de realizare a sistemelor informatice conform


metodologiei SSADM
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Metodologia MERISE
Din punctul de vedere al metodologiei MERISE, sistemele informatice au trei cicluri: ciclul
de via, ciclul de decizie, ciclul de abstractizare.
 Ciclul de via al sistemului informatic se bazeaz pe dualitatea obiect natural obiect
artificial.
 Ciclul de via al unui sistem informatic estre mprit n trei perioade: concepia sistemului
informatic concretizat n specificaiile funcionale i tehnice, realizarea siste-mului concretizat
n specificaiile de detaliu i implementarea sistemului.
 Ciclul de decizie al sistemului informatic cuprinde ansamblul de opiuni care trebuie s
existe n timpul ciclului de via i definete interfaa ntre sistemul informatic (obiectul
artificial) i sistemul informaional (obiect natural). Aici sunt definite punctele de decizie
privind scopurile sistemului informatic i punctele de decizie privind intro-ducerea
sistemului informatic ca obiect natural.
 Ciclul de abstractizare este util pentru a surprinde elementele semnificative n
descrierea sistemului, ignornd detaliile. El privete n exclusivitate sistemul informatic
ca obiect artificial, funcionarea lui fiind verificat prin simularea unor pri din el.
Presupune utilizarea a trei niveluri de abstractizare:
 Nivelul conceptual
 Nivelul organizaional pentru prelucrri i nivelul logic pentru date
 Nivelul operaional pentru prelucrri i nivelul fizic pentru date
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Etapele de realizare a sistemelor informatice


conform metodologiei MERISE
 Elaborarea schemei directoare presupune stabilirea concordanei dintre obiectivele
strategice ale organizaiei i cerinele informaionale ale conducerii. n acest sens se va
face o formalizare global a situaiei existente i se va folosi metoda scenariilor pentru
mprirea sistemului informaional n domenii.
 Studiul prealabil se realizeaz pe un subansamblu reprezentativ al domeniului ce
urmea-z a fi informatizat. Pe acest subansamblu se deruleaz ciclul de abstractizare.
Uneori aceast etap se include n elaborarea schemei directoare.
 Studiul detaliat se face plecnd de la rezultatele studiului prealabil i presupune
obinerea specificaiilor funcionale generale detaliate ale noului sistem. Aceste
specificaii sunt orientate ctre proiectanii care realizeaz efectiv sistemul.
 Studiul tehnic presupune proiectarea logic i tehnic a fiierelor/bazei de date,
descrierea arhitecturii prelucrrii datelor, proiectarea arhitecturii produsului program.
 Elaborarea programelor const n scrierea, testarea i punerea la punct a progra-melor
n funcie de specificaiile din etapa precedent.
 Introducerea sistemului presupune pregtirea lansrii n execuie i lansarea propriu-
zis a acestuia.
 Meninerea n funciune a sistemului presupune asigurarea funcionrii sistemului la
parametrii proiectai i, eventual, mici dezvoltri pe parcurs
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Etapele de realizare a sistemelor informatice conform


OMT
 Modelarea sistemului este realizat prin prisma a trei modele diferite:
 Modelul obiectelor descrie din punct de vedere static obiectele, relaiile
dintre obiecte, atributele i operaiile fiecrei clase de obiecte. Este de fapt
un model al datelor, privit prin prisma abordrii orientate obiect, artnd
CE se analizeaz.
 Modelul dinamic pune n eviden strile datelor, precum i fluxul
evenimentelor care conduc trecerea dintr-o stare n alta.
 Modelul funcional descrie modul de obinere a ieirilor informaionale
din intrri sau alte informaii intermediare.

 Etapele de realizare a sistemului informatic conform acestei


metodologii sunt: analiza, proiectarea sistemului, proiectarea
obiectelor i implementarea.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Etapele de realizare a sistemelor informatice conform


OMT
Etapa Activiti specifice
Analiza o Definirea problemei
o Iniierea realizrii modelului obiectelor
sistemului o Iniierea realizrii modelului dinamic
identificarea intrrilor i ieirilor (privite ca parametri ai
evenimentelor din sistem) i reprezentarea diagramei de flux a
datelor
descrierea proceselor elementare
identificarea constrngerilor
identificarea modalitilor de optimizare
Proiectarea o Descompunerea n subsisteme
o Identificarea subsistemelor concurente
sistemului o Stabilirea necesarului de resurse i a modului de implementare hardware
i software pentru fiecare subsistem
o Alegerea modului de organizare a datelor i a tipurilor de acces la date
o Stabilirea controlului intern i extern pe fluxul evenimentelor sau pe
fluxul prelucrrilor.
o Stabilirea condiiilor limit, care se refer la iniializri, terminarea
normal sau anormal, prioriti
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Etapele de realizare a sistemelor informatice conform


OMT
Etapa Activiti specifice
Proiectarea Rafineaz modelele obinute n faza de analiz, prin adugarea detaliilor
de implementare.
obiectelor o Identificarea operatiilor
o Proiectarea algoritmilor;
o Rafinarea, restructurarea modelului datelor;
o Implementarea asocierilor;
o Gruparea datelor i asocierilor n module.

Implementarea Se realizeaz transpunerea ntr-un limbaj de programare i transferul


sistemului.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Exemplu de proces iterativ de dezvoltare a sistemelor


informatice utiliznd UML (Unified Modeling Language)
Definirea problemei
Se identific caracteristicile principale ale unitii economice studiate i modul de funcionare a
activitii de implementat.
Structurarea soluiei
Se determin i se detaliaz cerinele beneficiarului. Include subetapele: Stabilirea actorilor;
Stabilirea cazurilor de utilizare; Stabilirea relaiilor dintre cazurile de utilizare;
Construirea diagramelor cazurilor de utilizare
Analiza sistemului
Sunt analizate specificaiile i cazurile de utilizare, identificndu-se cele mai importante concepte
cu care lucreaz sistemul, mpreun cu relaiile dintre acestea. Se construiesc: diagrama de clase,
diagrame de obiecte, de stare, de activitate, de secven, de comunicare.
Proiectarea sistemului
Conine dou subetape: proiectarea arhitecturii si proiectarea de detaliu. Implic proiectarea
arhitecturii sistemului, a bazei de date, a interfeei, eventualilor algoritmi modelai n cadrul
sistemului. Se construitesc diagramele de componete i de desfurare.
Implementarea sistemului
Implic programarea efectiv a claselor identificate, prin scrierea codului surs i realizarea
videoformatelor i a situaiilor de ieire.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Metodologia unificata de realizare a sistemelor


informatice (RUP)
 Rational Unified Process (RUP) este un proces general pentru
dezvoltarea orientat obiect de produse informatice.
 Este un ghid care arat cum se poate utiliza practic UML
(Unified Modeling Language) pentru a dezvolta un sistem
informatic.
 RUP a fost realizat de compania Rational i dezvoltat acum de
ctre IMB.
 Nucleul l reprezint metodologia propus de Jacobson, Booch i
Rumbaugh (Unified Process) care este mai mult dect un simplu
proces, este un cadru general care a permis dezvoltarea de
metodologii specializate (pe diverse tipuri de sisteme
informatice n funcie de aria de aplicare, diverse tipuri de
organizaii, niveluri de competen sau dimensiuni diferite ale
proiectelor)
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Fazele RUP

Axa orizontal: reprezint


timpul i evideniaz
aspectele dinamice ale
procesului. Pe axa
orizontal procesul se
exprim n termeni de:
cicluri, faze, iteraii i
jaloane.

Axa vertical:
reprezint aspectele
statice ale procesului i
se exprim n termeni de:
activiti, produse, Figura X.1: Fazele i fluxurile Procesului unificat de dezvoltare software
executani i fluxuri.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

1. Faza de explorare iniial


Caracteristici:
 Poate avea o ntindere nsemnat n cazul proiectelor noi.
 Are rolul de a crea o viziune de ansamblu asupra proiectului, de a determina
necesitatea proiectului i de a identifica riscurile.
 n cazul proiectelor care au ca scop mbuntirea unui sistem existent, faza de
explorare iniial este mai scurt i are rolul de a determina utilitatea proiectului.
 Documentul cheie produs n cadrul acestei etape este Viziunea. Acest document
trebuie s cuprind o descriere de nivel nalt a sistemului i a funcionalitii critice
(este un document scurt, de obicei dou, trei paragrafe).

Rezultatele fazei:
 Documentul viziune: o descriere general a principalelor cerine ale proiectu-lui,
problemele-cheie i principalele constrngeri.
 Un model iniial al cazurilor de utilizare (10%-20% complet).
 Un glosar iniial al proiectului (opional exprimat ca model al domeniului).
 Descriere iniial a procesului de afacere, care include contextul, criteriile de succes i
o previziune financiar.
 Evaluare iniial a riscului.
 Un plan al proiectului, care s precizeze fazele i iteraiile.
 Un model al afacerii, dac este necesar.
 Unul sau mai multe prototipuri.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

2. Faza de elaborare
Caracteristici:
 Are ca scop conturarea arhitecturii de baz care va constitui documentul de pornire
pentru proiectarea i implementarea din faza de construcie.
 Arhitectura este rezultatul analizei cerinelor principale (care au un efect major
asupra arhitecturii) i a riscurilor asociate.
 Stabilitatea arhitecturii este evaluat prin intermediul unuia sau mai multor
prototipuri.
 n timpul fazei de elaborare este construit o arhitectur executabil, fapt care
reduce riscurile legate de cerinele nefuncionale (performan, robustee,
scalabilitate).
Rezultatele fazei:
 Un model al cazurilor de utilizare (cel puin 80% complet) (sunt identificate toate
cazurile de utilizare i toi actorii, iar majoritatea cazurilor de utilizare sunt
dezvoltate).
 Cerine suplimentare care s surprind cerinele nefuncionale i orice alt cerin
care nu are legtur cu un caz de utilizare specific.
 O descriere a arhitecturii sistemului.
 Un prototip executabil al arhitecturii.
 List revizuit a riscurilor i o descriere revizuit a procesului de afacere.
 Un plan de dezvoltare al ntregului proiect, care s cuprind planul proiectului cu
iteraiile i criteriile de evaluare pentru fiecare iteraie.
 Un proces avansat de dezvoltare care s specifice versiunea utilizat.
 Un manual de utilizare preliminar (opional).
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

3. Faza de construcie
Caracteristici:
 Are ca scop dezvoltarea efectiv a sistemului.
 Spre deosebire de primele dou faze n care efortul era dedicat producerii de
idei, n aceast faz accentul este pus pe managementul resurselor n
scopul implementrii sistemului.
 Fiecare iteraie a fazei de construcie conine trei activiti de baz:
managementul resurselor i controlul procesului, dezvoltarea i testarea
componentelor i evaluarea la sfritul iteraiei. Principalele documente
rezultate sunt: componentele cu documentaia aferent, materialele de
instruire, planul de instalare i planul pentru faza de tranziie.

Rezultatele fazei:
 Produsul software integrat pe o platform corespunztoare;
 Manualele de utilizare;
 Descriere a versiunii actuale.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

4. Faza de tranziie
Caracteristici:
 Cuprinde testarea final, pregtirea lansrii i efectuarea de modificri
minore dictate de reaciile beneficiarilor.
 Accentul n aceast faz este pus pe configurarea i reglarea sistemului i pe
detaliile referitoare la instalare.
 Activitile principale sunt finalizarea documentaiei, testarea produsului la
client, modificri minore dictate de client i lansarea sau instalarea
produsului final.

Rezultatele fazei:
 Planul de instalare;
 Notele finale asupra sistemului ;
 Documentaia.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Metodologii bazate pe dezvoltarea rapid


RAD (Rapid Application Development)
 Se refer la o serie de principii care urmresc ajustarea etapelor de
realizare a sistemelor informatice, astfel nct o parte a sistemului s fie
dezvoltat i s ajung la utilizatori rapid.
 Astfel, utilizatorii pot nelege mai bine sistemul i pot sugera revizuiri
care aduc sistemul mai aproape de cerinele acestuia.
 Se recomand ca analitii s foloseasc tehnici speciale i instrumente
informatice pentru a accelera etapele de analiz, proiectare i
implementare, cum ar fi:
 instrumente CASE
 sesiuni comune pentru stabilirea cerinelor Join Requirement Planning (JRP)
 limbaje de programare de generaia a patra
 limbaje de programare vizuale
 generatoare de cod
 reutilizarea componentelor software
 Astzi, aproape toate mediile de dezvoltare integrate au faciliti specifice
RAD.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Metodologii bazate pe dezvoltarea rapid


RAD (Rapid Application Development)
 RAD comprim paii metodologiilor tradiionale ntr-un proces iterativ.
 Se bazeaz pe prototipizare i pe revizuiri ale utilizatorilor nainte de a
trece la parcurgerea unei noi iteraii.

Metodologii tradiionale

Planificare Analiz Proiectare Implementare Testare Utilizare

RAD
Documentarea
Proiectare
cerinelor

Sesiuni pentru Iterativ Implementare


stabilirea cerinelor

Revizuiri ale
utilizatorilor Testare
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Metodologii bazate pe dezvoltarea agil


 Aceste metodologii sunt orientate pe programare i au puine reguli i
practici.
 Toate metodologiile de dezvoltare agile sunt bazate pe manifestul agil i
pe un set de dousprezece principii:
 Este prioritar satisfacia clientului prin livrarea rapid i continu de software
calitativ.
 Schimbarea cerinelor este binevenit chiar i ntr-o faz avansat a dezvoltrii.
Procesele agile valorific schimbarea n avantajul competitiv al clientului.
 Livrarea de software funcional se face frecvent, de preferin la intervale de
timp ct mai mici, de la cteva sptmni la cteva luni.
 Oamenii de afaceri i dezvoltatorii trebuie s colaboreze zilnic pe parcursul
proiectului.
 Proiecte se construiresc n jurul oamenilor motivai. Oferindu-le mediul propice
i suportul necesar este foarte probabil c obiectivele vor fi atinse.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Metodologii bazate pe dezvoltarea agil

Principiil ale manifestulului agil- continuare:


 Cea mai eficient metod de a transmite informaii nspre i n interiorul echipei
de dezvoltare este comunicarea fa n fa.
 Software-ul funcional este principala msur a progresului.
 Procesele agile promoveaz dezvoltarea durabil. Beneficiarii, dezvoltatorii i
utilizatorii trebuie s poat menine un ritm de lucru constant pe termen lung.
 Atenia continu pentru excelen tehnic i design bun mbuntete agilitatea.
 Simplitatea-arta de a maximiza cantitatea de munc nerealizat- este esenial.
 Cele mai bune arhitecturi, cerine i design sunt create de echipe care se auto-
organizeaz.
 La intervale regulate, echipa reflect la cum s devin mai eficient, apoi i
adapteaz i ajusteaz comportamentul n consecin.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Metodologii bazate pe dezvoltarea agil


 Pe baza acestor principii, metodologiile agile se concentreaz pe optimizarea
procesului de dezvoltare a sistemelor prin eliminarea unei pri semnificative
din modelare i documentare .
 Este susinut realizarea simpl, iterativ a sistemelor. Practic toate
metodologiile agile sunt folosite n combinaie cu tehnologiile orientate-
obiect.
 Toate metodologiile bazate pe dezvoltarea agil urmeaz un ciclu de
dezvoltare simplu prin parcurgerea etapelor tradiionale ale procesului de
dezvoltare a sistemelor.
 Dou dintre cele mai populare exemple de metodologii de dezvoltare agile sunt
Extreme Programming (XP) i Scrum.
Planificare Planificare Planificare
Analiz Analiz Analiz
Proiectare Proiectare Proiectare
Implementare Implementare Implementare
Iteraia 1 Iteraia 2 Iteraia 3...

Sistem
Sistem
Sistem
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Metodologii bazate pe dezvoltarea agil

Avantaje Dezavantaje

Abordare realist n realizarea sistemelor Nu sunt potrivite pentru a gestiona


informatice. dependene complexe.
Promoveaz lucrul n echip i nvarea. Risc crescut de sustenabilitate,
mentenabilitate i extensibilitate.
Funcionalitile pot fi implementate rapid i Fr o documentaie suficient, nici sistemul
verificate. i nici procesul de dezvoltare al sistemelor nu
pot fi auditate.
Model potrivit pentru mediile care se schimb Depinde foarte mult de interaciunea cu
n mod continuu. beneficiarul.
Reguli minime, documentaie uor de realizat. Transferul de informaii ctre membrii noi ai
echipei este ngreunat de lipsa documentaiei.
Uor de gestionat. Lipsa regulilor poate duce la apariia unui
mediu de lucru haotic.
Ofer flexibilitate. Dependena de membrii echipei care cunosc
cerinele sistemului.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Extreme Programming - XP
Pune accentul pe codificare (standarde, principii) - utilizeaz un set comun de nume,
descrieri i practici de codificare.
Susine ca programatorii s lucreze cte doi (pair programming), iar programatorii
au o responsabilitate comun pentru fiecare component software elaborat.
Numeroase sesiuni de discuii pe parcursul dezvoltrii.
Feedback rapid al utilizatorilor finali n mod continuu.
Dezvoltatorii trebuie s aib o mentalitate orientat ctre calitate.
Se bazeaz foarte mult pe refactoring, care este un mod disciplinat de restructurare a
codului pentru a-l pstra simplu.
Sistemul este dezvoltat ntr-un mod evolutiv i incremental.
Fiecare iteraie (1-4 sptmni) are un rezultat funcional.
Suport redus pentru modelare.
Simplitate
Relaie strns ntre clieni i dezvoltatori.
Lipsa documentaiei de realizare. Comunicare Valori Feedback

Curaj
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

Extreme Programming - XP
Cnd se recomand:
Pentru proiectele mici cu echipe extrem de motivate, unite, stabile, i cu experien,
XP ar trebui s funcioneze foarte bine.
XP este recomandat numai pentru grupuri mici de dezvoltatori, nu mai mult de zece
persoane.
Pentru cicluri scurte de dezvoltare i atunci cnd sunt facilitate dicuiile frecvente cu
utilizatorii finali.
Cnd NU se recomand:
n cazul n care proiectul nu este mic sau echipele nu sunt unite, succesul unui efort
de dezvoltare XP este ndoielnic.
Exist dubii asupra beneficiilor introducerii unor contractori externi n cadrul unei
echipe existente, cnd se lucreaz conform XP.
XP necesit un grad ridicat de disciplin; n caz contrar proiectele vor deveni
nefocalizate i haotice.
Nu se recomand pentru aplicaii mari. Din cauza lipsei de analiz i documentaiei
de proiectare, exist doar documentaie cod asociat cu XP, deci meninerea sistemelor
de mari dimensiuni construite cu XP poate fi imposibil.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

SCRUM

Numele metodologiei este preluat din jocul de rugby, i desemneaz o


grmad ordonat folosit pentru a reporni un joc
Creatorii metodei Scrum cred c indiferent ct bine este realizat planificarea
dezvoltrii unui sistem, de ndat ce software-ul ncepe s fie dezvoltat va
izbucni haosul i planurile nu vor mai avea utilitate.

Principii de organizare
Echipele sunt auto-organizate i auto-dirijate.
Spre deosebire de alte abordri, echipele Scrum nu au un lider de echip
desemnat.
Echipele se organizeze ntr-o manier simbiotic i i stabileasc propriile
obiective pentru fiecare sprint (iteraie).
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

SCRUM

Principii de funcionare
Odat ce un sprint a nceput, echipele Scrum nu mai iau n considerare nici o
cerin suplimentar.
Orice cerine noi care sunt descoperite sunt plasate ntr-o list de cerine care
urmeaz s fie abordate.
La nceputul fiecrui zile de lucru, are loc o reuniune unde toi membrii
echipei stau ntr-un cerc i raporteaz realizrile zilei precedente, stabilesc ce
au de gnd s fac astzi i descriu tot ceea ce a blocat progresul n ziua
precedent.
Pentru a asigura un progres continuu, orice blocaj identificat este abordat n
urmtoarea or.
La sfritul fiecrui sprint, echipa prezint software-ul clientului.
Pe baza rezultatelor iteraiei ncheiate, este nceput un nou plan pentru
urmtoarea iteraie.

S-ar putea să vă placă și