Sunteți pe pagina 1din 7

Tema 8. Modele ale ciclului de via al sistemului informatic.

1. Noiuni generale.
n ultima perioad de timp, datorit apariiei unei noi concepii n abordarea sistemelor informatice: orientarea-obiect, s-au nregistrat cteva fenomene ngrijortoare. Dou dintre ele fiind cele mai semnificative: 1. Neglijarea sau sfidarea multor realizri anterioare pe plan procedural i/sau tiinific; 2. Supralicitarea (supraoferta) tuturor teoriilor lansate n anii 90 , n jurul noului concept. Din acest motiv, n continuare, va fi analizat esena activitii de analiz i proiectare a SI, adic a Ciclului de via al dezvoltrii sistemelor informatice (CVDSI) sau Ciclul dezvoltrii (CDSI). Motivaia acestei analize este datorat i unor preri total eronate privind conceptul menionat anterior. De exemplu, CVDSI este confundat, de unii specialiti, cu metodele de abordare a SI (acest aspect a fost abordat n tema precedent), considerndu-l ca o treapt incipient (iniial) n aciunea de abordare a activitilor specifice SI. Ali specialiti (care sfideaz toate lucrurile din trecutul tiinelor), apreciaz, c este chiar o blasfemie (batjocor, defimare) adus obiectelor, dac sunt asociate cu nvechitul concept de CVDSI. Prin urmare, se impune efortul de lmurire a lucrurilor (nu de altceva, dar parafraznd o cunoscut zical, am putea spune c cine nu cunoate istoria, risc s o ...denigreze). Din start, trebuie menionat c, indiferent de etapa istoric sau metodologic, SI sunt abordate prin prisma ciclului de via. Ele apar, se dezvolt, descresc i pier sau, printr-un nou ciclu, se perfecioneaz, dnd natere unei alte versiuni sau chiar unui nou SI. Prin urmare, nu prezena CVDSI trebuie discutat, ci formele de regsire a acestuia n timp, n funcie de cadrul n care se realizeaz sistemul. Mutaiile din domeniul TI i al metodelor de abordare a SI s-au reflectat i n CVDSI, fie prin schimbarea etapelor acestuia, fie prim modificare succesiunii de parcurgere a lor. n continuare, se va face o referin, doar la cteva dintre modelele concrete n care se poate regsi CVDSI, nu nainte de a face urmtoarele precizri: CVDSI este o metodologie comun de dezvoltare a sistemelor din unitile social-economice (USE), caracterizat prin cteva etape (faze) care marcheaz evoluia eforturilor de analiz i proiectare a SI; Etapele (fazele) ciclului de via sunt greu de prezentat, nu numai ca denumire, ci i ca numr, ultimul variind de la 3 (de exemplu, analiz, proiectare, implementare), la peste 20. n acelai context, de menionat c, indiferent de numrul i denumirea etapelor, CVDSI rmne o problem destul de important n special, succesiunea i felul n care se parcurg etapele respective, ceea ce n literatura de specialitate se trateaz sub numele de modele ale CVDSI, ca de exemplu: Cascad, V, X, Incremental, Spiral, Evolutiv, Tridimensional, Minge de baseball (sau de oin), Fntn artezian, Piramid, Pinball (bila magic), etc. De remarcat c, multe dintre aceste modele sunt asociate ciclului de via al obiectelor, sau ciclului de via al dezvoltrii obiectelor, ceea ce este cu totul altceva, dei din experiena multor specialiti, ele s-ar putea aplica i unor sisteme. 2. Modelul Cascada. Modelul Cascada const ntr-o divizare a ciclului de via n faze secveniale. La rndul lor, fazele sunt structurate pe activiti i subactiviti. Trecerea de la o etap la alta se realizeaz dup ce precedenta este parcurs n ntregime. Modelul se aplic la nivel de sistem i poate fi reprezentat ca n Figura 1. Printre avantajele modelului pot fi enumerate: Un control total asupra etapelor (fazelor), n sensul c ele sunt ordonate i, deci sunt previzibile, prin evidenierea clar a ariei de cuprindere a fiecrei etape sau subetape; Este uor de nsuit de ctre membrii echipelor de analiz i proiectare, inclusiv de cei noi, cu o experien mai mic; Fiecare etap este nsoit de o documentaie perfect structurat (controlat). Dezavantajele modelului : Sistemul se pred doar dup parcurgerea etapelor anterioare, ceea ce nseamn o lung perioad de timp, suficient ca beneficiarul s-i schimbe preteniile; Nu reprezint o abordare dinamic a sistemelor; Nu este deschis schimbrilor ce pot interveni pe parcurs. De asemenea, trebuie menionat c, modelul este folosit i n proiectarea orientat-obiect. Ideea de baz a modelului este regsit i n alte modele, cum ar fi: n V, n X, fntn artezian sau cel incremental.

