Napredni softver inžinjering    (ETF RIO NSI 5970)
 
Opće informacije
Naziv kursa Napredni softver inžinjering
Oznaka (šifra) predmeta ETF RIO NSI 5970
Studij ETF-B
Odsjek Računarstvo i informatika
Godina 5
Semestar 9
Tip Obavezni
Broj ECTS Bodova 7
Ukupno sati nastave 70
Broj sati predavanja 40
Broj sati vježbi 30
Broj sati tutorijala 0
Cilj kursa - Znanje i vještine koje treba postići student
Cilj kursa je upoznavanje sa naprednim metodama i tehnologijama razvoja softverskih sistema. Studenti stiču znanja o razvoju softverskih sistema kombinujući ključne koncepte: komponente, uzorke dizajna, softverske arhitekture. Studenti će u sklopu kursa upoznati sa open source softverskim (OSS) sistemima i projektima njihovog razvoja
Program
1.Komponente i motivi za realizaciju softvera korištenjem komponenti. Upoznavanje sa savremenim komponentnim modelima (npr. CORBA, JavaBeans) Interfejs komponente i projektovanje komponenti s 'ugovorenim' ponašanjem.
2.Koncept projektnih uzoraka i njihov razvoj od apstraktnog modela u iskoristive softverske komponente.
3.Tumačenje principa i osobina otvorenog i open source softvera. Analiza OSS proizvoda u pogledu njihovih arhitektura, razvoja komponenti, konstrukcije, generisanja i testiranja. Prednosti upotrebe OSS proizvoda.
4.Uloga i značaj koncepta sofverske arhitekture - konkretne i apstraktne - u procesu projektovanja kompleksnih i heterogenih softverskih sistema. Softverske arhitekture bazirane na tehnologiji komponenti.
5.Modelom vođene arhitekture (MDA). Tipovi modela: kompjutaciono neovisan model (CIM), model neovisan o platformi (PIM) i model specifične platforme (PSM). Jezici za opis modela (MOF, UML, OCL). Transformacije modela.
6.Koncepti i alati za opisivanje i modeliranje softverskih arhitektura, tehnike njihove analize i evaluacije. Automatsko generisanje koda na osnovu modela, modelom vođeno programiranje i ekstremno programiranje.
7.Upoznavanje sa tehnikama i metodama razvoja softverskih sistema na bazi koncepta servisa i servisno orijentisane arhitekture (SOA). Integracija MDA metoda kod razvoja servisno orijentisane arhitekture.
Literatura
Obavezna literatura 1. Bilješke i slajdovi s predavanja (moci ce se preuzeti na web siteu Fakulteta).
2. E. Gamma, R. Helm, R. Johnson, and J. Vlissides,Design Patterns: Elementes of Reusable Object-Oriented Software, Addison-Wesley, 1995.
Dopunska literatura 1. G.T. Heineman, W.T. Councill, Component Based Software Engineering: Putting the Pieces Together, Addison-Wesley Professional, 2001.
2. S.J. Mellor, K.Scott, A.Uhl, D.Weise, MDA Distilled: Principles of Model-Driven Architecture, Addison-Wesley, 2004.
3. A. Hemrajani, Agile Java Development with Spring, Hibernate and Eclipse (Developer's Library), 2006.
Didaktičke metode
Predavanja. Individualni i timski rad na projektnim zadacima u laboratoriji: projektovanje i implementacija korištenjem metoda, tehnika i alata prateći koncepte uvedene na predavanjima. Testiranje i evaluacija uspješnosti razvijenih primjera.
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 posmenog 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