programų sistemų inžinerija 5 paskaita programų sistemų ...dma.vgtu.lt/psi/psi_3.pdfu n ders...

71
Programų sistemų inžinerija 5 paskaita Programų sistemų inžinerijos procesų modeliai (paradigmos) Skaidrės paruoštos remianti prof. A.Čaplinsko ir I.Sommerville medžiaga

Upload: others

Post on 16-Oct-2020

4 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Programų sistemų inžinerija

5 paskaita Programų sistemų inžinerijos procesų

modeliai (paradigmos)

Skaidrės paruoštos remianti prof. A.Čaplinsko ir I.Sommerville medžiaga

Page 2: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

2

Paradigmos PS inžinerijos paradigmos

• PS inžinerijos paradigmos – tai skirtingi požiūriai į tai, kaip turi būti kuriamos programų sistemos.

– Iš principo, PS galima sukurti pasinaudojant bet kuria paradigma.

– Kurią paradigmą rinktis, priklauso ir nuo vykdytojų įgūdžių, ir nuo kuriamos PS pobūdžio, ir nuo sandorio su užsakovu pobūdžio ir nuo kitų konkretaus projekto ypatumų.

– Bet kuri iš PSI paradigmų užduoda tiktai tam tikrą principinę PS kūrimo schemą

Page 3: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

3

Paradigmos PS inžinerijos paradigmos

• Nei viena PSI paradigma neduoda projektuotojui

jokių atsakymų į jokius konkrečius klausimus. Ji yra

tik kelrodė žvaigždė, primenanti projektuotojui,

kokius projektavimo sprendimus jis turi priimti.

Page 4: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

4

Paradigmos

Populiariausios PS inžinerijos paradigmos – Krioklio paradigma (waterfall)

– Paradigma “iš viršaus žemyn” (top-down approach)

– Paradigma “iš apačios aukštyn” (bottom-up approach)

– Riešuto paradigma (bootstrap approach)

– Iteracinė paradigma (prototyping)

– Evoliucinio kūrimo paradigma (incremental development)

– Spiralės paradigma

– Komponentinė paradigma (reuse-based development)

– Sintezės paradigma (formal development)

Page 5: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

5

Principai ir paradigmos Paradigma “iš viršaus žemyn” (top-down) • Taikant šią paradigmą

– sistemos kūrimas pradedamas jos vartotojo interfeisų projektavimu

• be to, nustatomi iš išorės stebimos sistemos elgsenos vertinimo kriterijai;

• kitaip tariant, PS traktuojama kaip juodoji dėžė;

– po to žingsnis po žingsnio judama žemyn, kiekviename žingsnyje visų pirma nustatant, ką tame žingsnyje nagrinėjami komponentai darys ir kokius interfeisus jie turės, ir tik po to pradedant galvoti, kaip reikia realizuoti jų elgseną (funkcijas)

• t.y. komponentai traktuojami kaip juodosios dėžės

Page 6: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Krioklio (kaskadinė) paradigma

6

Requirementsdefinition

System andsoftware design

Implementationand unit testing

Integration andsystem testing

Operation andmaintenance

Page 7: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Krioklio paradigmos fazės

• Krioklio modelyje naudojamos tokios atskiros fazės, kurios vykdomos nuosekliai t.y. prie tolimesnės fazės prieinama tik baigus prieš tai buvusią fazę.

• Krioklio paradigmos fazės:

– Reikalavimų analizė ir apibrėžimas

– Programų sistemos projektavimas

– Programų kūrimas ir komponentų testavimas

– Komponentų integravimas ir sistemos testavimas

– Programų diegimas ir palaikymas

• Pagrindinis krioklio paradigmos trūkumas – sunku atlikti pakeitimus, kai procesas jau prasidėjęs.

7

Page 8: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Krioklio paradigmos problemos

• Nelankstus projekto suskaldymas į fazes apsunkina reagavimą į užsakovo pareikštus pakeitimus.

– Krioklio paradigma tinkama tik tuomet, kai reikalavimai yra gerai išsiaiškinti ir pakeitimai bus labai nežymiai projekto eigoje.

– Tik labai maža dalis programų sistemų turės nekintamus reikalavimus projekto eigoje.

• Krioklio paradigma dažniausiai naudojama didelių PS kūrimo projektuose, kuriuose dalyvauja kelios IT įmonės ir pakeitimų įvedimas yra labai skausmingas.

