Upload
others
View
12
Download
0
Embed Size (px)
Citation preview
1
Humboldt University Berlin, University of Novi Sad, University of Plovdiv,University of Skopje, University of Belgrade, University of Niš, University of Kragujevac
Version: Feb. 20, 2004 (D Nov. 13, 2003)
DAAD Project“Joint Course on Software Engineering”
Tema 2Kriterijumi kvaliteta za softverske proizvode
2
DAAD project „Joint Course on Software Engineering“ © 2
2. Kriterijumi kvaliteta za softverske proizvode
a) Koji kriterijumi kvaliteta su značajni za softverske proizvode?
b) Kako se mogu klasifikovati?
c) Standard ISO 9126
3
DAAD project „Joint Course on Software Engineering“ © 3
Motivacija
„ Softversko inženjerstvo ... bavi se ekonomičnimrazvojem softvera visokog kvaliteta.“
(Pagel / Six, s. 49)
Koje kriterijume kvaliteta Vi smatrate
za najznačajnije?
Koje kriterijume kvaliteta Vi smatrate
za najznačajnije?
značajno da razjasnimo:Koje karakteristike softvera određuju njegov kvalitet?
4
DAAD project „Joint Course on Software Engineering“ © 4
Kriterijumi kvaliteta za softverske proizvode
Source: Books of Balzert, Pagel/Six, Sommerville, Pomberger
SW - Kvalitet
Ispravnost
Pouzdanost
Robustnost
Efikasnost
Okrenutost korisniku
Lakoća održavanja
SkalabilnostČitkost
Ponovno korišćenje
Modularnost
Portabilnost
Kompatibilnost
Mogućnost testiranja
Cena...
5
DAAD project „Joint Course on Software Engineering“ © 5
Pouzdanost:
Ispravnost – Pouzdanost
Ispravnost:• Program se ponaša onako kako trebaodnosno, program ⇔ specifikaciji zahteva (zadatku)
• Problemi: ???• Softverski proizvod je ispravan, ali, ne postiže ono što jekupac očekivao.
Greške su retke i imaju samo beznačajne efekte.(Pagel,Six s. 53)
?
?
6
DAAD project „Joint Course on Software Engineering“ © 6
Robustnost
Robustnost:• Grubo: Savladavanje uticaja pogrešne okoline (greške u radu, pogrešne ulazne podatke, hardverske greške, izuzetne situacije)
• Precizno: „Programski sistem je robustan, ako su (negativni)uticaji grešaka u radu, pogrešnih podataka, ili hardverskihgrešaka, obrnuto proporcionalni verovatnoći pojave ovihgrešaka u aplikaciji.“
(Pomberger, s. 9 / Kopetz)
?
7
DAAD project „Joint Course on Software Engineering“ © 7
Scalabilnost– Portabilnost
Portabilnost:• Koliko je jednostavan prenos softvera na drugi računarili drugi operativni sistem?
• Stepen nezavisnosti računara i operativnog sistema.
• Softver je portabilan, kada je trud oko prenosa na drugi računar značajno manji od nove implementacije.
Skalabilnost:• Proširivost u odnosu na određene parametre:veći skupovi podataka, veći broj korisnika, ...
?
?
8
DAAD project „Joint Course on Software Engineering“ © 8
Okrenutost korisniku:
Lakoća održavanja – okrenutost korisniku
Lakoća održavanja:Koliko se jednostavno softverski sistem može izmeniti za potrebe• otklanjanja grešaka• poboljšanja• prenos?Faktori: Čitkost programa, dokumentovanost, modularnost
(Pomberger s. 8)Definisano po podosobinama:• Adekvatnost (recimo, mogući unos podataka mora korisniku
biti ograničen na neophodan)• Lakoća obuke• Robustnost (ovde: deo osobina okrenutosti korisniku)
?
?
9
DAAD project „Joint Course on Software Engineering“ © 9
2. Kriterijumi kvaliteta za softverske proizvode
a) Koji kriterijumi kvaliteta su značajni za softverske proizvode?
b) Kako se mogu klasifikovati?
c) Standard ISO 9126
10
DAAD project „Joint Course on Software Engineering“ © 10
Klasifikacija ?
SW - Kvalitet
IspravnostPouzdanost
RobustnostEfikasnostOkrenutostkorisniku
Lakoća održavanja
SkalabilnostČitkost
Ponovno korišćenje
Modularnost
PortabilnostKompatibilnostMogućnost testiranja
Cena...
Kako se ovaj skup kriterijuma kvaliteta može klasifikovati?
11
DAAD project „Joint Course on Software Engineering“ © 11
KIasifikacija kriterijuma kvaliteta
• Ispravnost• Pouzdanost• Skalabilnost• Robustnost• Efikasnost• Kompatibilnost
• Lakoća održavanja• Čitkost• Portabilnost• Ponovno korišćenje
(prema Meyer-u: spoljna osobina)
• Modularnost(npr. OO Softverska arhitektura)
• Mogućnost testiranja
spoljne (tokom izvršavanja)vidljive karakteristike: ono što korisnik može zapaziti (Def.: Meyer)
samo tokom rada na implementaciji (izvornom kodu): mogu zapaziti samo računarski stručnjaci
Kriterijumi kvalitetaeksterni interni
12
DAAD project „Joint Course on Software Engineering“ © 12
Kvalitet softvera sa raznih aspekata
dobro dokumentovannema mnogo grešaka
greške lake za pronalaženjepouzdan
relativno jednostavan za menjanječitak kod
lak za privikavanjejednostavan za unapređenje
jeftinzahteva malo memorije
brzpoboljšava produktivnost rukovanja
ispunjava zadatke kontinualno i korektnoniski troškovi održavanja
primenljiv u više aspekata
radi ono što očekujem
brzjednostavan za korišćenje
nudi željenu funkcionalnostbez ugrađenih grešaka
jednostavan za savladavanjene prekida rad
dobra uputstva za upotrebu
Kupac
Inženjer održavanja
Korisnik
From Pagel/Six S. 50/51
13
DAAD project „Joint Course on Software Engineering“ © 13
Interni i eksterni kriterijumi kvaliteta sa raznih aspekata
Kupac
Inženjer održavanja
Korisnik
interni kriterijumi kvaliteta
eksterni kriterijumi kvaliteta
Pouzdanost
Ispravnost
Okrenutostkorisniku
RobustnostEfikasnost
Jednostavnost održavanja
14
DAAD project „Joint Course on Software Engineering“ © 14
Interakcija između kriterijuma kvalitetai njihovog uticaja na cenu i vreme
Source: Pomberger, Software Engineering and Modula 2 p. 12
Cena
IspravnostPouzdanostAdekvatnostJednostavnost učenjaRobustnostČitkostIzmenljivost/ProširivostMogućnost testiranjaEfikasnostPortabilnost
Kor
ektn
ost
Pouz
dano
stAd
ekva
tnos
tJe
dnos
tavn
ost uče
nja
Rob
ustn
ost
Čitk
ost
Izm
enlji
vost
/Pro
širiv
ost
Mog
ućno
st te
stira
nja
Efik
asno
stPo
rtabi
lnos
t
Kriterijum kvaliteta
Vre
me
razv
oja
Vre
me
traja
nja
Cen
a ra
zvoj
aC
ena
ruko
vanj
aC
ena
održ
avan
jaC
ena
pren
osa
Criterijumi
Utiče na
+ 0 0 + 0 0 0 0 0+ 0 0 + 0 0 0 - 00 0 + + 0 0 0 + -0 0 0 0 0 0 0 - 00 + + + 0 0 + - -+ + 0 0 + + + - ++ + + 0 + 0 + - ++ + 0 0 + 0 + - +- - + - - - - - -0 0 - 0 0 + + 0 -
- + + 0- + - -- + - -- + 0 0- + + -+ 0 + ++ 0 + ++ 0 + + - + - -- - + +
- +- +- 0- 0- ++ +- ++ +- +- +
Vreme
15
DAAD project „Joint Course on Software Engineering“ © 15
2. Kriterijumi kvaliteta za softverske proizvode
a) Koji kriterijumi kvaliteta su značajni za softverske proizvode?
b) Kako se mogu klasifikovati?
c) Standard ISO 9126
16
DAAD project „Joint Course on Software Engineering“ © 16
Kvalitet
Tokom razvoja softvera, možemo uočiti razliku između kvaliteta• softverskog proizvoda
ISO 9126• razvojnog procesa softvera
ISO 9000 (Topic 24)
Koji aspekti su u današnje vreme
značajniji?
17
DAAD project „Joint Course on Software Engineering“ © 17
Kriterijumi kvaliteta softvera po ISO 9126
Kriterijumi kvaliteta softverapo ISO 9126
Funkcionalnost KorisnostPouzdanost
Efikasnost PortabilnostLakoća održavanja
Pogodnost
Tačnost
Interoperability
Saglasnost
Bezbednost
Zrelost
Osetljivost na greške
Mogućnost oporavka
Razumljivost
Jednostavnost učenja
Lakoća rukovanja
Mogućnost analize
Mogućnost izmene
Stabilnost
Mogućnost testiranja
Ponašanje u vremenu
Ponašanje prema resursima
Adaptabilnost
Mogućnost instalacije
Podesivost
Zamenljivost
18
DAAD project „Joint Course on Software Engineering“ © 18
ISO 9126: definicija glavnih karakteristika
Portabilnost
Lakoća održavanja
Efikasnost
Korisnost
Pouzdanost
Funkcionalnost
Kratak opisKarakteristikaStepen u kom softver zadovoljava zadate potrebe označene sledećim pod-osobinama: pogodnost, tačnost, interoperability, saglasnost i bezbednost.Količina vremena koliko je softver raspoloživ za upotrebu, označen sledećim pod-osobinama: zrelost, osetljivost na greške,mogućnost oporavka.Stepen u kojem je softber jednostavan za upotrebu označen sledećim pod-osobinama: razumljivost, jednostavnost učenja, lakoća rukovanja .Stepen u kojem softver optimalno koristi sistemske resurse, označen sledećim pod-osobinama: ponašanje u vremenu, ponašanje prema resursima.Jednostavnost kojom se mogu napraviti izmene na softveru, označena sledećim pod-osobinama: mogućnost analize, mogućnost izmene, stabilnost, mogućnost testiranja.Jednostavnost kojom se softver može premestiti iz jednog okruženja u drugo, označena sledećim pod-osobinama: adaptibilnost, mogućnost instalacije, podesivost, zamenljivost.
19
DAAD project „Joint Course on Software Engineering“ © 19
Najznačajniji kriterijumi kvaliteta gledanisa aspekta industrije
Source: „Analyse und Evaluation der Softwareentwicklung in Deutschland“, GfK Marktforschung GmbH, Fraunhofer Institute IESE, ISI, 2000
Ispravnost
SW - Kvalitet
Pouzdanost
Robustnost
Efikasnost
Okrenutostkorisniku
Lakoća održavanja
SkalabilnostČitkost
Ponovnokorišćenje
Modularnost
Portabilnost
Kompatibilnost
Mogućnost testiranja
Cena...
1
2
3
4
5
implicitno: adekvatna funkcionalnost