Documente Academic
Documente Profesional
Documente Cultură
MERISE
Concept Definire
Concept Definire
Analiza
Proiectarea
Implementarea
Testarea
Utilizarea i
ntreinerea
II. 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
III. 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
IV. 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.
V. 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
subsistem subsistem
Codificare/asamblare
Etapele de realizare a sistemelor informatice conform
metodologiei SSADM
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.
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 proiectului,
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 afaceri, 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.
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 .
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.
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.
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.
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
RAD
Documentarea
Proiectare
cerinelor
Revizuiri ale
utilizatorilor Testare
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:
1. Este prioritar satisfacia clientului prin livrarea rapid i continu de
software calitativ.
2. Schimbarea cerinelor este binevenit chiar i ntr-o faz avansat a
dezvoltrii. Procesele agile valorific schimbarea n avantajul competitiv al
clientului.
3. Livrarea de software funcional se face frecvent, de preferin la intervale de
timp ct mai mici, de la cteva sptmni la cteva luni.
4. Oamenii de afaceri i dezvoltatorii trebuie s colaboreze zilnic pe parcursul
proiectului.
5. Proiecte se construiresc n jurul oamenilor motivai. Oferindu-le mediul
propice i suportul necesar este foarte probabil c obiectivele vor fi atinse.
Metodologii bazate pe dezvoltarea agil
Sistem
Sistem
Sistem
Metodologii bazate pe dezvoltarea agil
Avantaje Dezavantaje
Curaj
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 mentenanta
sistemelor de mari dimensiuni construite cu XP poate fi imposibil.
SCRUM
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 .
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.