– Tokiais atvejais griežtai suplanuotas procesas padeda koordinuoti visą darbą.

8

Page 9: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

5 tema 9

“Iš viršaus žemyn” Paradigma “iš viršaus žemyn” (top-down)

• Taikant šią paradigmą

– projektavimas baigiamas “nulipus” iki kompiuterinės platformos lygmens ir suformulavus kompiuterinės technologijos reikalavimus, garantuojančius suprojektuotų interfeisų veikimą ir norimą sistemos elgseną.

• Taigi, vadovaujantis šia paradigma, galima apsisaugoti nuo vartotojų turimos PS vizijos iškraipymų, dažnai atsirandančių kuriant sistemas kitais būdais.

– Tačiau, ir vadovaujantis šia paradigma, vartotojų vizija gali būti iškreipta, jei, kaip tai neretai atsitinka, analitikai iki galo neperpras vartotojų poreikių.

Page 10: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

10

“Iš viršaus žemyn” Paradigma “iš viršaus žemyn”

• “Iš viršaus žemyn” paradigmoje intensyviai

naudojami abstrakcijos ir dekompozicijos principai

– kiekvienas abstrakcijos lygmuo yra dekomponuojamas į

komponentus (juodąsias dėžes), kurie “tikslinami”

žemesniuose abstrakcijos lygmenyse.

• Paradigma pritaikyta projektuotojams, gebantiems

projektuoti komponentus, tenkinančius iš anksto

užduotas specifikacijas.

Page 11: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

11

“Iš viršaus žemyn” Paradigma “iš viršaus žemyn”

• Projektavimo sprendimai priimami vadovaujantis funkciniais kriterijais.

– problema dekomponuojama į komponentus (modulius, duomenų struktūras ar kt.),

– komponentai realizuojami panaudojant žemesnio lygmens (patikslintus) komponentus, kurie vis labiau ir labiau atspindi tikslinės kompiuterinės platformos ypatumus.

Page 12: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

12

“Iš viršaus žemyn”

Pradinė problema

Skaidymas į smulkesnes problemas

Elementarios

problemos

(aprašomos

viena funkcija)

Projektavimas “iš viršaus žemyn”

Page 13: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

13

“Iš apačios aukštyn” Taikant iš apačios aukštyn paradigmą

– sistemos kūrimas pradedamas nuo kompiuterinės platformos

• kompiuterinė platforma užduoda rinkinį griežtai apibrėžtų

sąvokų, per kurias galima išreikšti sudėtingesnes įvairių

dalykinių ir probleminių sričių sąvokas;

– po to konstruojamos vis abstraktesnės ir abstraktesnės

sąvokos, kuriomis galų gale pavyksta aprašyti PS

sprendžiamą problemą

• taigi, yra parenkama kompiuterinė technologija, o po to

sprendžiama kaip šios technologijos priemonėmis kurti

reikiamą PS.

Page 14: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

14

“Iš apačios aukštyn” Paradigma “iš apačios aukštyn” • Tai viena iš populiariausių PS kūrimo paradigmų

– šios paradigmos populiarumas yra natūralus, nes naudojama technologija visuomet lemia tai, kokias PS yra įmanoma sukurti;

• rinkoje pasirodantys naujo pobūdžio programiniai produktai dažniausiai esti naujų kompiuterinių technologijų pasirodymo pasekmė.

• Ši paradigma neblogai tinka nedidelėms PS kurti

– projektuojant sudėtingesnes PS, dėl iš anksto daromų technologinių prielaidų dažniausiai yra iškraipoma vartotojų turima PS vizija, nes suprojektuojami tokie sistemos interfeisai, kuriuos patogu realizuoti turimomis technologinėmis priemonėmis, o ne tokie, kurie būtų patogūs vartotojui.

Page 15: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

15

“Iš apačios aukštyn”

Paradigma “iš apačios aukštyn”

• Projektavimo “iš apačios aukštyn” paradigma grindžiama intensyviu abstrakcijos principo ir konkatenacijos operacijos naudojimu

– kiekviename abstrakcijos lygmenyje, panaudojant konkatenacijos operaciją, žemesnio lygmens komponentai kombinuojami į sudėtingesnius komponentus.

Konkatenacijos operacija

Page 16: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

16

“Iš apačios aukštyn” Paradigma “iš apačios aukštyn”

• Projektavimas pradedamas nusakant bendrais bruožais sistemos programinę realizaciją:

