Пројектовање софтвера/Јануар 2020 — разлика између измена
м (Označavanje tačnih odgovora u drugom zadatku) |
|||
(Није приказана једна међуизмена другог корисника) | |||
Ред 16: | Ред 16: | ||
# [[Датотека:PS januar 2020 zadatak 2e.svg|link=|class=transparent-svg solution|Dijagram iz stavke pod e.]] | # [[Датотека:PS januar 2020 zadatak 2e.svg|link=|class=transparent-svg solution|Dijagram iz stavke pod e.]] | ||
</div> | </div> | ||
Objašnjenje: <span class="spoiler" data-solution="explanation">Na prvom dijagramu aktivnost kreće od početnog čvora i ne može da uđe u akciju generisanja dok ne pristigne žeton po drugoj ulaznoj grani, što se nikada neće desiti. U trećem dijagramu dva ulazna žetona će se u prvoj iteraciji spojiti u akciji generisanja i izaći kao jedan žeton, a zatim će blokirati aktivnost na sledećem pokušaju da uđu u akciju zbog toga što se na drugoj grani nikada neće pojaviti žeton. Na četvrtom dijagramu aktivnost se blokira već kod konkurentnog spajanja jer po tim granama neće doći žetoni.</span> | |||
== 3. zadatak == | == 3. zadatak == | ||
Označiti elemente stanja po UML2: | Označiti elemente stanja po UML2: | ||
<div class="abc-list" data-solution="multiple"> | <div class="abc-list" data-solution="multiple"> | ||
# <span class="solution">Podstanje</span> | # <span class="solution">Podstanje</span> | ||
Ред 29: | Ред 29: | ||
== 4. zadatak == | == 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: | 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: | ||
<div class="abc-list" data-solution="single"> | <div class="abc-list" data-solution="single"> | ||
# <span class="solution">Na strani Automobil *</span> | # <span class="solution">Na strani Automobil *</span> | ||
Ред 41: | Ред 39: | ||
== 5. zadatak == | == 5. zadatak == | ||
Označiti tačne tvrdnje za pakete na jeziku UML: | Označiti tačne tvrdnje za pakete na jeziku UML: | ||
<div class="abc-list" data-solution="multiple"> | <div class="abc-list" data-solution="multiple"> | ||
# <span class="solution">Paket može grupisati artefakte.</span> | # <span class="solution">Paket može grupisati artefakte.</span> | ||
Ред 53: | Ред 49: | ||
== 6. zadatak == | == 6. zadatak == | ||
Povezati data zaduženja sa ulogama projektnog uzorka Fasada. | Povezati data zaduženja sa ulogama projektnog uzorka Fasada. | ||
{| class="wikitable" | {| class="wikitable" | ||
|+ Opcije | |+ Opcije | ||
Ред 77: | Ред 71: | ||
== 7. zadatak == | == 7. zadatak == | ||
Upariti uzorke sa njihovim alternativnim nazivima. | Upariti uzorke sa njihovim alternativnim nazivima. | ||
{| class="wikitable" | {| class="wikitable" | ||
|+ Opcije | |+ Opcije | ||
Ред 108: | Ред 100: | ||
== 8. zadatak == | == 8. zadatak == | ||
Označiti tačna tvrđena za projektni uzorak Adapter: | Označiti tačna tvrđena za projektni uzorak Adapter: | ||
<div class="abc-list" data-solution="multiple"> | <div class="abc-list" data-solution="multiple"> | ||
# <span class="solution">Adapter može sadržati dodatne javne metode koje Klijent ne koristi s obzirom da Adapter vidi preko interfejsa Cilj.</span> | # <span class="solution">Adapter može sadržati dodatne javne metode koje Klijent ne koristi s obzirom da Adapter vidi preko interfejsa Cilj.</span> | ||
Ред 120: | Ред 111: | ||
Odgovor: <span class="spoiler" data-solution="text">35</span> | Odgovor: <span class="spoiler" data-solution="text">35</span> | ||
Objašnjenje: <span class="spoiler" data-solution="explanation">Ukoliko 10 korisnika komuniciraju svaki sa svakim to je ukupno 45 veza u sistemu, a ako komuniciraju preko posrednika to je 10.</span> | |||
== 10. zadatak == | == 10. zadatak == | ||
Označiti tačna tvrđena za projektni uzorak Dekorater: | Označiti tačna tvrđena za projektni uzorak Dekorater: | ||
<div class="abc-list" data-solution="multiple"> | <div class="abc-list" data-solution="multiple"> | ||
# Konstrukcija projektnog uzorka ne dozvoljava da objekat klase Dopuna dekoriše druge objekte klase Dopuna. | # Konstrukcija projektnog uzorka ne dozvoljava da objekat klase Dopuna dekoriše druge objekte klase Dopuna. |
Тренутна верзија на датум 18. фебруар 2022. у 18:36
- За питања са више одговора, тачни одговори су подебљани и уоквирени
- За питања за које се одговори уносе, тачни одговори су подвучени и сакривени, тако да се прикажу када изаберете тај текст (пример: овако)
- Притисните лево дугме испод за сакривање и откривање свих одговора, или десно дугме за укључивање и искључивање интерактивног режима:
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.
Objašnjenje: Na prvom dijagramu aktivnost kreće od početnog čvora i ne može da uđe u akciju generisanja dok ne pristigne žeton po drugoj ulaznoj grani, što se nikada neće desiti. U trećem dijagramu dva ulazna žetona će se u prvoj iteraciji spojiti u akciji generisanja i izaći kao jedan žeton, a zatim će blokirati aktivnost na sledećem pokušaju da uđu u akciju zbog toga što se na drugoj grani nikada neće pojaviti žeton. Na četvrtom dijagramu aktivnost se blokira već kod konkurentnog spajanja jer po tim granama neće doći žetoni.
3. zadatak
Označiti elemente stanja po UML2:
- Podstanje
- Samo-tranzicije
- Odloženi događaji
- Unutrašnje tranzicije
- 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:
- Na strani Automobil *
- Na strani kvalifikatora 0..1
- Na strani Automobil 1
- Na strani kvalifikatora *
- Na strani Automobil 0..1
5. zadatak
Označiti tačne tvrdnje za pakete na jeziku UML:
- Paket može grupisati artefakte.
- Spoljašni paket implicitno uvozi imena sadržanog paketa.
- Paket je vlasnik sadržanih elemenata.
- Nekvalifikovana imena moraju biti jedinstvena u čitavom sistemu.
- Paket može sadržati druge pakete.
6. zadatak
Povezati data zaduženja sa ulogama projektnog uzorka Fasada.
Zaduženja | Uloge |
---|---|
|
|
7. zadatak
Upariti uzorke sa njihovim alternativnim nazivima.
Uzorci | Alternativni nazivi |
---|---|
|
|
8. zadatak
Označiti tačna tvrđena za projektni uzorak Adapter:
- Adapter može sadržati dodatne javne metode koje Klijent ne koristi s obzirom da Adapter vidi preko interfejsa Cilj.
- Adapter se koristi kako bi interfejs jedne klase prilagodio interfejsu koji klijent očekuje.
- Dvosmerni adapter se može koristiti i kao Cilj i kao Adaptirani.
- 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
Objašnjenje: Ukoliko 10 korisnika komuniciraju svaki sa svakim to je ukupno 45 veza u sistemu, a ako komuniciraju preko posrednika to je 10.
10. zadatak
Označiti tačna tvrđena za projektni uzorak Dekorater:
- Konstrukcija projektnog uzorka ne dozvoljava da objekat klase Dopuna dekoriše druge objekte klase Dopuna.
- Korišćenje Dekoratera otežava testiranje.
- Preporučljivo je da Komponenta nema atribute.
- Prilikom dekorisanja objekata, nije bitan redosled konkretnih dopuna, već samo njihov broj.
- Dopuna menja interfejs Komponente kako bi proširila funkcionalnosti.