Objektno orijentisana analiza i dizajnŠifra: MR0012 | 8 ESPB
Opšte informacije
Nivo studija:Master strukovne studije
Godina studija:1
Semestar:2
Uslov:objektno orijentisano programiranje
Cilj:Upoznavanje sa osnovama objektno orijentisane analize programskih sistema, dokumentovanje poslovnih zahteva i dizajn novog
softvera korišćenjem UML jezika za modelovanje
Ishod:Studenti će biti osposobljeni da uz pomoć savremenog razvojnog okruženja koristeći UML jezik razviju modele za složene
softverske projekte
Sadržaj predmeta
Teorijska nastava:
Uvodno predavanje. Šta je vizuelno modelovanje. Zašto je UML pogodan za korišćenje. Upoznavanje sa alatima i UML dijagramima za modelovanje.
Dokumentovanje funkcionalnih i ne-funkcionalnih zahteva korisnika kroz dijagrame zahteva;
Dijagrami aktivnosti. Dokumentovanje poslovnih procesa i ponašanja budućeg softvera
Dijagrami slučajeva upotrebe. Dokumentovanje najmanjih funkcionalnih celina budućeg softvera. Dijagrami korisničkih interfejsa. Vizualizacija interfejsa i dokumentovanje osnovnih i alternativnih scenarija sa koracima za svaki slučaj upotrebe
Dijagrami komunikacije. Pronalaženje klasa potrebnih za realizaciju scenarija slučajeva upotrebe. Definicija tipova (stereotipa) klasa, Pravilno uočavanje klasa.
Sekvencijalni dijagrami. Dokumentovanje toka razmena poruka između objekata klasa za svaki scenario slučaja upotrebe.
Dijagrami promene stanja. Uočavanje potrebe za definisanjem stanja objekata pojedinih klasa i njihovo ponašanje u toku životnog ciklusa. Tranzicije.
Dijagrami klasa. Dokumentovanje atributa i metoda za svaku klasu koja realizuje funkcionisanje softvera. Nasleđivanje. Generalizacija. Specijalizcija. Nasleđivanje. Sistemski dijagram klasa entiteta u kojima se čuvaju podaci potrebni u realizaciji softvera
Dijagrami objekata. Dokumentovanje konkretnog sadržaja atributa u objektima klasa entiteta u nekom trenutku rada softvera.
Dijagram podataka. Izrada modela podataka, analiza i preliminarno projektovanje baze podataka, realizacija fizičkog modela baze podataka. Dokumentovanje tabela, relacija između tabela, kao i objekata u savremenim bazama podataka
Dijagram komponenti. Dokumentovanje softverskih elemenata potrebnih za rad novo razvijenog softvera
Dijagram raspoređenosti. Dokumentovanje čvorova koji će učestvovati u radu novo razvijenog softvera
Reverzni inženjering. Izrada koda i reverzni inženjering u Javi, C++ ili Visual Basic-u. Reverzni inženjering za baze podataka. Izrada SQL koda i reverzni inženjering u SQL serveru, MySQL ili Oracle-
Praktična nastava:
Praktična nastava prati program predavanja rešavanjem ilustrativnih zadataka u računarskoj laboratoriji
Literatura
Siniša Ilić, Alempije Veljović, Projektovanje softvera sa bazama podataka u UML-u, Fakultet tehničkih nauka u K. Mitrovici, 2017.
S. Bennet, S. McRobb, R.Farmer, Object-Oriented Systems Analysis And Design Using UML, McGraw Hill, 2006, 3rd edition
Siniša Ilić, Objektno orijentisana analiza i dizajn - priručnik za laboratorijske vežbe, Akademija tehničkoumetničkih strukovnih studija, Beograd 2022.