– t.y. nusprendžiant, kokios procedūros ir duomenų struktūros galėtų būti naudingos, konstruojant reikiamą PS.

• Toliau žingsnis po žingsnio vyksta konkatenacijos procesas.

– vietoje to, kad leistis nuo uždavinio prie programavimo kalbos, kaip tai daroma taikant “iš viršaus žemyn” paradigmą, nuo programavimo kalbos yra kylama prie uždavinio, vienas po kito konstruojant abstrakcijos lygmenis (juos galima traktuoti kaip programavimo kalbas) vis labiau ir labiau pritaikytus sprendžiamam uždaviniui aprašyti.

Page 17: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

17

“Iš apačios aukštyn” Paradigma “iš apačios aukštyn”

• Procesas užbaigiamas, suprojektavus probleminio

pobūdžio komponentus panaudojus kuriuos galima

įgyvendinti užduočių formulavimo kalbą (vartotojo

interfeisus).

• Paradigma pritaikyta projektuotojams, kurie linkę

visų pirma įvertinti komponento, kurį jie rengiasi

projektuoti, technologinį tinkamumą (našumą ir pan.)

kuriamai programų sistemai.

Page 18: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

18

“Iš apačios aukštyn” Paradigma “iš apačios aukštyn”

• Projektavimo sprendimai priimami vadovaujantis

technologiniais kriterijais

– komponentai kombinuojami, norint gauti aukštesnio

lygmens komponentus, kurie, manoma, yra “tinkamesni“

vartotojo interfeisams įgyvendinti, nes yra labiau

probleminio (ne technologinio) pobūdžio.

Page 19: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

19

“Iš apačios aukštyn”

Paradigma “iš apačios aukštyn”

• Rekomenduojama vadovautis “iš apačios aukštyn” paradigma, kuomet norima sukurti PS sprendžiančią bendresnę problemą negu problema, kurią sprendžia kokia nors jau esama PS.

• Kaip jau minėta, svarbiausias paradigmos trūkumas yra tas, kad apatiniuose abstrakcijos lygmenyse priimti technologiniai sprendimai paveikia visą PS, įskaitant vartotojo interfeisus.

– vadovaujantis “iš viršaus žemyn” paradigma, pradedama ne nuo technologinių sprendimų, jie atidedami vėlesniam laikui.

Page 20: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

20

“Iš apačios aukštyn”

Projektavimas “iš apačios aukštyn”

Norima

programa

Tinkamos

funkcijos

Tinkamos

kombinacijos

Page 21: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

21

Paradigmų sugretinimas

Probleminė sritis

Kompiuterinė platforma

“iš viršaus

žemyn”

“iš apačios

aukštyn”

Vartotojo interfeisas

Paradigmų sugretinimas

Page 22: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

22

Paradigmų sugretinimas

Lipant “iš viršaus žemyn” galima nenulipti į turimą kompiuterinę

platformą. Lipant “iš apačios aukštyn” galima neužlipti į sprendžiamą

problemą. Todėl praktikoje dažniausiai abi paradigmos yra derinamos

viena su kita.

"Iš viršaus žemyn"

"Iš apačios aukštyn"

Trūkis

Kompiuterinė platforma

Sprendžiama problema

Page 23: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

23

Riešuto paradigma Riešuto paradigma • Programų sistema kuriama kaip specializuota virtualioji

mašina, turinti visas duomenų struktūras ir komandas, pritaikytas reikiamai problemai spręsti, o taip pat tą problemą sprendžiančią programą.

– Virtualiajai mašinai vykdant šią programą, yra įvykdoma reikiama užduotis.

• Po to, žingsnis po žingsnio konstruojamos naujos, žemesnio lygmens virtualiosios mašinos, skirtos aukštesnio lygmens mašinoms įgyvendinti

– Kiekviena tokia mašina patikslina (realizuoja) aukštesnio lygmens virtualiosios mašinos komandas ir duomenų struktūras.

Page 24: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

24

Riešuto paradigma Riešuto paradigma

• Procesas baigiamas tada, kada visos aukštesnio lygmens mašinos komandos ir duomenų struktūros yra realizuotos kokia nors programavimo kalba.

• Iš esmės, tai specialus paradigmos “iš viršaus žemyn” atvejis

– Kiekvienas abstrakcijos lygmuo čia projektuojamas kaip virtualioji mašina.