Definirea cerinelor

Analiza

Proiectarea

Implementarea

Testarea

Utilizarea i ntreinerea

Figura 1. Modelul cascad


3. Modelul V Aa cum s-a menionat anterior, modelul V reprezint o variant a modelului Cascad, prin care se introduc conceptele de sistem i componente (subsisteme), aplicndu-se teste explicite la un sistem ierarhic pentru sporirea controlului asupra modului n care se desfoar etapele. Anume aceast nlesnire constituie o latur a literei V. Prima este latura din stnga, parcurs descendent i conine etapele propriu-zise, iar cea dea doua latur, din dreapta, se parcurge ascendent, pe ea realizndu-se verificrile i validrile elementelor create anterior. Modelul poate fi reprezentat ca in Figura 2. Modelul scoate n eviden cu mai mult claritate separrile dintre ceea ce implic participarea utilizatorului, modelul arhitectural i pe cel al implementrii. Astfel, utilizatorul este implicat doar n fazele din partea superioar a V-ului. Arhitectura sistemului este surprins n partea din mijloc a literei. Faza de implementare se refer la partea inferioar a literei i poate reprezenta fie asamblarea componentelor soft, fie codificarea unor componente. Modelul se potrivete i n mediul orientat-obiect, deoarece stimuleaz prototipizarea i reutilizarea unor structuri superioare. Prin structurile ierarhice i modulare pe care le promoveaz, el ofer un control puternic asupra sistemului n curs de realizare. Aceasta l face utilizabil i n sistemele complexe. Modelul presupune abordarea i dezvoltarea pe componente a sistemului adic abordarea pe pri i integrarea lejer a lor. El devine i mai puternic dac promoveaz iteraia, adic reluarea unor faze, activiti sau subactiviti. De asemenea modelul face distincie evident ntre verificare i validare. Prima se refer la testarea sistemului, n diverse stadii ale lui, dac s-a construit corect din punct de vedere logic, n timp ce validarea va scoate n eviden faptul c sistemul, n forma lui final, rspunde sau nu cerinelor iniiale. Anume acest aspect este considerat un dezavantaj al modelului pentru c validarea se realizeaz prea trziu. Filosofia modelului V este regsit i n alte modele, inclusiv n modelul X.

Definirea cerinelor

Validare

Proiectare sistem Proiectare Subsistem (component)

Testare sistem

Testare Subsistem (component)

Codificare / asamblare componente Figura 2. Modelul V

4.

Modelul incremental

Modelul incremental este o alt form a modelului cascad. De altfel, n modul de descriere a etapelor primare nici nu exist diferen fa de modelul cascad, deoarece att definea cerinelor, ct i analiza se efectueaz la nivelul ntregului sistem. Dup acestea se efectueaz divizarea proiectului n subproiecte, ele fiind urmrite pe activiti care vor concura la obinerea componentelor necesare sistemului final. Aceasta este, de fapt, filosofia de baz a modelului. Fa de modelul V, modelul incremental ofer posibilitatea atingerii scopului final n 2 variante: 1. Sistem global livrat la sfrit; 2. Componente livrate distinct. Modelul incremental poate fi reprezentat ca n Figura 3.

Avantajele modelului incremental: Se ncadreaz n principiul arhicunoscut mparte i vei stpni, prin posibilitatea abordrii unor pri ale ntregului; Sistemul poate fi livrat i pe componente realizate la perioade scurte de timp; Proiectul sau sistemul final poate fi realizat de mai multe echipe sau persoane datorit modularizrii lui. Printre dezavantajele modelului pot fi enumerate: Imposibilitatea aplicrii lui n toate cazurile, uneori neexistnd elementele necesare divizrii ntregului; Componentele pot fi realizate numai dup ce ntregului sistem i se definete arhitectura, totul derulndu-se dup strategia descendent, ceea ce nseamn nc o condiie dur: cunoaterea i formularea cerinelor din etapa primar de abordare a sistemului; Fiind posibil de realizat pe pri, eforturile de integrare a acestora n ntreg sunt destul de mari, vorbindu-se chiar de o aa-zis testare multipl de sisteme, cu trimitere la faptul c, de fiecare dat cnd se adaug o nou component, sistemul poate fi considerat ca unul nou.

