Pouzdanost i kontrola kvaliteta softvera (ETF RII PKKM 3645) |
|
Opšte informacije |
|
Naziv kursa | Pouzdanost i kontrola kvaliteta softvera |
Oznaka (šifra) predmeta | ETF RII PKKM 3645 |
Studij | ETF-B |
Odsjek | Računarstvo i informatika |
Godina | 3 |
Semestar | 6 |
Tip | Izborni |
ECTS | 4.5 |
Ukupno sati nastave | 45 |
Sati predavanja | 30 |
Sati vježbi | 15 |
Sati tutorijala | 0 |
Cilj kursa - Znanje i vještine koje treba postići student |
|
Studenti stiču znanja o metodama i alatima za postizanje kvaliteta i pouzdanosti softvera na različitim nivoima softverskih sistema uključujući module, podsisteme i sistemski nivo. Studenti će se upoznati sa savremenim alatima i tehnikama uključujući: inspekcije, administracija verzija i upravljanje softverskom konfiguracijom. Posebno će se razmatrati značaj i uloga standarda i pravila procedure u procesu osiguranja kvalitete softvera (QoS). Ovaj kurs treba studentima dati praktično znanje o različitim tehnikama osigranja kvaliteta softvera, njihovim uporednim osobinama i područjima primjene. Studenti će steći znanja o izradi planova testiranja i provođenju uspješnog testiranja softvera. Na vježbama studenti će primijeniti tehnike kontrole kvaliteta u sklopu procesa razvoja softvera za rješenje realnog problema. U toku procesa razvoja softvera naglasak je na aktivnostima obezbjeđenja kvaliteta softvera kao inspekcije, metrika kontrole kvaliteta, mjerenja efikasnosti, testiranje softvera, modeliranje troškova razvoja softvera. |
|
Program |
|
1.Kontrola kvaliteta softvera – osnovni pojmovi i definicije: kvalitet, softver, kvalitet softvera, kontrola kvaliteta, pouzdanost, verifikacija, validacija, testiranje, evaluacija, certificiranje, sveukupna kontrola kvaliteta (TQM). 2.Perspektive kontrole kvaliteta softvera – sistemski softver, softver realnog vrmena, komercijalni softver, softver sistema kritične misije, interaktivni softver. 3.Programska organizacija kontrole kvaliteta softvera- uspostavljanje zahtjeva, odabir metodologije, evaluacija procesa razvoja softvera, evaluacija proizvoda, evaluacija resursa projekta. 4.Standardizacije kontrole kvaliteta softvera – istorijski pregled, komericjalni standardi: MIL-STD, IEEE-STD, ISO/SEC, upoređivanje zahtjeva. 5.Cijena kontrole kvaliteta softvera – procjena ukupnih troškova, potrebni resursi i njihova cijena, krajnji proizvod i ostvarena dodata vrijednost, analiza troškova pojedinih aktivnosti. 6.Sistem primjene inspekcija u cilju ostvarivanja kvaliteta softvera – proces primjene inspekcija i njihov uticaj u različitim fazama ciklusa razvoja softvera, opisi procesa, ilustrativni primjeri iz prakse, inspekcija dokumentacije, inspekcija metrike. 7.Alati korišteni u procesu ostvarivanja kvaliteta softvera- pregled savremenih CASE alata, njihova primjenjivost, dobre i loše osobine, kako pronaći adekvatan alat, kako ih porediti i evaluirati s obzirom na stalne promjene na tržištu. 8.Upravljanje softverskim konfiguracijama (SCM) i njihova uloga u razvoju softvera i kontroli kvaliteta, revizija procesa SCM, alociranje resursa, sa posebnim naglaskom na projektne timove. 9.Metrika kontrole kvaliteta softvera – analiza predloženih i najčešće primjenjivanih sistema metričkog određivanja kvaliteta aktivnosti proizvodnje softvera i samog proizvoda, metodologije, primjeri iz prakse i softverske industrije. 10.Kontrola kvaliteta softvera komercijalnih sistema – primjeri iz prakse, uključujući i uspješne i neuspješne primjere. 11.Kontrola kvaliteta softvera sistema kritične primjeri iz prakse, uključujući i uspješne i neuspješne primjere, poređenje sa primjerima softvera komercijalnih sistema. 12.Statističke metode - kvantitativne metode ocjene uspješnosti testiranja, praktični primjeri. 13.Pouzdanost softvera – standardi, primjena, propisi primjenjivi u različitima područjima primjene, poseban osvrt na pouzdanost softvera čija je funkcionalnost vezana za bezbjednost ljudi. 14.Mjerenje efikasnosti - uticaj na produktivnost, analiza bumerang efekta kod smanjenja troškova kontrole kvaliteta. |
|
Literatura |
|
Obavezna | 1.Bilješke i slajdovi s predavanja (moći će se preuzeti na WEB siteu Fakulteta); 2.G. Gordon Schulmeyer, James I. Mcmanus, The Handbook of Software Quality Assurance, Prentice Hall PTR (3rd Edition) 1999 |
Preporučena | 1.Daniel Galin, Software Quality Assurance : From Theory to Implementation, Addison Wesley 2003 2.Stephen H. Kan, Metrics and Models in Software Quality Engineering, Addison-Wesley Professional; 2 edition 2002 |
Didaktičke metode |
|
Na predavanjima (30 sati) se prezentiraju teoretski koncepti, metode i standardi. Svi prezentirani koncepti se ilustriraju primjerima iz prakse, sa postavljanjem teoretskih hipotetskih problema s ciljem da ih studenti samostalno ili interaktivno sa nastavnikom riješe. Od studenata se očekuje da istraže dodatnu literaturu i samostalno opišu pojedine koncepte kroz domaće zadaće i tako ovladaju instrumentima i metodama uvedenim tokom predavanja. Kroz vježbe u laboratoriji se, pod vođenjem i pratnjom tutora, rješavaju praktični problemi kontrole kvalitete softvera u sklopu razvoja konkretne aplikacije – programa. Programski jezik i razvojno okruženje će se izabrati u skladu sa predznanjem stečenim na kursevima programiranja. Vježbe su organizovane tako da svaki student ima na raspolaganju personalni računar, na kojem obavlja predviđene aktivnosti. Primarni cilj vježbi je kontinuirana provjera koliko je student ovladao praktičnom primjenom znanja i tehnika koje su predmet proučavanja ovog kursa. |
|
Način provjere znanja |
|
Tokom trajanja kursa student prikuplja bodove prema slijedećem sistemu: prisustvo satima predavanja, vježbi i tutorijala: 10 bodova, student koji više od tri puta izostane s predavanja,vježbi i/ili tutorijala ne može ostvariti bodove po ovoj osnovi; izrada domaćih zadaća: maksimalno 10 bodova; predviđena je izrada od 5 do 10 domaćih zadaća ravnomjerno raspoređenih tokom semestra; parcijalni ispiti: dva pismena parcijalna ispita, pri čemu svaki pozitivno ocijenjen parcijalni ispit donosi 20 bodova; Student koji je tokom trajanja semestra ostvario manje od 20 bodova ponovno upisuje ovaj kurs. Student koji je tokom trajanja semestra ostvario 40 i više bodova pristupa usmenom završnom ispitu; ovaj ispit sastoji se iz diskusije zadataka s parcijalnih ispita, domaćih zadaća i odgovora na jednostavna pitanja koja se odnose na teme kursa. Usmeni završni ispit donosi maksimalno 40 bodova. Da bi postigao pozitivnu završnu ocjenu, student na ovom ispitu mora ostvariti minimalno 20 bodova. Student koji ne ostvari ovaj minimum pristupa usmenom dijelu popravnog ispita. Student koji je tokom trajanja semestra ostvario 20 i više bodova, a manje od 40 bodova, pristupa popravnom ispitu. Popravni ispit struktuiran je na slijedeći način: pismeni dio koji je struktuiran na isti način kao i pismeni parcijalni ispit; u okviru ovog ispita student polaže zadatke iz tema za koje nije postigao prolaznu ocjenu (10 i više bodova) polažući parcijalne pismene ispite, usmeni dio koji je struktuiran na isti način kao usmeni dio završnog ispita. Usmenom dijelu popravnog ispita može pristupiti student koji je nakon polaganja pismenog dijela popravnog ispita uspio stvariti ukupan skor od 40 i više bodova; ovaj skor sastoji se od bodova ostvarenih kroz: prisustvo nastavi, izradu domaćih zadaća, polaganje parcijalnih sipita i polaganje pismenog dijela popravnog ispita. Usmeni popravni ispit donosi maksimalno 40 bodova. Da bi postigao pozitivnu završnu ocjenu student na ovom ispitu mora ostvariti minimalno 20 bodova. Student koji ne ostvari ovaj minimum ponovno upisuje ovaj kurs. |
|
Napomene |
|
Prilikom polaganja pismenog ispita, student može koristiti od strane nastavnika pripremljenu listu formula koje mogu biti od koristi prilikom rješavanja zadataka. Nije dozvoljeno korištenje drugih bilješki, knjiga, mobilnih telefona niti drugih elektronskih pomagala, osim džepnog elektronskog kalkulatora. Zadaci koje student treba riješiti na ispitu su istog tipa kao oni rješavani tokom izvođenja predavanja i tutorijala. |