– Pagrindinė idėja yra palaipsniui pertvarkyti probleminio pobūdžio virtualiąją mašiną į kompiuterinės platformos lygmens mašiną.

Page 25: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

25

Riešuto paradigma Riešuto paradigma • Riešuto paradigmą galima traktuoti ir kaip specialų

paradigmos “iš apačios aukštyn atvejį”:

– šiuo atveju PS pradedama kurti nuo vadinamojo “branduolio”,

t.y. virtualiosios mašinos, realizuojančios bazines sistemos

funkcijas;

– šios mašinos kalba programuojamos papildomos funkcijos, t.y.

kuriama nauja virtualioji mašina, kuri tarsi “kevalas” padengia

“branduolį”;

– procesas tęsiamas tol, kol sukuriama sistema, tenkinanti turimą

reikalavimų specifikaciją.

Page 26: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

26

Riešuto paradigma

Realus

kompiuteris

Makroinstrukcijų

interpretatorius

Operacinė sistema

C

ko

mp

iliatoriu

s

Ada

kompiliatorius

For

tran

kom

piliat

oriu

s

Lisp

kompiliatorius Pascal

kompiliatoriusB

asic

interp

retatoriu

s

Ase

mbl

eris

...................

C mašina

Fortran mašina

Lisp mašina

Ada mašina

Pascal mašina

Basic mašina

Asemblerio mašina

Page 27: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

27

Iteracinė paradigma Iteracinė paradigma

• Vadovaujantis šia paradigma

– kuriamas ir testuojamas būsimosios PS prototipas

(funkciniu ar kitais požiūriais neišbaigta PS);

– prototipas perdirbamas į labiau išbaigtą variantą (naują

prototipą);

– procesas tęsiamas kol galų gale sukuriama išbaigta PS,

tenkinanti reikalavimų specifikaciją.

Page 28: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

28

Iteracinė paradigma

Sommerville, 2000

Establishprototypeobjectives

Defineprototype

functionality

Developprototype

Evaluateprototype

Prototypingplan

Outlinedefinition

Executableprototype

Evaluationreport

Prototipo

tikslų

nustatymas

Prototipo

funkcionalumo

nustatymas

Prototipo

kūrimas

Prototipo

vertinimas

Veikiantis

prototipas Vertinimo

rezultatai

Funkciniai

reikalavimai Darbų planas

Page 29: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

29

Iteracinė paradigma

Sommerville, 2000

Build prototypesystem

Develop abstractspecification

Use prototypesystem

Deliversystem

Systemadequate?

YES

N

Parengti PS

specifikaciją

Pateikti

užsakovui

Sukurti (perdirbti)

prototipą

Išbandyti

prototipą

Ar

tinkamas?

Page 30: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

30

Iteracinė paradigma

Sommerville, 2000

Vadovaujantis šia paradigma, nuosekliai vienas

po kito vyksta sistemos reinžinerijos projektai.

Understanding andtransformation

Existingsoftware system

Re-engineeredsystem

Design andimplementation

Systemspecification

Newsystem

Software re-engineering

Forward engineering

Projektavimas ir

realizacija

Analizė ir

perdarymas

Nauja

sistema

Sistemos

specifikacija

Esama programų

sistema

Perdaryta

sistema

Tiesioginė inžinerija

PS reinžinerija

Page 31: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Boehm spiralės paradigma

• PS procesas atvaizduojamas kaip spiralė, o ne kaip

ciklinė veiksmų seka.

• Kiekvienas spiralės ciklas vaizduoja vieną PS

procesą.

• Fazės nefiksuojamos (pvz. reikalavimų specifikacija

arba projektavimas). Spiralės ciklai pasirenkami

pagal poreikį.

• Ypatingas dėmesys kreipiamas rizikų identifikavimui

ir valdymui.

31

Page 32: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Boehm spiralės paradigma

32

Page 33: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Spiralės sektoriai

• Siekinių nustatymas

– Nustatomi fazes specifiniai siekiniai (tikslai)

• Rizikos vertinimas ir mažinimas

– Įvertinama rizika ir apibrėžiamos veiklos rizikos mažinimui.

• Projektavimas, kodavimas, atestavimas

– Parenkama PS paradigma, labiausiai tinkanti projektui.

• Planavimas

– Projekto tarpinis vertinimas ir sekančios spiralės fazės planavimas.

33

Page 34: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Spiralės paradigmos naudojimas