Definirea cerinelor

Proiectare component-1

Instalare component-1

Analiz

Implementare component-1

ntreinere component-1

Arhitectura sistemului

...
Proiectare component-n

...
Instalare component-n

Implementare component-n

ntreinere component-n

Figura 3. Modelul incremental


5. Modelul spiral. Apariia acestui model este cauzat de 2 factori: 1. Natura iterativ a dezvoltrii i nevoia de planificare i evaluare a riscurilor fiecrei iteraii; 2. Deficiena nregistrat la modelul V, n care validarea se efectueaz prea trziu. Anume aceasta face ca modelul s propun realizarea validrii ct mai devreme posibil, de ct mai multe ori, prin construirea prototipurilor, conform modelului simplificat din figura 4. Dei modelul este descris ca o spiral, el este de fapt o reprezentare liniar n care unele activiti pot fi reluate. Conform acestui model, echipa de dezvoltare i utilizatorii se angajeaz treptat n proiect, diminund riscurile la nivel de prototip. De asemenea, un element pozitiv este valorificarea experienei anterioare n planificarea activitilor din prototipul urmtor. De remarcat c n fiecare iteraie se regsete modelul cascad. Adic dup cunoaterea cerinelor i efectuarea studiilor de fezabilitate, se realizeaz sistemul, se integreaz i se instaleaz printr-o singur livrare, n varianta modelului cascad. Printre avantajele modelului pot fi menionate: Posibilitatea evalurii riscurilor n diferite momente; Simplificarea operaiunilor de evaluare a ceea ce este necesar n etapa (prototipul) urmtoare, inclusiv prin prisma costurilor. Elementele ce condiioneaz folosirea modelului spiral sunt: Profesionalismul echipei de dezvoltare; Flexibilitate n aciune, inclusiv n alocarea de fonduri precum i n definirea activitilor de ntreprins.

Prototip-1 Prototip-2 Prototip-3 Prototip-4

Figura 4. Modelul Spiral


6.Modelul evolutiv Prin esen, modelul evolutiv const n efectuarea unei investigaii iniiale, elaborarea unei strategii pentru divizarea proiectului n pri/segmente, fiecare cu o valoare deosebit pentru client. Ele sunt realizate i livrate n mod iterativ i contribuie la sporirea treptat a performanelor sistemului. Formele obinute pentru prile componente nu sunt foarte puternic detaliate, lsndu-se loc pentru adaptri i modificri ulterioare. Oricare dintre segmentele/prile luate n studiu trece prin toate etapele (fazele) de dezvoltare a sistemelor: definirea cerinelor, analiz, proiectare, implementare, testare, utilizare. Clientul intr n posesia unei forme aproape finisate (cvasi-finite) la terminarea fiecrui segment. Soluia ntregului sistem nseamn, de fapt, segmentarea ei conform modelului evolutiv, care este identic modului n care orientarea-obiect ncapsuleaz atributele i funcionalitatea n obiecte bine definite. Schema general a modelului evolutiv poate fi reprezentat ca in Figura 5. Modelul evolutiv are un puternic impact n mediul utilizatorilor deoarece este orientat ctre acetia. de asemenea, procesul de dezvoltare a sistemelor se efectueaz sub un control permanent, inclusiv din partea clienilor. Principalul avantaj al acestui model const n crearea unei arhitecturi deschise, flexibile, elaborat prin participarea tuturor prilor interesate, inclusiv a utilizatorilor, dar i a unor specialiti profesioniti. Modelul este absolut diferit de modelele tradiionale i de aceea de multe ori este ntmpinat cu ostilitate.

Studiul iniial Divizarea n segmente

Integrare segmente

Component (Segment) 1
Definire cerine Analiz Proiectare Implementare Testare Utilizare

...

Component (Segment) n
Definire cerine Analiz Proiectare Implementare Testare Utilizare

Figura 5. Modelul evolutiv

7.

Modelul tridimensional

