Пројектовање софтвера/Јануар 2020

Извор: SI Wiki
Пређи на навигацију Пређи на претрагу

1. zadatak

Napisati osobinu koja se koristi da se označi klasa koja nema potomke, tj. iz koje se ne može izvoditi. Iskoristiti pravilnu sintaksu za navođenje osobine.

Odgovor: {leaf}

2. zadatak

Odabrati ispravne dijagrame aktivnosti koji generišu generišu slučajan broj i sve dok generisana vrednost ne bude jednaka 0.


3. zadatak

Označiti elemente stanja po UML2:

  1. Podstanje
  2. Samo-tranzicije
  3. Odloženi događaji
  4. Unutrašnje tranzicije
  5. Tranzicije u druga stanja

4. zadatak

Modelira se sistem u kom se na Parkingu nalaze Automobili. Potrebno je koristeći kvalifikator selektovati automobile po njihovoj boji. Multiplikativnost koja odgovara opisanom slučaju je:

  1. Na strani Automobil *
  2. Na strani kvalifikatora 0..1
  3. Na strani Automobil 1
  4. Na strani kvalifikatora *
  5. Na strani Automobil 0..1

5. zadatak

Označiti tačne tvrdnje za pakete na jeziku UML:

  1. Paket može grupisati artefakte.
  2. Spoljašni paket implicitno uvozi imena sadržanog paketa.
  3. Paket je vlasnik sadržanih elemenata.
  4. Nekvalifikovana imena moraju biti jedinstvena u čitavom sistemu.
  5. Paket može sadržati druge pakete.

6. zadatak

Povezati data zaduženja sa ulogama projektnog uzorka Fasada.

Opcije
Zaduženja Uloge
  • Ne zna za klasu i objekat Fasade. b
  • Zahteve klijenta prosleđuje klasama podsistema. a
  • Implementira potrebne funkcionalnosti. b
  • Zna koja klasa podsistema je odgovorna za koje funkcionalnosti. a
  1. Fasada
  2. Klase podsistema
  3. Subjekat
  4. Konkretan subjekat
  5. Klijent

7. zadatak

Upariti uzorke sa njihovim alternativnim nazivima.

Opcije
Uzorci Alternativni nazivi
  • Kurzor (Cursor) g
  • Omotač (Wrapper) d
  • Ručka/telo (Handle/Body) e
  • Oznaka (Token) b
  • Virtuelni konstruktor (Virtual constructor) f
  • Transakcija (Transaction) c
  • Surogat (Surogate) a
  1. Zastupnik
  2. Podsetnik
  3. Komanda
  4. Dekorater
  5. Most
  6. Fabrički metod
  7. Iterator
  8. Klasni adapter

8. zadatak

Označiti tačna tvrđena za projektni uzorak Adapter:

  1. Adapter može sadržati dodatne javne metode koje Klijent ne koristi s obzirom da Adapter vidi preko interfejsa Cilj.
  2. Adapter se koristi kako bi interfejs jedne klase prilagodio interfejsu koji klijent očekuje.
  3. Dvosmerni adapter se može koristiti i kao Cilj i kao Adaptirani.
  4. Prilikom korišćenja projektnog uzorka Adapter nije potrebno menjati kod interfejsa Cilj, kao i klasa Klijent i Adaptirani.

9. zadatak

U sistemu postoji 10 objekata Korisnik koji međusobno komuniciraju svaki sa svakim. Ukoliko se u sistem uvede projektni uzorak Posrednik preko kog bi objekti komunicirali, koliko će biti manje veza potrebno u sistemu? Smatrati da su veze bidirekcione i da je potreban jedan objekat Posrednika.

Odgovor: 35

10. zadatak

Označiti tačna tvrđena za projektni uzorak Dekorater:

  1. Konstrukcija projektnog uzorka ne dozvoljava da objekat klase Dopuna dekoriše druge objekte klase Dopuna.
  2. Korišćenje Dekoratera otežava testiranje.
  3. Preporučljivo je da Komponenta nema atribute.
  4. Prilikom dekorisanja objekata, nije bitan redosled konkretnih dopuna, već samo njihov broj.
  5. Dopuna menja interfejs Komponente kako bi proširila funkcionalnosti.