• Spiralės paradigma padeda suprasti iteracinį PS

projekto vystymo modelį vertinti rizikas kiekvienoje

fazėje.

• Spiralės paradigma praktikoje naudojama retai.

34

Page 35: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

5 tema 35

Evoliucinė paradigma

• Sistema yra kuriama kaip užsakovui vienas po kito pateikiamų papildinių (increments) seka:

– suprojektavus visos sistemos architektūrą, kuriami ir pateikiami užsakovui tos sistemos “branduolys” (svarbiausios funkcijos) ir jo papildiniai;

– kiekvienam papildiniui rengiama jo reikalavimų specifikacija ir jo projektinė dokumentacija;

– kol kuriamas naujas papildinys, vartotojai dirba su einamąja PS versija ir išryškina jos trūkumus.

Page 36: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

36

Evoliucinė paradigma

Sommerville, 2000

Validateincrement

Build system

incrementSpecify system

incrementDesign system

architecture

Define system

deliverables

Systemcomplete?

Integrateincrement

Validatesystem

Deliver finalsystem

YES

NO

Nustatyti produkto reikalavimus

Suprojektuoti architektūrą

Specifikuoti papildinį

Sukurti papildinį

Išbandyti papildinį

Integruoti papildinį

Išbandyti sistemą

Pateikti galutinį produktą

Ar sistema pabaigta?

Page 37: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

37

Evoliucinė paradigma

Sommerville, 2000

ValidationFinal

version

DevelopmentIntermediate

versions

SpecificationInitial

version

Outline

description

Concurrent

activities

Lygiagrečios

veiklos

Pradinė

versija

Galutinė

versija

Tarpinės

versijos

Pradinis

aprašas

Specifikavimas

Kūrimas

Bandymai

Page 38: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

38

Evoliucinė paradigma

Ekstremalus programavimas (extreme programming)

• Specialus (šiuo metu labai populiarus) evoliucinės paradigmos atvejis, numatantis, kad kuriami ir užsakovui pateikiami labai maži papildiniai:

– grindžiamas nuolatiniu kodo tobulinimu, tiesioginiu vartotojo dalyvavimu PS kūrimo procese ir programavimu poromis;

– priskiriamas prie “judriųjų (agile) metodų”

termino “ekstremalus” dėl neigiamų asociacijų pradedama atsisakyti.

Page 39: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

39

Evoliucinė paradigma

Ekstremalus programavimas

• Programavimas poromis:

– prie ekrano sėdi dviese ir kartu rašo programą;

– šitaip vienas kitą tikrina ir išvengia daugelio klaidų;

– be to, kiekvieną programą žino mažiausiai du

žmonės ir, jei vienam kas nors atsitiko, kitas gali tą

programą keisti ir taisyti.

Page 40: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

40

Evoliucinė paradigma

Evoliucinio kūrimo paradigma

• Evoliucinė paradigma yra panaši į iteracine, tačiau yra sukuriama geriau struktūrizuota PS ir jos kūrimo procesą yra lengviau valdyti.

– PS funkcionalumas pateikiamas užsakovui anksčiau (nors ir dalimis);

– pradiniai papildiniai vaidina prototipų vaidmenį, nes padeda patikslinti vėlesnių papildinių reikalavimus;

– sumažėja projekto žlugimo rizika;

– galima geriau išbandyti (daugiau testavimo) svarbiausias sistemos funkcijas.

Page 41: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

41

Komponentinė paradigma (Reused oriented software engineering)

Sistema renkama iš turimų komponentų:

– grindžiama daugkartiniu rinkoje parduodamų

komponentų (COTS – components of the shelf)

panaudojimu;

– didelę svarbą įgyja komponentų integravimo

metodai;

– labai svarbu, kiek reikia pastangų komponentui

perprasti.

Page 42: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

5 tema 42

Komponentinė paradigma • Programų sistemos kūrimas pradedamas komponentų

analize ir jų reikalavimų keitimu.

• Dažniausiai iš komponentų surenkama tiktai tam tikra

kuriamos PS dalis, todėl komponentinė paradigma

turi būti kombinuojama su kitomis paradigmomis.

Page 43: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

43

Komponentinė paradigma

Sommerville, 2000

Requirementsspecification

Componentanalysis

Developmentand integration

System designwith reuse

Requirementsmodification

Systemvalidation

Reikalavimų specifikavimas

