Projektovanje softvera/Januar 2024

Izvor: SI Wiki
Pređi na navigaciju Pređi na pretragu

Januarski rok 2024. godine održan je 12. januara i trajao je 20 minuta.

  • За питања са више одговора, тачни одговори су подебљани и уоквирени
  • За питања за које се одговори уносе, тачни одговори су подвучени и сакривени, тако да се прикажу када изаберете тај текст (пример: овако)
  • Притисните лево дугме испод за сакривање и откривање свих одговора, или десно дугме за укључивање и искључивање интерактивног режима:


1. zadatak

Koje od sledećih tvrdnji su tačne za sledeći dijagram klasa?

Ps januar 24 ugnezdjene.jpg
  1. Klasa B sadrži atribut tipa klase A
  2. Klasa A sadrži atribut tipa klase B
  3. Nije moguće navoditi ukras multiplikativnosti kod ove relacije
  4. Klasa B se nalazi u prostoru imena klase A
  5. Relacija između klasa A i B predstavlja posebnu vrstu relacije asocijacije s ukrasom

2. zadatak

Koje od navedenih tvrdnji su tačne za principe modelovanja paketa?

  1. Preporučuje se da se u paket smeštaju klase za koje je verovatno da će se zajedno menjati
  2. Preporučuje se da u nekom višeslojnom softverskom sistemu klase nižeg sloja (nižeg nivoa apstrakcije) ovise o klasama višeg sloja (višeg nivoa apstrakcije), ne i obrnuto
  3. Preporučuje se da se u paket smeštaju klase za koje je verovatno da će se zajedno menjati
  4. Preporučuje se da se u paket stavljaju klase koje uzajmano imaju što manji broj relacija
  5. Preporučuje se da se u paket smeptaju klase koje uzajamno imaju što veći broj relacija s apstrakcijama izvan paketa

3. zadatak

Koje od navedenih tvrdnji su tačne za dijagrame stanja u jeziku UML2?

  1. Dijagrami stanja u jeziku UML2 su zasnovani na Petrijevim mrežama (Petri net)
  2. Dijragami stanja na jeziku UML2 moraju da budu Murovog (Moore) tipa
  3. Dijagrami stanja u jeziku UML2 su zasnovani na Harelovim dijagramima (Harel's charts)
  4. Dijagrami stanja na jeziku UML2 moraju da budu Milijevog (Mealy) tipa
  5. Zaštitni uslovi svaka dva prelaza iz stanja S koja se dešavaju na događaj e1 moraju da budu disjunktni

4. zadatak

Označiti tačne tvrdnje vezane za dijagrame raspoređivanja:

  1. Dijagrami raspoređivanja se često koriste za modelovanje distribuiranih sistema
  2. Čvor na dijagramu raspoređivanja može da bude i softverske prirode
  3. Dijagram raspoređivanja može da prikazuje čvorove, artefakte, pakete i objekte
  4. Na asocijaciji između čvora koji predstavlja server i čvora koji predstavlja klijenta multiplikativnost bi bila 1 na kraju kod čvora klijenta i * na kraju kod čvora servera
  5. Na dijagramu raspoređivanja mogu da se nađu relacije asocijacije, generalizacije i realizacije

5. zadatak

Koje od navedenih tvrdnji su tačne za ascijacije na dijagramima klasa?

  1. Asocijacija može da povezuje više klasa
  2. Klasa asocijacije se povezuje s njenom asocijacijom relacijom asocijacije
  3. Kvalifikator na kraju asocijacije može da ima više atributa
  4. Asocijacija podrazumevano nije vlasnik svojih krajeva
  5. Klasa asocijacije može da ima svoje atribute

6. zadatak

Koji projektni uzorak se implementira prilikom implicitnog izvođenja klase iz klase Object u programskom jeziku Java, gde izvedena klasa implementira metod clone()?

Odgovor: Prototip

Objašnjenje: Operacija kopiraj() Protoipa je ekvivalent operaciji clone()


7. zadatak

Kada bi struktura klasa prikazana na dijagramu klasa na slici bila promenjena tako da se isti problem reši na bolji način primenom projektnog uzorka Dekorater (Decorator), koliko bi postojalo klasa koje imaju ulogu KonkretnaDopuna? Odgovor dati u formi broja. ништа Odgovor: 3

Objašnjenje: Tri dopune bi bile Secer, Cimet i Mleko

8. zadatak

Implementira se video-igra u kojoj figuriše veliki broj pokretnih objekata koji se pamte u sceni. Objekti su okarakterisani bojom i geometrijom koje se kodiraju s 8B ukupno, kao i (X,Y) koordinatama trenutnog položaja, koje se kodiraju svaka s po 4B. Svi geometrijski oblici iste vrste (na primer, svi krugovi) imaju iste dimenzije. Pokazivači se kodiraju s 4B. Uz predpostavku da objekti ne sadrže nikakve dodatne informacije i primenu odgovarajućeg projektnog uzorka, koliko bi minimalno memorijskog prostora (u bajtovima) bilo zauzeto za 3 crvena trougla, 2 plava kvadrata i 3 zelena kruga na određenim koordinatama u sceni?

Odgovor: 120

Objašnjenje: Koristi se Muva. Crveni Trougao, Plavi Kvadrat i Zeleni Krug su Konkretne Muve. To je 3 muve - 3 * 8 = 24B. Zatim se za svaku pojavu muve pamte koordinate 8 * (4B + 4B) = 64B i pokazivač 8 * 4B + 32B. Ovo je ukupno 24B + 64B + 32B = 120B. Bilo kakva predpostavka o tome kako Fabrika Muva radi i da zauzima memoriju nije priznavana.

9. zadatak

Koji uzorak može da se koristi uz uzorak Prototip za implementaciju funkcionalnosti "kopiranja-pri-upisu" (copy-on-write)?

Odgovor: Zastupnik

10. zadatak

Saradnja između uzorka Komanda i Sastav naziva se

Odgovor: Makrokomanda