SE450 Sistemi sa softverskim komponentama
Cilj predmeta
Ovaj predmet obuhvata osnovne koncepte softverskih komponenti, kao i prikaz naprednih tema u inženjeringu softvera zasnovanog na komponentama u praksi i u razvoju, u cilju izgradnje velikih i kompleksnih softverskih sistema, visokog kvaliteta i pouzdanosti. Obzirom na značaj ponovnog korišćenja ranije razvijenih softverskih komponenti, slušanjem ovog predmeta studenti će se upoznati sa konceptima, metodama, tehnikama, procesima i alatima za inženjering sistema zasnovanih na softverskim komponentama.
Ishod predmeta
Studenti će biti osposobljeni da razumeju i primene principe izgradnje visoko kvalitetnih softverskih komponenti; da razmotre i izaberu arhitekturu sistema zasnovanog na komponentama prema određenoj nameni; da prepoznaju vrstu rukovanja događajima u jednom ili više API-ja; da objasne ulogu objekata u midlver sistemima i relacije sa komponentama; da primene komponentno-orijentisan pristup dizajnu softvera.
Sadržaj predmeta
Teorijska nastava
Osnovni koncepti sistema sa softverskim komponentama. Specifikacija softverskih komponenti. Arhitektura sistema sa softverskim komponentama. Modeli softverskih komponenti i tehnologije. Razvoj softverskih komponenti. Korišćenje softverskih komponenti. Softverske komponente u sistemima u realnom vremenu. Softverske komponente za ugrađene sisteme. Platforme za integraciju poslovnih aplikacija. Pravci daljeg razvoja sistema sa softverskim komponentama. Tržišni aspekt razvoja sistema sa softverskim komponentama.
Praktična nastava
Upoznavanje sa okruženjem Java NetBeans GUI Builder. Pisanje jednostavnog Java zrna. Pregledanje osobina zrna i događaja. Implementacija karakteristika zrna. Izrada primera obrade događaja. Izrada primera serijalizacije i deserijalizacije zrna. Izrada primera sa upisivanjem i učitavanjem iz XML fajla. Modifikacija informacija o zrnu pomoću BeanInfo editora. Primer introspektivnosti. Upotreba editora karakteristika zrna. Primer kreiranja .NET klase. Primer kreiranja nove .NET komponente. Izrada aplikacije koja koristi .NET komponentu. Primer implementacije rukovanja greškom. Izrada primera komponente sa funkcionalnim konstruktorom. Konfiguracija .NET sklopova. Načini korišćenja .NET komponenti u .NET aplikaciji. Korišćenje COM komponenti u .NET aplikaciji. Razvoj .NET rešenja uz upotrebu aspektno-orijentisanog programiranja.
Literatura
1.Nikola Milivojević, SE450 Sistemi bazirani na softverskim komponentama, autorizovana predavanja u elektronskom obliku, Fakultet informacionih tehnologija, Beograd, 2007.
2.Clemens Szyperski, „Component Software: Beyond Object-Oriented Programming", Addison-Wesley, 2002
3.George T. Heineman, William T. Councill, „Component-based Software Engineering: Putting the pieces together", Addison-Wesley, 2001