Komponentų analizė

Reikalavimų keitimas

Komponentinis projektavimas

Sistemos bandymai

Kūrimas ir integravimas

Reused oriented software engineering

Page 44: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

44

Karkaso paradigma Karkaso paradigma

• Tai specialus programų sistemų šeimos paradigmos atvejas.

– dirbant pagal šią paradigmą, ruošinys yra kuriamas kaip objektinis ar kitoks PS sistemos architektūrinis karkasas (apibendrinta parametrizuota PS);

– konkreti PS sistema yra kuriama konkretizuojant karkasą (suteikiant parametrams konkrečias reikšmes) ir užpildant jį konkrečiu funkcionalumu;

– šitaip, pavyzdžiui, kuriamos vadinamosios verslo procesų valdymo sistemos (ERP paketai).

Page 45: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

45

Karkaso paradigma Karkaso paradigma

• Architektūrinis karkasas yra tam tikri PS “griaučiai”

– realizuojamos duomenų struktūros, modulių interfeisai, jų sąveika ir kiti konstrukciniai PS ypatumai;

– tačiau pats karkasas nėra užpildytas jokiu konkrečiu

funkcionalumu t.y. jame pačių modulių realizacijos nėra.

Page 46: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

5 tema 46

Karkaso paradigma Karkaso paradigma • Objektinis karkasas kuriamas kaip tarpusavyje susietų

abstrakčiųjų klasių rinkinys

– abstrakčiosios klasės naudojamos paveldėjimo hierarchijoms konstruoti;

– jos neturi realizacijų, jose apibrėžtos tik virtualios

operacijos t.y. karkase klasių realizacijos nėra.

Page 47: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

47

Karkaso paradigma Objektiniai karkasai iš esmės skiriasi nuo klasių bibliotekų

– bibliotekos tiražuoja programų kodą, karkasai realizuoja ir tiražuoja PS šeimai būdingas architektūrines bendrybes (tipinius projektavimo sprendimus);

– naudojant klasių biblioteką valdymo srautas teka į vieną pusę: iš klasių biblioteką naudojančios programos į bibliotekos klases;

– naudojant objektinį karkasą, valdymo srautas yra abipusis, nes, viena vertus, programos klasės paveldi abstrakčiųjų karkaso klasių ypatumus, o, kita vertus, virtualiosios operacijos, panaudojant dinaminio susiejimo mechanizmą (dynamic binding), susiejamos su jas realizuojančiu kodu programos vykdymo metu.

Page 48: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

5 tema 48

Karkaso paradigma

Dalykinės

taksonomijos Dalykinės

programų

sistemos

Dalykinių sričių

modeliai

Architektūros stiliai

Tipiniai projektiniai sprendimai

Karkasai

Karkasų užpildai

Sistemos kūrimo maršrutas

Naujo karkaso

kūrimas

Užpildų

kūrimas

Page 49: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

49

Karkaso paradigma Karkaso paradigma

• Norint karkaso pagrindu sukurti konkrečią PS šeimos sistemą reikia sukurti karkaso klasėmis numatytą funkcionalumą realizuojantį kodą (karkaso užpildą)

– paprastai kartu su karkasu yra tiražuojamas ir standartinis užpildas (arba bent jau jo dalis);

– realizuojant konkrečią PS, standartinis užpildas gali būti visas arba iš dalies pakeistas nestandartine, tai konkrečiai sistemai būdinga realizacija.

Page 50: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

50

Sintezės paradigma Sintezės paradigma

• Dirbant pagal šią paradigmą, formali (matematinė)

sistemos specifikacija pagal formalias taisykles

(automatiškai) transformuojama į veikiančią PS.

– transformavimas atliekamas per kelis tarpinius žingsnius;

– transformacijos neįneša klaidų, todėl kodas visuomet

atitinka sistemos specifikaciją;

– todėl atpuola būtinybė testuoti šitaip gautą kodą.

Page 51: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

51

Sintezės paradigma

R2Formal

specificationR3

Executableprogram

P2 P3 P4

T1 T2 T3 T4

Proofs of transformation correctness

Formal transformations

R1

P1

Formalios transformacijos

Transformacijų korektiškumo įrodymas

Formali

specifikacija

Programos

kodas

Page 52: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

52

Sintezės paradigma Sintezės paradigma

• Problemos

– reikalingi specialūs įgūdžiai ir aukšta kvalifikacija;

