You are on page 1of 56

Ingineria programarii

Adriana Gheorghies , Ovidiu Gheorghies


3 octombrie 2005

1 / 56

Cont inutul cursului


Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Modele de dezvoltare Ingineria cerint elor UML (Unied Modeling Language) Modele de proiectare (Design patterns) Testare Metrici software Managementul proiectelor s Etica i legislat ie

2 / 56

Cont inutul cursului


Evaluare

Evaluare Apreciere curs Laborator Laborator Rezumat evaluare


Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Evaluare

3 / 56

Evaluare
Cont inutul cursului
Evaluare

mai buna a efortului depus de un student Obiectiv: apreciere cat ii rezultatului s i a calitat Aprecierea se va face n E (puncte virtuale) (rata standard 5E/h) Lucru full time: 40h/sapt x 4 sapt x 5E/h = 800 E/luna

Evaluare Apreciere curs Laborator Laborator Rezumat evaluare


Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

4 / 56

Apreciere curs
Cont inutul cursului
Evaluare

Evaluare Apreciere curs Laborator Laborator Rezumat evaluare


Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Semestru: 14 cursuri x (2h + 2h) = 56h Sesiune: 5 zile x 10h = 50 h Total: aproximativ 100h 100h x 5E/h = 500 E (maxim) Evaluarea se va face n sesiune prin examen Minim pentru promovare 150 E

5 / 56

Laborator
Cont inutul cursului
Evaluare

Evaluare Apreciere curs Laborator Laborator Rezumat evaluare


Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Probleme, proiecte, referate de predare Fiecare are alocat un buget s i un termen limita acumulat mai mare Obiectiv: sa i un buget cat ne convinget cumpar am produsul rezultat Trebuie sa i sa Decizia de cumparare depinde de calitatea produsului o limita superioara pentru punctajul total la lab Nu exista Minim pentru promovare 150 E

6 / 56

Laborator
Cont inutul cursului
Evaluare

