Lekcija 6 Flashcards
6.1 Šta je model softverskog sistema? Kada se koriste modeli softverskog sistema? Navedite najčešće korišćene UML dijagrame i navedite njihovu svrhu.
Modelovanje sistema je proces razvoja apstraktnih modela sistema, pri čemu svaki od njih predstavlja jedan poseban pogled ili perspektivu sistema. Najčešće se koriste grafički simboli za modelovanje sistema.
Koriste se za vreme procesa:
1. inženjerstva zahteva da bi pomogli dobijanje zahteva sistema i projektovanja sistema, a u cilju opisa sistema koje inženjeri treba da primene, a radi dokumentovanja struktura i načina rada sistema.
Najčešće korišćeni UML dijagrami:
1. Dijagram aktivnosti - pokazuje aktivnosti procesa ili obrade podataka
2. Dijagrami korišćenja - pokazuju interakciju između sistema i njegovog okruženja
3. Sekvencijalni dijagrami - prikazuju interakciju između aktera i sistema, kao i između komponenata sistema
4. Dijagram klasa - pokazuje klase objekata sistema, kao i njihove veze
5. Dijagrami stanja - pokazuju kako sistem reaguje na unutrašnje i spoljnje događaje
6.2 Šta obezbeđuje model analize sistema? Koja se polazna dokumenta koriste za analizu?
Model analize sistema obezbeđuje objekte klasa analize i slučajeve korišćenja, opisane i sekvenciojalnim i VOPC dijagramima
Ulazna dokumenta:
1. dataljno opisane slučajeve korišćenja (primare i sekundarne scenarije)
2. model slučajeva korišćenja
3. model iskustva korisnika
4. model poslovnih entiteta
6.3 Koje su tri klase analize sistema? Objasni njihovu ulogu.
Tri klase analize sistema:
1. Granične klase (Boundary) - predstavljaju objekte sa kojima akteri komuniciraju.
2. Klase kontrole (Control) - predstavljaju objekte koji koordiniraju aktivnosti objekata entiteta i komuniciraju sa graničnim objektima, i time određuju celokupno ponašanje softverskog sistema.
3. Klasa entiteta (Entitiy) - prestavljaju objekte koji sadrže informacije i podatke, kao što su relacione tabele podataka ili fajlove sa podacima.
6.4 Šta predstavlja klasa Entity? Kako se analizom nalaze klase Entity? Opiši iterativni postupak određivanja klase Entity.
Klase Entity predstavljaju objekte koji sadrže informacije i podatke, kao što su relacione tabele podataka ili fajlovi sa podacima. One skladište podatke i realizuju neke osnovne operacije sa njima.
Klase entiteta (Entity) se nalaze inkrementalnim i iterativnim postupkom koji obuhvata sledeća tri koraka:
1. Modelovanje funkcionalnosti - sadrži scenarije svih slučajeva korišćenja.
2. Modelovanje klase entiteta - određuje klase entiteta i njihove atribute, veze i interakcije između klasa entiteta, i ovu informaciju prestavlja u formi dijagrama klasa.
3. Modelovanje dinamike - određuje operacije koje se se izvode nad klasama entiteta ili koje one sprovode, a u formi dijagrama stanja.
6.5 Šta je klasa tipa Boundary? Kako se utvrđuje klasa tipa Boundary analizom slučajeva korišćenja? Navedite primer.
Granične klase (Boundary) - predstavljaju objekte sa kojima akteri komuniciraju.
Klase tipa Boudary se lako utvrđuju, tj. izvlače iz opisa slučajeva korišćenja. Svaka ulazna forma na monitoru računara, ili izveštaj na monitoru računara, ili štampani izveštaj - može da se moduluje klasom tipa Boudary.
6.6 Šta klasa tipa Control? Kako se utvrđuje klasa tipa Control analizom slučajeva korišćenja? Navedite primer.
Klasa kontrole (Control) - predstavljaju objekte koji koordiniraju aktivnosti objekata entiteta i komuniciraju sa graničnim objektima, i time određuju ukupno ponašanje softverskog sistema.
Postupak analize slučaja korišćenja se svodi na to da se utvrde klase čiji objekti su potrebni za realizaciju toka događaja slučaja korišćenja. To se vrši sledećom tehnikom:
1. Prouči detaljno slučajeve korišćenja da bi pronašao informaciju koja se koristi i obrađuje,
2. Utvrdi jednu centralnu klasu tipa Boudary za svakog aktera-čoveka,
3. Utvrdi po jednu osnovnu klasu tipa Boundary za svaku klasu tipa Entity, sa kojom će akter biti u interakciji,
4. Utvrdi jednu centralnu klasu tipa Control za svakog aktera koji predstavlja neki spoljni sistem.
5. Utvrdi jednu klasu tipa Controll za koordinaciju po jednog slučaja korišćenja.
6.7 Šta je inženjerstvo sa modelima? Šta je OCL i čemu on služi? Dajte jedan primer priimene OCL.
Inženjerstvo sa modelima je pristup razvoju softvera u kome su modeli, a ne program, glavni rezultat procesa razvoja. Programski kod se automatski generiše iz modela.
Object Constraint Language - OCL je jezik sličan programskim jezicima pomoću kog se mogu koristiti objekti i njihovi atributi, i mogu se specificirati akcije koje se treba izvršiti.
6.8 Šta je VOPC dijagram (View Of Participating Classes)? Dajte primer jednog VOPC dijagrama.
VOPC sadrži ključne apstraktne klase i sve objekte koji učestvuju u jednom slučaju korišćenja. VOPC pokazuje kako sistem objekata realizuje jedan slučaj korišćenja. Izbegavaju se nepotrebni detalji
Za sliku vidi LAMS lekciju 6.