Modelul tridimensional surprinde dezvoltarea sistemelor printr-o redare grafic bazat pe trei axe. Astfel, este descris ciclul de via al sistemului, ciclul de via al proiectului i ciclul de via al abstractizrii. Modelul poate fi reprezentat ca n Figura 6. Aa dup cum rezult din schem, ciclul de via al sistemului informatic surprinde timpul vieii sistemului i perioadele principale dup care se efectueaz schimbri majore cum ar fi: Creteri ale sarcinii de prelucrare (ca volum al datelor sau al tranzaciilor nregistrate); Schimbri tehnologice (hard i/sau soft); Schimbri structurale (de la sisteme centralizate la arhitecturi distribuite). Toate acestea determin aciunile de ntreprins n timpul realizrii sau ntreinerii sistemului. Ciclul abstractizrii trateaz nivelurile succesive ale specificaiilor, pornind de la cea mai pur form conceptual, independent de tehnologie, pn la una care depinde vizibil de mediul tehnologic, adic nivelul fizic. Ciclul de via al proiectului (denumit i ciclul deciziei) este echivalent cu modelul cascad. El definete secvena fazelor prin care trece proiectul pentru a fi realizat. n concluzie, proiectarea unui sistem conform acestui model nseamn orientarea continu i simultan pe cele trei axe. Originalitatea modelului const n axele ciclului de via al sistemului i ciclului abstractizrii. Primul permite o planificare a evoluiei sistemului i a schimbrilor de efectuat, n timp ce al doilea ciclu permite oferirea soluiei conceptuale pentru problema dat, independent de tehnica implementat. Aceasta ofer posibilitatea extinderii sistemului n viitor. 8. Modelul X

Modelul X reprezint o extindere a performanelor obinute prin modelele cascad i V, ambele fiind considerate ca exemple de modele ale procesului de dezvoltare, care la rndul lui ar fi parte integrant a unui proces mai larg al livrrii sistemelor. Prin introducerea noiunii de model al livrrii se ofer posibilitatea urmririi fiecrui proces al dezvoltrii ca o iteraie, sau evoluie spre soluia acceptat. Specificul modelelor iterative este accentul pus pe minimizarea resurselor de utilizat pentru asigurarea urmtorului increment (adaos, spor) de produs, cu meninerea legturii cu obiectivele proiectului global (general). Fiecare produs livrat succesiv are o funcionalitate parial. Modelul X poate fi reprezentat ca n Figura 7. Partea superioar a X-ului este o variant modificat a modelului V, exprimnd modul n care specificaiile tehnice devin sisteme livrate. Ca i la dezvoltrile tradiionale, exist specificaii ale sistemului, proiectul arhitectural, proiectarea de detaliu, codificarea, testarea pe componente, integrarea si testarea sistemului. Partea inferioar a X-ului este un V ntors, pentru a sugera noiunea de gestiune patrimonial a depozitelor reutilizabile, fie la nivel de component, de structur, domeniu, sau chiar la nivel de aplicaie. Modelul X exprim dou mari categorii de cicluri de activiti: una derulat nainte, care sintetizeaz sistemul nou (sau modificat), i o activitate derulat napoi, pentru dobndirea sistemelor i a componentelor acestuia, pentru catalogarea diverselor modele, arhitecturi i componente ale activitii finalizate pentru o posibil reutilizare. Ingineria preventiv de la nivelul fiecrui stadiu al procesului ncearc sa reutilizeze (prin selecie, adaptare, rafinare) acumulrile anterioare care se gsesc n bibliotecile sistemelor. Din punct de vedere economic, dezvoltarea softului n ciclul derulat nainte reprezint responsabilitile curente pe linie de soft, iar ciclul derulat napoi - componentele fizice soft. n cazul orientrii-obiect, modelul X este utilizat corespunztor domeniului nou de studiu. Atunci cnd intr n discuie o nou aplicaie, echipa de realizare a ei se va ocupa un timp anume de aflarea modelelor existente n acel domeniu, n vederea determinrii gradului n care ele pot servi noua aplicaie. Astfel, preocuparea esenial va fi axat pe ce poate fi luat n procesul de analiz. Modelul X de dezvoltare a softului ia n considerare existena diferitelor cicluri de via concurente (paralele) pentru componente, aplicaii i proiecte abstracte. Coninutul bibliotecilor componentelor fizice se afl ntr-un continuu proces de rafinare. n concluzie, ca i modelul anterior, nici modelul X nu va ocupa un loc de seam n categoria modelelor ciclului de via prin simplul fapt c nu aduce elemente noi, ci doar surprinde n detaliu prin V-ul ntors, ceea ce n realitate se efectueaz i la alte modele.

Ciclul abstractizrii

Nivel conceptual

Sistem generaia 1 Sistem generaia 2

Nivel logic

Sistem generaia 3

Nivel fizic

Studiu preliminar Studiu detaliat Studiu tehnic Implementare ntreinere

Ciclul de via al sistemului T1 T2 T3

Ciclul proiectului

Figura 6. Modelul tridimensional