Evaluare Apreciere curs Laborator Laborator Rezumat evaluare


Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Putet i negocia (bugetul, termenul de predare) la problemele existente) Putet i propune (probleme, modicari Punctajul obt Putet i lucra n echipa. inut se mparte ntre membrii
echipei. Voi spunet i cum. mentionarea in anexa la Frauda se pedepses te prin amenda, diploma, etc. Prezentare OK: stapanirea integrala a rezolvarii (posibil partiale) propuse.

7 / 56

Rezumat evaluare
Cont inutul cursului
Evaluare

Evaluare Apreciere curs Laborator Laborator Rezumat evaluare


Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Examen ( n sesiune): max 500E min 150E Laborator: min 150E punctajul de la laborator cu cel de la examen Se aduna Notarea se face folosind curba lui Gauss pe punctajul nal Un student care obt ine punctajul minim la examen s i la laborator este promovat.

8 / 56

Cont inutul cursului


Evaluare Introducere n ingineria programarii

programelor frecvente Intrebari frecvente Intrebari Software Atributele unui Ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Motivat ie Motivatie (2) Motivat ie (3) Gres eli celebre Denitie (?) Costurile alocate

Introducere n ingineria programarii

program bun

9 / 56

Motivat ie
Cont inutul cursului
Evaluare Introducere n ingineria programarii

programelor frecvente Intrebari frecvente Intrebari Software Atributele unui Ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Motivat ie Motivatie (2) Motivat ie (3) Gres eli celebre Denitie (?) Costurile alocate

Din ce n ce mai multe sisteme sunt controlate de software Economiile tuturor statelor dezvoltate depind de software propune teorii, metodologii s Ingineria programarii i instrumente

pentru dezvoltarea de software profesional are alocat un procent semnicativ din PIB Ingineria programarii n toate statele dezvoltate

program bun

10 / 56

Motivatie (2)
Cont inutul cursului
Evaluare Introducere n ingineria programarii

1946 Goldstine s i von Neumann: 1000 de instruct iuni reprezint a superioara rezonabila pentru complexitatea problemelor o limita ce pot concepute ca rezolvabile cu ajutorul calculatorului. ce a prevazut nici un program pentru calculatoare Dupa ca mai mult de 64 KB de personale nu va necesita vreodata lucrurile s-au memorie RAM, Bill Gates admite n 1995 ca decenii. schimbat n ultimele doua

programelor frecvente Intrebari frecvente Intrebari Software Atributele unui Ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Motivat ie Motivatie (2) Motivat ie (3) Gres eli celebre Denitie (?) Costurile alocate

program bun

11 / 56

Motivat ie (3)
Cont inutul cursului
Evaluare Introducere n ingineria programarii

KLM Sistemul de rezervare a biletelor pentru compania aeriana

programelor frecvente Intrebari frecvente Intrebari Software Atributele unui Ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Motivat ie Motivatie (2) Motivat ie (3) Gres eli celebre Denitie (?) Costurile alocate

program bun

milioane de linii de cod cont inea, n anul 1992, doua n limbaj de asamblare; Sistemul de operare System V versiunea 4.0 (UNIX) a fost obt inut prin compilarea a 3 700 000 linii de cod; NASA au circa 40 de Programele scrise pentru naveta spat iala milioane de linii de cod obiect; Pentru realizarea sistemului de operare IBM OS360 au fost necesari 5000 de ani-om. Criza a programarii? Programarea: arta sau tehnica?

12 / 56

Gres eli celebre


Cont inutul cursului
Evaluare Introducere n ingineria programarii

Cecuri enorme la stat iile de benzine. Amuzant... IBM OS360 contt inea la ecare relansare 1.000 de gres eli.

programelor frecvente Intrebari frecvente Intrebari Software Atributele unui Ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Motivat ie Motivatie (2) Motivat ie (3) Gres eli celebre Denitie (?) Costurile alocate

Resemnare... Pierdere vehicul explorare Venus. Ah, era de fapt , in FOR!... activat. Atacam sau nu? Sistem de avertizare anti-racheta Cost articii: 500.000.000 $ Ariane 5 explodeaza.

program bun

13 / 56

Denitie (?)
Cont inutul cursului
Evaluare Introducere n ingineria programarii

Prima denitie a ingineriei programarii (NATO,1968): Ingineria

programelor frecvente Intrebari frecvente Intrebari Software Atributele unui Ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Motivat ie Motivatie (2) Motivat ie (3) Gres eli celebre Denitie (?) Costurile alocate

este stabilirea s programarii i utilizarea de principii ingineres ti solide pentru a obt ine n mod economic programe care sunt ecient pe mas sigure s i funct ioneaza ini de calcul concrete. O denitie mai recenta (si mai rezervata, IEEE Standard Glossary of Software Engineering Tehnology, 1983): Ingineria reprezinta abordarea sistematica a dezvoltarii, programarii funct ionarii, ntret inerii, s i retragerii din funct iune a programelor

program bun

14 / 56

Costurile alocate programelor


Cont inutul cursului
Evaluare Introducere n ingineria programarii

Costul programelor pentru un PC este de obicei mai mare deca

programelor frecvente Intrebari frecvente Intrebari Software Atributele unui Ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Motivat ie Motivatie (2) Motivat ie (3) Gres eli celebre Denitie (?) Costurile alocate

costul unui sistem (hardware) Costul de dezvoltare al unui program este mai mic decat costul mare de intret inere al acestuia. In cazul sistemelor cu o durata costul de i de cateva de viat a ntret inere poate depas ori costul de dezvoltare a programelor este una dintre preocuparile Dezvoltarea ecienta ingineriei programarii

program bun

15 / 56

frecvente Intrebari
Cont inutul cursului
Evaluare Introducere n ingineria programarii

programelor frecvente Intrebari frecvente Intrebari Software Atributele unui Ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Motivat ie Motivatie (2) Motivat ie (3) Gres eli celebre Denitie (?) Costurile alocate

Ce nt elegem prin software? Care sunt atributele unui program bun? Ce este ingineria programarii? este Ce diferent a ntre IP s i informatica? este Ce diferent a ntre IP s i ingineria sistemelor? Ce este un proces software? Ce este un model al unui proces software?

program bun

16 / 56

frecvente Intrebari
Cont inutul cursului
Evaluare Introducere n ingineria programarii

programelor frecvente Intrebari frecvente Intrebari Software Atributele unui Ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Motivat ie Motivatie (2) Motivat ie (3) Gres eli celebre Denitie (?) Costurile alocate

Care sunt costurile n ingineria programarii? metodologiile propuse de ingineria programarii? Ce reprezinta Ce este CASE (Computer Aided Software Engineering)? i Care sunt principalele dicultat n IP?

program bun

17 / 56

Software
Cont inutul cursului
Evaluare Introducere n ingineria programarii

programe s Reprezinta i documentat ia aferenta Produsele software pot generice (off-the-shelf) - dezvoltate pentru a vandute mai multor client i specice (custom) - dezvoltate pentru a vandute unui singur client (conform cu specicat iile acestuia)

programelor frecvente Intrebari frecvente Intrebari Software Atributele unui Ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Motivat ie Motivatie (2) Motivat ie (3) Gres eli celebre Denitie (?) Costurile alocate

program bun

18 / 56

Atributele unui program bun


Cont inutul cursului
Evaluare Introducere n ingineria programarii

ofere utilizatorilor funct ile cerute sa ionalitat e us evolueze odata cu sa or de ment inut - programul trebuie sa schimbarea nevoilor utilizatorilor e sigur sa e ecient - sa nu iroseasca resursele sistemului sa e us sa or de folosit

programelor frecvente Intrebari frecvente Intrebari Software Atributele unui Ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Motivat ie Motivatie (2) Motivat ie (3) Gres eli celebre Denitie (?) Costurile alocate

program bun

19 / 56

Ingineria programarii
Cont inutul cursului
Evaluare Introducere n ingineria programarii

inginereasca care se ocupa de toate aspectele Este o disciplina unui program dezvoltarii sistematice s Propune adoptarea unei abordari i organizate a procesului de dezvoltare software Propune folosirea tehnicilor s i instrumentelor adecvate av and n vedere problema care trebuie rezolvata restrict iile impuse resursele disponibile

programelor frecvente Intrebari frecvente Intrebari Software Atributele unui Ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Motivat ie Motivatie (2) Motivat ie (3) Gres eli celebre Denitie (?) Costurile alocate

program bun

20 / 56

Cont inutul cursului


Evaluare Introducere n ingineria programarii Unde se incadreaza IP IP vs informatica? IP vs ingineria

sistemelor

software

Proces software Model al unui proces IP: metodologii CASE


Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

Unde se incadreaza IP

21 / 56

IP vs informatica?
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP IP vs informatica? IP vs ingineria

de aspectele teoretice ale dezvoltarii Informatica se ocupa

sistemelor

software de aspectele practice ale dezvoltarii software IP se ocupa sunt Teoriile dezvoltate de informatica n prezent insuciente pentru a constitui o fundament complet pentru IP

software

Proces software Model al unui proces IP: metodologii CASE


Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

22 / 56

IP vs ingineria sistemelor
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP IP vs informatica? IP vs ingineria

de toate aspectele dezvoltarii Ingineria sistemelor se ocupa

sistemelor de calcul (hardware, software, ingineria proceselor) IP este o parte din ingineria sistemelor de IP se ocupa

sistemelor

software

Proces software Model al unui proces IP: metodologii CASE


Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

specicarea cerint elor proiectare arhitecturala implementare integrare deployment

23 / 56

Proces software
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP IP vs informatica? IP vs ingineria

o mult i al caror Reprezinta ime de activitat scop este dezvoltarea sau evolut ia unui program i generice Activitat n toate procesele soft:

sistemelor

software

Proces software Model al unui proces IP: metodologii CASE


Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

specicarea cerint elor proiectare implementare testare validare evolut ie ( ntret inere)

24 / 56

Model al unui proces software


Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP IP vs informatica? IP vs ingineria

a unui proces software prezentata O reprezentare simplicata perspectiva, cum ar : dintr-o anumita i (workow) perspectiva uxului de activitat perspectiva uxului de informat ii (data-ow) perspectiva rolurilor/act iunilor (cine ce face) spirala, Modele generice ale proceselor software: cascada, prototipuri, RUP, extreme programming ...

sistemelor

software

Proces software Model al unui proces IP: metodologii CASE


Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

25 / 56

IP: metodologii
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP IP vs informatica? IP vs ingineria

structurate ale procesului de dezvoltare care includ: Sunt abordari

sistemelor

software

Proces software Model al unui proces IP: metodologii CASE


Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

descrieri ale modelelor - pot folosite diferite notat ii reguli - restrict ii aplicate modelelor - sfaturi privind good design practice recomandari i ghidare a procesului de dezvoltare - care este uxul de activit at care trebuie urmat

26 / 56

CASE
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP IP vs informatica? IP vs ingineria

suport automat activitt Sisteme soft care ofera ilor unui proces soft; de obicei sunt folosite ca suport al unei metodologii activitat ile de Upper-CASE - instrumente care ajuta nceput (analiza cerint elor, proiectare) Lower-CASE - medii integrate de dezvoltare (implementare, testare, depanare)

sistemelor

software

Proces software Model al unui proces IP: metodologii CASE


Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare

27 / 56

Cont inutul cursului


Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Repartizarea costurilor Numarul relativ al erorilor Costul relativ al erorilor Costurile n dezvoltare i n IP Dicultat Modele de dezvoltare Exemple de modele de dezvoltare

Provocari in IP

28 / 56

Repartizarea costurilor
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Repartizarea costurilor Numarul relativ al erorilor Costul relativ al erorilor Costurile n dezvoltare i n IP Dicultat Modele de dezvoltare Exemple de modele de dezvoltare

Costurile relative ale stadiilor dezvoltarii

Analiza si proiectare Scrierea codului 17% 33%

50% Testare

29 / 56

Numarul relativ al erorilor


Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Repartizarea costurilor Numarul relativ al erorilor Costul relativ al erorilor Costurile n dezvoltare i n IP Dicultat Modele de dezvoltare Exemple de modele de dezvoltare

Numarul relativ de erori facute pe parcursul dezvoltarii

Proiectare 50%

17% 33% Sintaxa Programare si logica

30 / 56

Costul relativ al erorilor


Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Repartizarea costurilor Numarul relativ al erorilor Costul relativ al erorilor Costurile n dezvoltare i n IP Dicultat Modele de dezvoltare Exemple de modele de dezvoltare

erorilor Costul relativ al repararii

Proiectare 80% 20%

Programare, logica, sinta

31 / 56

Costurile n dezvoltare
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Repartizarea costurilor Numarul relativ al erorilor Costul relativ al erorilor Costurile n dezvoltare i n IP Dicultat Modele de dezvoltare Exemple de modele de dezvoltare

Aproximativ 50% sunt costuri de dezvoltare, restul sunt costuri

pentru testare. esc Pentru programele specice costurile de ntret inere depas deseori costurile de dezvoltare Costurile variaza n funct ie de tipul sistemului care este dezvoltat, sigurant impuse de cerint ele s i restrict iile (performant a, a) sistemului Distribut ia costurilor depinde s i de modelul de dezvoltare folosit

32 / 56

i Dicultat n IP
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Repartizarea costurilor Numarul relativ al erorilor Costul relativ al erorilor Costurile n dezvoltare i n IP Dicultat Modele de dezvoltare Exemple de modele de dezvoltare

Sistemele mai vechi care trebuie ntret inute s i actualizate Eterogenitatea sistemelor software/hardware Presiunea pentru a livra programul mai repede, mai repede ...

33 / 56

Cont inutul cursului


Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare

programelor

Modele de dezvoltare Etapele dezvoltarii Analiza cerint elor Proiectarea Implementare, Validare s i vericare Intret inere Modele de dezvoltare
Exemple de modele de dezvoltare

Modele de dezvoltare

integrare

34 / 56

Modele de dezvoltare
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare

Pentru a dezvolta un program este nevoie de:


a ceea ce se cere O int elegere clara Un set de metode s i instrumente de lucru Un plan de act iune

programelor

Modele de dezvoltare Etapele dezvoltarii Analiza cerint elor Proiectarea Implementare, Validare s i vericare Intret inere Modele de dezvoltare
Exemple de modele de dezvoltare

Plan de act iune = s ablon = model de dezvoltare

integrare

35 / 56

programelor Etapele dezvoltarii


Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare

programelor

Modele de dezvoltare Etapele dezvoltarii Analiza cerint elor Proiectarea Implementare, Validare s i vericare Intret inere Modele de dezvoltare
Exemple de modele de dezvoltare

Analiza cerint elor Proiectarea architecturala Proiectarea detaliata Scrierea codului Integrarea componentelor Validare Vericare Intret inere

integrare

36 / 56

Analiza cerint elor


Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare

faca Se stabiles te ce anume vrea clientul ca programul sa cat mai clara s Scopul este nregistrarea cerint elor ntr-o maniera i mai dela Probleme

programelor

Modele de dezvoltare Etapele dezvoltarii Analiza cerint elor Proiectarea Implementare, Validare s i vericare Intret inere Modele de dezvoltare
Exemple de modele de dezvoltare

Comunicare Negociere Sfatuirea clientului

integrare

37 / 56

Proiectarea
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare

Proiectarea arhitecturala

Din motive de complexitate, programele mari nu pot

bucata concepute s i implementate ca o singura it Programul este mpart n module sau componente mai simple, care pot abordate individual

programelor

Modele de dezvoltare Etapele dezvoltarii Analiza cerint elor Proiectarea Implementare, Validare s i vericare Intret inere Modele de dezvoltare
Exemple de modele de dezvoltare

Proiectarea detaliata ecare modul al aplicat Se proiecteaza iei, n cele mai mici detalii.

integrare

38 / 56

Implementare, integrare
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare

Implementare Proiectul detaliat este transpus ntr-un limbaj de programare modular, pe structura rezultata la Acesta se realizeaza
proiectarea arhitecturala

programelor

Modele de dezvoltare Etapele dezvoltarii Analiza cerint elor Proiectarea Implementare, Validare s i vericare Intret inere Modele de dezvoltare
Exemple de modele de dezvoltare

Integrare Modelul big-bang Modelul incremental

integrare

39 / 56

Validare s i vericare
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare

ca programul Validare: ne asiguram ndeplines te cerint ele utilizatorului.

Construim produsul corect?


ca programul este stabil s Vericare: ne asiguram i ca corect din punctul de vedere al dezvoltatorilor. funct ioneaza

programelor

Modele de dezvoltare Etapele dezvoltarii Analiza cerint elor Proiectarea Implementare, Validare s i vericare Intret inere Modele de dezvoltare
Exemple de modele de dezvoltare

Construim corect produsul?

integrare

40 / 56

Intret inere
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare

livrare Dupa

Sunt descoperite gres eli ce trebuie reparate Pot aparea schimbari n specicat ii Pot aparea noi cerint e
Intret inere = gestionarea acestor tipuri de probleme

programelor

Modele de dezvoltare Etapele dezvoltarii Analiza cerint elor Proiectarea Implementare, Validare s i vericare Intret inere Modele de dezvoltare
Exemple de modele de dezvoltare

integrare

41 / 56

Modele de dezvoltare
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare

activitat ile indicate de etapele dezvoltarii Cum efectuam programelor Exemple de modele de dezvoltare:

programelor

Modele de dezvoltare Etapele dezvoltarii Analiza cerint elor Proiectarea Implementare, Validare s i vericare Intret inere Modele de dezvoltare
Exemple de modele de dezvoltare

integrare

Ad-hoc: descurca-te cum pot i (cu feedback) Modelul n cascada Prototipizare Metode formale Modelul n spirala RUP (Rational Unied Process) XP (Extreme Programming)

42 / 56

Cont inutul cursului


Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare Modelul n cascada Modelul n cascada Modelul n cascada

Exemple de modele de dezvoltare

cu ntoarcere Modelul n cascada cu ntoarcere Modelul n spirala Modelul n spirala Prototipizare Prototipizare:

avantaje Prototipizare: dezavantaje Rational Unied Process (0) Rational Unied Process Rational Unied Process (2) Rational Unied Process (3)

43 / 56

Modelul n cascada
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare Modelul n cascada Modelul n cascada Modelul n cascada

Ingineria cerintelor P roiectarea arhitecturala P roiectarea detaliata

cu ntoarcere Modelul n cascada cu ntoarcere Modelul n spirala Modelul n spirala Prototipizare Prototipizare:

Implementare

T estarea unitatilor T estarea sistemului

avantaje Prototipizare: dezavantaje Rational Unied Process (0) Rational Unied Process Rational Unied Process (2) Rational Unied Process (3)

Acceptare
44 / 56

Modelul n cascada
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare Modelul n cascada Modelul n cascada Modelul n cascada

complexa +: Imparte o sarcina n pas i mai mici +: Us or de administrat s i controlat +: Fiecare pas are ca rezultat un produs bine denit -: Erorile se propaga ntre pas i mecanisme de reparare a erorilor -: Nu exista

cu ntoarcere Modelul n cascada cu ntoarcere Modelul n spirala Modelul n spirala Prototipizare Prototipizare:

avantaje Prototipizare: dezavantaje Rational Unied Process (0) Rational Unied Process Rational Unied Process (2) Rational Unied Process (3)

45 / 56

cu Modelul n cascada ntoarcere


Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare Modelul n cascada Modelul n cascada Modelul n cascada

Ingineria cerintelor P roiectarea arhitecturala P roiectarea detaliata

cu ntoarcere Modelul n cascada cu ntoarcere Modelul n spirala Modelul n spirala Prototipizare Prototipizare:

Implementare

T estarea unitatilor T estarea sistemului

avantaje Prototipizare: dezavantaje Rational Unied Process (0) Rational Unied Process Rational Unied Process (2) Rational Unied Process (3)

Acceptare
46 / 56

cu Modelul n cascada ntoarcere


Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare Modelul n cascada Modelul n cascada Modelul n cascada

cadrul pentru remedierea erorilor din pasul precedent +: Ofera -: Erorile la pasul i care sunt descoperile la pasul i + 2 nu sunt remediate itul dezvoltarii -: Clientul vede produsul nal abia la sfars

cu ntoarcere Modelul n cascada cu ntoarcere Modelul n spirala Modelul n spirala Prototipizare Prototipizare:

avantaje Prototipizare: dezavantaje Rational Unied Process (0) Rational Unied Process Rational Unied Process (2) Rational Unied Process (3)

47 / 56

Modelul n spirala
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare Modelul n cascada Modelul n cascada Modelul n cascada

Studiul de fezabilitate Analiza cerint elor Proiectarea arhitecturii Implementarea

i: Pentru ecare pas, se fac urmatoarele activitat

cu ntoarcere Modelul n cascada cu ntoarcere Modelul n spirala Modelul n spirala Prototipizare Prototipizare:

1 : pregatirea [take stock ]

2 : gestiunea riscului [dealing with risk ]

avantaje Prototipizare: dezavantaje Rational Unied Process (0) Rational Unied Process Rational Unied Process (2) Rational Unied Process (3)

4 : planif icarea urmatorului stagiu [planning ]

3 : dezvoltarea [development]

48 / 56

Modelul n spirala
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare Modelul n cascada Modelul n cascada Modelul n cascada

avantajele modelului +: Pastraz a n cascada +: Ia n calcul not iunea de risc Exemple de riscuri:

concurenta lanseaza un produs rival O rma ases te echipa Un arhitect par cerint Clientul schimba ele nu respecta termenele de livrare O echipa

cu ntoarcere Modelul n cascada cu ntoarcere Modelul n spirala Modelul n spirala Prototipizare Prototipizare:

avantaje Prototipizare: dezavantaje Rational Unied Process (0) Rational Unied Process Rational Unied Process (2) Rational Unied Process (3)

49 / 56

Prototipizare
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare Modelul n cascada Modelul n cascada Modelul n cascada

Tipuri de prototipuri De aruncat (throw-away)


Scop: claricarea specicatiilor Se dezvolta repede, orice altceva e secundar (quick-and-dirty). Util in a rezolva architecural/technology spikes. Programul adevarat este scris apoi de la 0.

cu ntoarcere Modelul n cascada cu ntoarcere Modelul n spirala Modelul n spirala Prototipizare Prototipizare:

Evolut ionar
Scop: construire incrementala a produsului nal. Se construieste un nucleu functional la care se adauga apoi noi functionalitati.

avantaje Prototipizare: dezavantaje Rational Unied Process (0) Rational Unied Process Rational Unied Process (2) Rational Unied Process (3)

50 / 56

Prototipizare: avantaje
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare Modelul n cascada Modelul n cascada Modelul n cascada

Avantaje
Se poate elimina lipsa de claritate a specicat iilor Client ii pot schimba cerint ele (e ieftin de gestionat) (vericare pe parcus) Intret inere ieftina Se poate facilita instruirea utilizatorilor

cu ntoarcere Modelul n cascada cu ntoarcere Modelul n spirala Modelul n spirala Prototipizare Prototipizare:

avantaje Prototipizare: dezavantaje Rational Unied Process (0) Rational Unied Process Rational Unied Process (2) Rational Unied Process (3)

51 / 56

Prototipizare: dezavantaje
Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare Modelul n cascada Modelul n cascada Modelul n cascada

Dezavantaje
Mediu articial, probleme ascunse atat? Da nu-i apropape gata?! De ce mai dureaza schimbam specicat as Putem sa iile? Pai vrea s i... munca mea este aruncata la gunoi? Adica

cu ntoarcere Modelul n cascada cu ntoarcere Modelul n spirala Modelul n spirala Prototipizare Prototipizare:

avantaje Prototipizare: dezavantaje Rational Unied Process (0) Rational Unied Process Rational Unied Process (2) Rational Unied Process (3)

52 / 56

Rational Unied Process (0)


Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare Modelul n cascada Modelul n cascada Modelul n cascada

cu ntoarcere Modelul n cascada cu ntoarcere Modelul n spirala Modelul n spirala Prototipizare Prototipizare:

avantaje Prototipizare: dezavantaje Rational Unied Process (0) Rational Unied Process Rational Unied Process (2) Rational Unied Process (3)

53 / 56

Rational Unied Process


Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare Modelul n cascada Modelul n cascada Modelul n cascada

ii. Sunt sintetizate necesitat ile funct Ingineria functionalitat ionale. necesitat ile funct Cerint e. Se translateaza ionale n

cu ntoarcere Modelul n cascada cu ntoarcere Modelul n spirala Modelul n spirala Prototipizare Prototipizare:

comportament de sisteme automate. cerint Analiza s i Proiectare. Se translateaza ele n arhitectura programului. programul conform cu arhitectura astfel Implementare. Se creaza ncat comportamentul acestuia sa e consistent cu cel dorit. ca comportamentele cerute sunt corecte s Testare. Se asigura i toate comportamentele necesare sunt prezente ca n program.

avantaje Prototipizare: dezavantaje Rational Unied Process (0) Rational Unied Process Rational Unied Process (2) Rational Unied Process (3)

54 / 56

Rational Unied Process (2)


Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare Modelul n cascada Modelul n cascada Modelul n cascada

Administrarea conguratiei s i a schimbarilor. Se gestioneaz a

ilor din care este compus programul. versiunile tuturor entitat Administrarea proiectului. Sunt administrate planicarile s i resursele. s Administrarea mediului. Se instaleaza i se ment ine mediul de programului. lucru necesar dezvoltarii activitat ile necesare punerii Plasament. Se efectueaza n funct iune a programului.

cu ntoarcere Modelul n cascada cu ntoarcere Modelul n spirala Modelul n spirala Prototipizare Prototipizare:

avantaje Prototipizare: dezavantaje Rational Unied Process (0) Rational Unied Process Rational Unied Process (2) Rational Unied Process (3)

55 / 56

Rational Unied Process (3)


Cont inutul cursului
Evaluare Introducere n ingineria programarii Unde se incadreaza IP Provocari in IP Modele de dezvoltare Exemple de modele de dezvoltare Modelul n cascada Modelul n cascada Modelul n cascada

cu ntoarcere Modelul n cascada cu ntoarcere Modelul n spirala Modelul n spirala Prototipizare Prototipizare:

avantaje Prototipizare: dezavantaje Rational Unied Process (0) Rational Unied Process Rational Unied Process (2) Rational Unied Process (3)

56 / 56

You might also like