Professional Documents
Culture Documents
proizvoda
Uvodno predavanje
Uvodno ponavljanje osnovnih pojmova iz
podruja programskog inenjerstva
2
Programski proizvod (PP)
3
Svojstva programskih proizvoda
Osnovna svojstva
Nevidljivost, sloenost, promjenljivost, interoperabilnost
Ostala svojstva
Programski jezik, brzina sklopovlja, memorija
Arhitektura programa
Funkcionalna
Objektno orijentirana
Mogu se mijenjati
4
Parametri kvalitete PP
5
ivotni ciklus programskog proizvoda
6
ivotni ciklus programskog proizvoda
Dizajn sustava
Dizajn programa
Implementacija programa
Testiranje programa
Integracijsko testiranje
Testiranje sustava
Isporuka
Odravanje
Povlaenje iz uporabe
7
Ciljevi razvoja programskog proizvoda
8
Programsko inenjerstvo
Sustavni razvoj
Raunalna podrka razvoju programskih proizvoda (CASE)
Detaljna analiza korisnikih zahtjeva i formalna specifikacija
Demonstracija ranih verzija sustava (prototip)
Vie napora uloiti u razvoj koda bez neispravnosti (statike
provjere koda)
9
Aspekti programskog inenjerstva
Proces
pretpostavka dobar proces -> dobar proizvod
Tehnologija
metode i pomagala
Osoblje
programeri, timovi
10
Procesi openito
resursi)
nain na koji se razvija (kodira, testira, ...) softver
upravljanje, inenjerstvo
proizvodu)
11
Procesi openito (2)
Svrha procesa
upute za obavljanje posla podjela i koordinacija
Koordinacija i komunikacija
glavni problemi velikih projekata
12
Elementi procesa
Skup aktivnosti
Redoslijed aktivnosti
Meuovisnosti izmeu aktivnosti
Izvritelji aktivnosti
Ulazi aktivnosti
Rezultati aktivnosti
Trajanje aktivnosti
Pomagala
13
Elementi procesa (2)
Komponente Interakcije
tok informacija
aktivnosti
tok artefakata
rezultati aktivnosti nadzor
(kod, dokument) komunikacija
izvritelji vremenski raspored
ovisnosti
pomagala
konkurentnost
14
Znaajke procesa
Vidljivost
Prihvatljivost
Pouzdanost
Robusnost
Brzina
Evolucija
Kvaliteta
15
Razine definicije procesa
16
Programski proces
koordinacija aktivnosti
Resursi
17
Programski proces (2)
18
Programski proces (3)
19
Uloga programskih procesa
POMAGALA
METODE
PROCES
KVALITETA
20
Uloga programskih procesa (2)
Razvojna
tehnologija
Kvaliteta prog.
procesa Kvaliteta PP Razvojni tim
Trokovi i
rokovi
21
Definicija programskih procesa
automatizacija procesu
22
Prilagodba programskih procesa
veliina projekta
regulatorni zahtjevi
industrijska praksa
organizacijska kultura
23
Automatizacija
Alati za podrku
podravaju izvoenje procesa
24
Znaajke programskih procesa
Proces
Proces
25
Znaajke programskih procesa (2)
promjenjivost
nevidljivost
26
Aspekti analize programskih procesa
Definicija
procesa
27
Inenjerstvo programskih procesa
28
Mitovi o procesu razvoja PP-a
2.Definiranje procesa
usporava razvoj
Croz 29
Mitovi o procesu razvoja PP-a
30
Generiki modeli CPP
odravanju
na razliite naine kombiniraju razliite procesne aktivnosti
31
Ad hoc model
32
Vodopadni model
Definicija i
analiza
zahtjeva
Dizajn
Implementacija i
testiranje
programa
Integracija i
testiranje
sustava
Rad i
odravanje
33
Evolucijski model
Prvo rjeenje
Specifikacija
Grubi
opis Razvoj Meurjeenja
zahtjeva
Provjera
Konano
rjeenje
RAD I ODRAVANJE
34
Iterativni model
35
Spiralni model
1 2
Analiza problema Analiza rizika
Procjena alternativa;
identifikacija i smanjenje rizika
Odredjivanje ciljeva,
alternativa i dodatnih zahtjeva
za svaki novi ciklus tj. spiralu
Poetak
4 Planiranje Razvoj i 3
validacija
Planiranje sljedeeg ciklusa u Konstrukcija i razvoj proizvoda
spirali
Napredovanje projekta
po spiralnim ciklusima
36
Komponentni razvoj
37
Konkurentnost u softverskoj industriji i
upravljanje kvalitetom
38
Softverska industrija
Referenca [3]
39
Konkurentnost u softverskoj industriji
Porast konkurencije:
pootravanje osnovnog skupa zahtjeva na razvoj, izvoenje i
odravanje programskog proizvoda
40
Konkurentnost u softverskoj industriji
inovativnost i uinkovitost
razvoja
inovativnost nove i privlane Kvaliteta
usluge za korisnike
uinkovitost razvoja i
Trokovi Vrijeme
odravanja osvajanje
konkurencijske prednosti
41
Konkurentnost u softverskoj industriji
43
Norme za osiguranje kvalitete
44
ISO/IEC 15288
45
ISO 9000
ISO 9001
za organizacije koje dizajniraju, razvijaju i odravaju svoje
proizvode (od ideje do realizacije)
definira generiki model procesa kvalitete
47
ISO 9000 i upravljanje kvalitetom
ISO 9000
modeli kvalitete
utvruje se kao
podrava
48
Organizacijske norme za proizvode i
procese
Proizvodi Procesi
Dokumenti za upravljanje
Standardi imenovanja dokumenata
konfiguracijom
49
Problemi s normama
Rjeenja:
razvijatelji moraju shvatiti ideju koritenja predloenog
standarda, koji su ciljevi i prednosti (razvijatelji trebaju biti
aktivno ukljueni u proces razvoja)
osigurati automatiziranu podrku
50
Uinak i uinkovitost razvoja
51
Uinak i uinkovitost razvoja (2)
52
Uinak i uinkovitost razvoja (3)
53
Total quality management -TQM
korisnika i zaposlenika
Strategija je fokusirana na svjesnost ljudi u organizaciji te njihovom
doprinosu kontinuiranoj prilagodbi potrebama korisnika
54
SPICE
Determination
Rezultat rada - ISO/IEC 15504 norma koja daje okvir za procjenu procesa
ivotnog ciklusa programskog proizvoda.
Prva revizija norme analizirala je iskljuivo procese razvoja
programskog proizvoda
Norma se proirila i na sve ostale poslovne procese razvoja
programskog proizvoda
Specificira okvir mjerenja koji se moe koristiti zajedno s razliitim
referentnim procesnim modelima.
55
CMM i CMMI
56
CMM
Optimizirajui
- upravljanje procesnim promjenama
- upravljanje tehnolokim promjenama
- prevencija pogreaka
Upravljivi
- upravljanje kvalitetom SW 1 godina
Definirani - kvantitativno upravljanje procesima
- recenzije i provjere
- koordinacija razliitih timova
- upravljanje SW proizvodima
- integrirano upravljanje SW 1 godina
Ponovljivi - program obrazovanja
- upravljanje konfiguracijama - def. org. procesa
- osiguranje kvalitete SW-a - procesna orijentacija org.
- upravljanje kooperantima
- praenje SW projekata 1 godina
- planiranje SW projekata
- upravljanje zahtjevima
1-2 godine
Inicijalni
58
CMMI
organizacija
Osnovna motivacija je analiza vlastitih mogunosti i snage,
te utvrivanje podruja za poboljanje.
Nezavisne procjeniteljske organizacije koje provode analizu
zrelosti organizacija u programskoj industriji.
Kao rezultat procjenjivanja
organizacije dobivaju certifikat koji postaje neizostavan
61
Aspekti istraivanja procesa CPP
62
Razine analize procesa CPP
meta razina
skup openitih koncepata za analizu i definiranje modela
procesa koji e se koristiti za izvedbu projekta razvoja i/ili
odravanja programskog proizvoda
razina modela procesa
dokumentiranje, komuniciranje i poboljavanje predloenog
okvira procesa koji e se koristiti tijekom projekta (razvoja
i/ili odravanja) za odreeni programski proizvod
razina izvoenja
63
Modeliranje programskog procesa
kooperativni
konkurentni
64
Modeliranje programskog procesa (2)
65
Modeliranje programskog procesa (3)
66
Postupci pri modeliranju programskog
procesa
Formulacija problema
Definiranje formalnog modela
Razvoj raunalnog modela
Validacija i verifikacija modela
Podeavanje modela
Izvoenje eksperimenata nad modelom
Procjena modela
67
Mree repova
68
Mree repova
69
Osnovne performanse sustava ekanja i
posluivanja
Notacija
Koristi se standardna Kendall-Lee notacija F/H/m, gdje F
oznaava distribuciju meudolaznih vremena, H oznaava
distribuciju vremena posluivanja, a m predstavlja broj
paralelnih posluitelja u sustavu.
70
Osnovne performanse sustava ekanja i
posluivanja
Vrijeme ekanja: Tw
Vrijeme zadravanja: Tq
Vrijeme posluivanja: Ts
Tq=Tw+Ts
71
Osnovne performanse sustava ekanja i
posluivanja
Duljina repa: Lw
Srednji broj korisnika u sustavu: Lq
Repovi s prioritetima
Ukupni intenzitet nailazaka:
3
= i (2.13)
i 1
72
Primjena simulacije u analizi programskih
procesa
73
Uvodno o simulaciji
poboljanja procesa
Podrka
odluivanju
tehnologija za
analizu i smanjenje rizika
poboljanje procesa
prilagodbu postojee i uvoenje nove tehnologije
75
Simulacijski modeli
76
Simulacija i strateki menadment
77
Simulacija i planiranje projekta
Pitanja:
Koji procesi e se koristiti u novom projektu, A ili B?
78
Simulacija i nadzor projekta
79
Simulacija i poboljanje procesa
razliitim prijedlozima
predvianje utjecaja uvoenja promjene u proces prije
implementacija u stvarnu praksu
simulacijski modeli se razvijaju isto kao pri planiranju.
ogranienja)
80
Simulacija i razumijevanje procesa
kvalitete
razumijevanje redoslijeda i ovisnosti aktivnosti,
varijabilnost rezultata
81
Simulacija i edukacija
82
Simulacijske paradigme
83
Paradigme simulacije softverskih procesa
84
Paradigme simulacije softverskih procesa
85
Simulacijske paradigme (2)
Kontinuirana simulacija
strateke analize, poetne aproksimacije, dugoroni
repova i sl.
86
Analiza najee koritenih paradigmi
87
Trendovi
Vezano uz paradigme
Kontinuirana i simulacija diskretnih dogaaja najee
koritene
Uvoenje novih paradigmi
Vezano uz granularnost
Vea primjena diskretne simulacije u odnosu na
kontinuiranu
88
Analiza najee koritenih paradigmi (2)
89
Granularnost simulacijskih modela
Diskretna simulacije
proces se modelira detaljno na razini pojedinih aktivnosti
prati se stanje pojedinih aktivnosti i njihove meuovisnosti,
te stanja parametara za opis pojedinih aktivnosti
90
Analiza paradigmi s obzirom na granularnost
91
Primjena simulacije u analizi programskih
procesa
Realni svijet
(problem)
Ko
ce
ija
ent
Va
ptu
ac
ela
erim
lid
a
lid
lno
od
ac mod
va
.m
ija
p
mo
rna
Eks
ok
ko ela
de
k tu
jel
nc
lira
l. c
u
ep
Str
Validacija
nje
tua
Va
podataka
ln
og
Raunalni Verifikacija Konceptualni
model model
Kodiranje
94
Validacija i verifikacija modela (3)
95
Validacija i verifikacija modela (4)
96
Problemi vezani uz validaciju
97
Problemi vezani uz validaciju
98
Metode verifikacije i validacije
modela.
Najee se primjenjuje prouavanje projektne
99
Metode verifikacije i validacije
Validacija podataka
ispitati pouzdanosti i vjerodostojnost svakog izvora
100
Metode verifikacije i validacije
potrebno je usporediti:
prosjene vrijednosti
rasprenje podataka
distribucije podataka (moe i vizualno)
odnose izmeu ulaznih i izlaznih veliina za realni sustav i za
model.
statistiki testovi koji omoguuju takve usporedbe
102
Metode verifikacije i validacije
Odluke na
Konceptualni Raunalni Rezultati temelju
Sustav
model model simulacije rezultata
Analiza Programiranje Simulacija
simulacije
i podaci
104
Metoda za modeliranje i odreivanje performansi
procesa odravanja telekomunikacijske
programske podrke
105
Ciljevi metode i podruja primjene
106
Podruja primjene metode
107
Modeli i tehnike unutar metode
108
Programski proizvodi i kontekst metode
109
Pretpostavke koritenja metode
110
Pretpostavke koritenja metode (2)
111
Osnovne faze metode
Planiranje i priprema
Modeliranje procesa
Analiza procesa
Izvoenje procjene
Izvjetaj o rezultatima
112
Aktivnosti metode
Definiranje projekta
Razvoj modela procesa odravanja na temelju mree repova
Prikupljanje i analiza podataka
Simulacija nad modelom mree repova
Analiza performansi dobivenih simulacijom
Analiza i procjena novog dizajna procesa
113
Aktivnosti metode
114
Aktivnosti metode (2)
Process
Baza Proces odravanja odravanja prog.
podataka programske podrke 1 podrke x
Prijedlog
Teorija sustava
Analiza
posluivanja
podataka
Analitika
Simulacija
115
Pretpostavke modeliranja
116
Mree repova
117
Otvorena mrea repova
p11
1 p1D
p1M
p12
pS1 p21
pMM
pMD DESTI-
SOURCE 2 p2M M NATION
p22
pM2
pSM
Baza
Proces odravanja SW-a
podataka
Analiza procesa
Analiza
podataka
Formalni opis procesa
120
Prikupljanje kvantitativnih podataka
121
Prikupljanje kvalitativnih podataka
122
Prikupljanje kvalitativnih podataka
123
Studijski primjer procesa odravanja
programske podrke
Odbijeno
Programer
Ekspert Dizajn
Otvorena Provjera
MR Analiza korekcija Implementacija
Odbijeno
Korekcija
Odbijeno pripravna za
testiranje
Korekcija
Odobrenje Testiranje
Registracijski ured testirana
& Ekspert Programer
Ured za prihvat
rjeenja Ured za odravanje
124
Analiza studijskog primjera
125
Analiza studijskog primjera
126
Analiza studijskog primjera
pogreke u dokumentaciji,
127
Analiza studijskog primjera
128
Analiza studijskog primjera (2)
129
Analiza podataka
Ekspert-medjudolazna vremena
1,200.00
1,000.00
800.00
600.00 Taiexp (PA)
400.00
200.00
0.00
0.00 500.00 1,000.00
130
Konani model mree repova
131
Verifikacija i validacija
o prioritetu) - Tq
prosjeno vrijeme zadravanja MR-a u procesu za
132
Iskoristivost posluitelja
Analiza
Expert Odobrenje
MR zakljuenje
Sastanci
Ukupna iskoristivost = 44 %
Analiza
Teh.odgovor
Test
Korekcija
Programer Provjera
MR Zakljuenje
Sastanci
Ukupna iskoristivost = 75 %
133
Alternativni dizajn procesa 1
134
Usporedba performansi novih prijedloga
procesa
450
60
400 50
350
40
300
250 30
200
20
150
100 10
50
0
0 Exp.Analiza Exp.Odob. Exp.Zakljuenje Prog.AnalizaProg.Zakljuenje Provjera Test
135
Literatura
1. Zhang, He., B. Kitchenham ; D. Pfahl. Software Process Simulation over the Past
Decade: Trends Discovery from A Systematic Review. Proceedings of the ESEM
08, Kaiserslautern, Germany, 2008.
2. Kellner, M.I., R. J. Madachy, D. M. Raffo. Software process simulation modeling:
Why? What? How? Journal of Systems and Software, Volume 46, Issues 2-3,
1999.
3. Galinac, T. Poveanje uinkovitosti razvoja programskog proizvoda pomou
upravljanja procesom rane verifikacije. Doktorska disertacija, FER, Zagreb, 2009.
Mentori: Car, ., D. Huljeni.
4. Car, . Modeliranje procesa odravanja telekomunikacijske programske podrke.
Doktorska disertacija, FER, Zagreb, 2001. Mentor: Mikac, B.
5. SWEBOK - Software Enginnering Body of Knowledge , IEEE Computer Society,
2004, dokument dostupan na Internetu.
136