– sudėtinga formaliai specifikuoti kai kuriuos sistemos aspektus, pavyzdžiui, vartotojo sąsają;

– darant sistemos pakeitimus, prireikia sukurti naujas transformacijas ir įrodyti jų teisingumą;

– kaip taisyklė, nepavyksta keisti šitaip kuriamų sistemų mastą (does not scale).

• Taikymų sritis

– Kritinės programų sistemos.

Page 53: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Veiklos kaštų pasiskirstymas Krioklio modelis

It Evoliucinis kūrimas

Komponentinis kūrimas

Kūrimo ir vystymo kaštai ilgai naudojamoms sistemoms

S Sistemos vystymas

1 0 2 00 3 0 400 0

S Sistemos kūrimas

Specifikavimas Projektavimas Kūrimas Integravimas ir testavimas

2 5 5 0 7 5 1 00 0

Specifikavimas Kūrimas Integravimas ir testavimas

2 5 5 0 7 5 1 00 0

Specifikavimas Iteratyvus kūrimas S Sistemos testavimas

2 5 5 0 7 5 1 00 0

Page 54: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Pakeitimų valdymas

• Pakeitimai programų kūrimo metu - pati

didžiausia problema dideliuose projektuose.

– Užsakovo poreikių pakeitimai veda prie naujų arba

modifikuotų reikalavimų.

– Platformų keitimas reikalauja naujų žinių ir

gebėjimų.

• Pakeitimai verčia atlikti papildomus darbus

realizuojant naujus funkcionalumus, kas didina

projekto kainą.

54

Page 55: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Pakeitimų kainos mažinimas

• Reikia naudoti tokias programų inžinerijos paradigmas, kuriose naudojamos veiklos sukuria mažesnes

pakeitimų kainas. – Pavyzdžiui evoliucinė, iteracinė paradigmos, judrūs

programų kūrimo metodai.

– Naudojant mažesnes iteracijas dažniau sukuriami prototipai, kuriuos vertina vartotojai, pareikšdami galimus pakeitimus, kurie išaugia mažesnes darbų apimtis pakeitimams įgyvenidinti.

– Dažnesnius evoliuciniai papildiniai taip pat mažina pakeitimų darbų kiekį.

55

Page 56: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

PS inžinerijos veiklos

• PS inžinerijos procesas – tai suderintų veiksmų seka:

– specifikuojant,

– projektuojant,

– realizuojant

– testuojant

programų sistemas.

• Priklausomai nuo pasirinktos PS kūrimo paradigmos, šios

veiklos gali būti vykdomos nuosekliai (krioklio

paradigma) arba būti persidengiančios (iteracininės

paradigmos).

56

Page 57: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Programinės įrangos specifikavimas

• Specifikavimas – tai procesas nustatantis, kokios paslaugos reikalingos užsakovui ir apibrėžiantis apribojimus sistemos naudojimui bei kūrimui.

• Reikalavimų inžinerija

– Galimybių nagrinėjimas • Ar yra techninės ir finansinės galimybės sukurti pageidaujamą PS.

– Reikalavimų rinkimas ir analizė

• Ko užsakovams reikia, kokie jų lūkesčiai ir ką jie tikisi gauti iš PS.

– Reikalavimų specifikavimas

• Nustatomi detalūs PS reikalavimai.

– Reikalavimų atestavimas

• Tikriname ar nustatyti ir aprašyti reikalavimai yra teisingi.

Page 58: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Reikalavimų inžinerijos procesas

Feasibilitystudy

Requirementselicitation and

analysisRequirementsspecification

Requirementsvalidation

Feasibilityreport

Systemmodels

User and systemrequirements

Requirements

document

Reikalavimų

nagrinėjimas ir

ataskaita

Reikalavimų rinkimas ir

analizė, sistemos modeliai Reikalvimų specifikavimas,

reikalavimai vartotojui ir sistemai

Reikalavimų atestavimas ir

reikalavimų dokumentas

Page 59: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Projektavimas ir realizacija

• Procesas, keičiantis sistemos specifikaciją į veikiančią sistemą

• Programų sistemų projektavimas – programinės įrangos, realizuojančios specifikaciją,

struktūros projektavimas

• Realizavimas (programavimas) – paverčia struktūros projektą į veikiančią programą

• Projektavimas ir realizacija yra glaudžiai susijusios ir gali persidengti.

Page 60: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Projektavimo proceso veiklos

• Architektūrinis projektavimas – Nustatoma struktūros schema, komponentai, ryšiai

• Sąsajos projektavimas – Nustatomos sąsajos tarp atskirų komponentų

• Komponentų projektavimas – Komponentų detalus projektavimas, nustatymas kaip jie

veikia.

• Duomenų bazių struktūros projektavimas – Nustatomos duomenų struktūros, sukuriamas duomenų

bazės projektas

• Algoritmų projektavimas – Apibrėžiami, projektuojami duomenų apdorojimo

algoritmai.

Page 61: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Projektavimo procesas

61 Chapter 2 Software Processes

Page 62: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Programavimas ir derinimas

• Projekto realizavimas – tai programavimas ir klaidų

šalinimas (debuging).

• Programavimas yra individuali veikla - tai nėra

bendras programavimo procesas.

• Programuotojai atlieka dalį programos testavimo ir

klaidų ištaisymo programos derinimo procese.

Page 63: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Derinimo procesas

Locateerror

Designerror repair

Repairerror

Re-testprogram

Nustatyti

klaidos vietą

Klaidos ištaisymo

projektavimas

Klaidos ištaisymas Programos

pakartotinis

testavimas

Page 64: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Programinės įrangos atestavimas

• Tikrinimas (verification ) ir atestavimas (validation ) turi parodyti, kad sistema atitinka specifikaciją ir sistemos užsakovo reikalavimus.

• Susidedamosios dalys: – tikrinimo bei peržiūros procesai

– sistemos testavimas

• Sistemos testavimas yra jos vykdymas su testavimo duomenimis iš realiai naudojamų duomenų specifikacijos.

Page 65: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Testavimo procesas

Sub-systemtesting

Moduletesting

Unittesting

Systemtesting

Acceptancetesting

Componenttesting

Integration testing Usertesting

Komponentų

testavimas Apjungiantis

testavimas

Vartotojų

testavimas

Page 66: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Testavimo etapai • Komponentų testavimas

– Atskirų komponentų testavimas

• Modulių testavimas

– Susijusių komponentų rinkinių testavimas

• Posistemės testavimas

– Moduliai sujungiami į posistemes ir testuojami. Didžiausias

dėmesys turi būti skiriamas interfeiso testavimui

• Sistemos testavimas

– Vientisos sistemos ir pasireiškiančių savybių testavimas

• Tinkamumo testavimas

– Sistemos tinkamumo testavimas su vartotojo duomenimis

Page 67: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Kūrimo ir testavimo fazės

Requirementsspecification

Systemspecification

Systemdesign

Detaileddesign

Module andunit codeand tess

Sub-systemintegrationtest plan

Systemintegrationtest plan

Acceptancetest plan

ServiceAcceptance

testSystem

integration testSub-system

integration test

Page 68: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Programinės įrangos tobulinimas

Evolution

• Programinei įrangai būdingas lankstumas ir galimybė keistis.

• Kintant verslo sąlygoms keičiasi reikalavimai, todėl programinė įranga palaikanti verslą irgi turi keistis.

• Kūrimo svarba vis labiau mažėja, nes vis mažiau sistemų yra visiškai naujos.

Page 69: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Sistemos evoliucija

Assess existing

systems

Define systemrequirements

Propose systemchanges

Modify

systems

Newsystem

Existing

systems

Nustatyti reikalavimus

sistemai

Įvertinti egzistuojančias

sistemas Siūlyti sistemos

pakeitimus

Modifikuoti

sistemas

Egzistuojančios

sistemos

Naujos sistemos

Page 70: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

Reziumė

• Programų sistemų kūrimo procesas yra veiksmų

seka, kurios tikslas sukurti produktą.

• Proceso veiklos organizuojamas (išdėstomos)

remiantis tam tikromis paradigmomis (modeliais).

• Pagrindiniai PS kūrimo proceso veiklos yra:

– specifikavimas, projektavimas ir realizacija

(programavimas), atestavimas ir tobulinimas.

• Iteraciniai proceso modeliai nusako programinės

įrangos kūrimo procesą kaip veiksmų ciklą.

70

Page 71: Programų sistemų inžinerija 5 paskaita Programų sistemų ...dma.vgtu.lt/PSI/PSI_3.pdfU n ders tan di ng an d t rans fo rmat io n Ex is t in g s oft ware s ys tem Re-eng in eered

71

Klausimai?