Пројектовање софтвера/К2 2021 — разлика између измена

Извор: SI Wiki
Пређи на навигацију Пређи на претрагу
(nova stranica)
 
м (Prepisan K2)
Ред 1: Ред 1:
{{tocright}}
{{tocright}}
{{rešenja}}
{{rešenja}}
== 1. zadatak ==
Izabrati odgovarajuću sintaksu za sekvenciranje poruka, koja odgovara sledećem opisu:
U toku posmatrane interakcije, u aktivnosti koja sledi na strani prijema 2. poruke dolazi do konkuretnog grananja; u niti B se poziva 1. operacija po redu, koja izaziva aktivnost u kojoj se kao 4. poruka po redu, dok god je uslov <code>x>5</code> ispunjen, pokreće aktivnost iz koje se poziva operacija <code>f()</code> kao 3. po redu.
<div class="abc-list" data-solution="single">
# <span class="solution">2B.1.4*[x>5].3:f()</span>
# 3.1B.4[x>5].2:f()
# 2.B1.4*||[x>5].3:f()
# 2.1B.*[x>5]4.3:f()
# 2.B1.[x>5]*4.3:f()
</div>
== 2. zadatak ==
Povezati načine pristupa drugoj strani konektora kod dijagrama komunikacije sa njihovim ukrasima:
{| class="wikitable"
|+ Opcije
! Pristup
! Ukras
|-
| <div data-solution="select" data-options="a,b,c,d,e,f,g">
* Objektu uloge se pristupa preko primerka asocijacije - veze <span class="spoiler">b</span>
* Objekat uloge je u nekom okružujućem dosegu imena <span class="spoiler">c</span>
* Objekat uloge je argument operacije <span class="spoiler">e</span>
* Objekat uloge je u lokalnom dosegu imena <span class="spoiler">d</span>
* Objekat uloge sam sebi može da šalje poruku <span class="spoiler">f</span>
</div>
| <div class="abc-list">
# argument
# association
# global
# local
# parameter
# self
# this
</div>
|}
== 3. zadatak ==
Kako se na jeziku UML označava sekcija slučaja korišćenja, u kojoj se naznače tačke ponašanja u kojim se dati slučaj korišćenja proširuje drugim slučajevima korišćenja?
[[Датотека:PS K2 2021 zadatak 3.svg|center|frame|Slika uz treći zadatak.]]
Odgovor: <span class="spoiler" data-solution="text">extension points</span>
== 4. zadatak ==
Koje od navedenih tvrdnji su tačne za sledeći dijagram stanja:
<div class="abc-list" data-solution="multiple">
# Ovakav automat stanja prihvata kao ispravnu i kompletnu praznu sekvencu znakova.
# Ovakav automat stanja prihvata kao ispravnu i kompletnu sledeću sekvencu znakova: <code>;</code>
# Ovo je primer automata ''Moor''-ovog tipa.
# <span class="solution">Ovakav automat stanja prihvata kao ispravnu i kompletnu sledeću sekvencu znakova: <code><>;</code></span>
# <span class="solution">Ovakav automat stanja prihvata kao ispravnu i kompletnu sledeću sekvencu znakova: <code><a>bbb;</code></span>
# <span class="solution">Ovaj automat radi beskonačno.</span>
</div>
== 5. zadatak ==
Sistem modelovan priloženim dijagramom stanja se pušta u rad. Redom se dešavaju događaji e1, e3, e2. Navesti akcije koje sistem izvršava kao posledicu navedene sekvence događaja, po redosledu izvršavanja. Odgovor (sekvencu akcija) dati navođenjem naziva akcija razdvojenih zapetama, bez razmaka. Primer: ako se redom izvršavaju akcije sa nazivima akcija1, akcija2 i akcija3, odgovor treba dati u formatu "akcija1,akcija2,akcija3" (bez znakova navoda).
[[Датотека:PS K2 2021 zadatak 5.svg|center|frame|Slika uz peti zadatak.]]
Odgovor: <span class="spoiler" data-solution="text">z,z1,z11,t11,f1,z12,t12,t1,t,f3,z,z1,z12,t12,t1,t,f2,x,x1</span>
== 6. zadatak ==
Koje od sledećih tvrdnji su tačne za projektni uzorak ''Iterator'':
<div class="abc-list" data-solution="multiple">
# <span class="solution">Kurzor je naziv specifične vrste iteratora.</span>
# Unutrašnji iterator je fleksibilniji od spoljašnjeg.
# <span class="solution">Kod spoljašnjeg iteratora je na klijentu odgovornost za progres obilaska.</span>
# Agregat ne sme da definiše algoritam obilaska ni za jednu vrstu iteratora.
# Unutrašnji iterator mora posedovati javni metod za dohvatanje tekućeg elementa.
</div>
== 7. zadatak ==
Koje od navedenih tvrdnji su tačne za projektni uzorak ''Stanje'':
<div class="abc-list" data-solution="multiple">
# Predstavlja klasni uzorak ponašanja.
# Mana uzorka je što prelasci između stanja konteksta nisu eksplicitni.
# <span class="solution">Objekti stanja se često realizuju preko projektnog uzorka ''Unikat''.</span>
# <span class="solution">Prilikom promene stanja, spolja izgleda kao da objekat konteksta menja svoju klasu.</span>
# Konkretan objekat stanja ne sme da menja stanje svog konteksta.
</div>
== 8. zadatak ==
Koje od navedenih tvrdnji su tačne za projektni uzorak ''Podsetnik''?
<div class="abc-list" data-solution="multiple">
# <span class="solution">Klasa ''Podsetnik'' ispoljava dva interfejsa - uski prema klasi ''Čuvar'' i široki prema klasi ''Subjekat''.</span>
# ''Čuvar'' proverava i koristi stanje objekta ''Podsetnik''.
# <span class="solution">''Subjekat'' odlučuje u kom trenutku će da sačuva svoje kompletno stanje ili deo stanja.</span>
# <span class="solution">''Subjekat'' kreira objekat ''Podsetnika''.</span>
# Objekat ''Podsetnika'' nema unutrašnje stanje.
</div>
== 9. zadatak ==
Koje od navedenih tvrdnji su tačne za projektni uzorak ''Muva''?
<div class="abc-list" data-solution="multiple">
# Klijenti stvaraju objekte muve njenim kloniranjem ili direktnom konstrukcijom.
# <span class="solution">Objekti deljenih muva mogu biti varijacije ''Unikata'' sa ograničenim brojem objekata.</span>
# <span class="solution">Glavna mana ovog uzorka su potencijalni troškovi pronalaženja ili izračunavanja spoljašnjeg stanja muve.</span>
# Često se kombinuje sa uzorkom ''Sastav'', tako da se formira stablo sa deljenim muvama u čvorovima i nedeljivim muvama u listovima.
# <span class="solution">Koristi se sa ciljem da se izbegne hiperprodukcija objekata.</span>
</div>
== 10. zadatak ==
Koje od navedenih tvrdnji su tačne za projektni uzorak Adapter?
<div class="abc-list" data-solution="multiple">
# Klasa ''Cilj'' predstavlja klasu koju treba adaptirati prema očekivanom interfejsu za klijenta.
# <span class="solution">Objektni uzorak ''Adapter'' treba koristiti kada je potrebno istovremeno adaptirati više potklasa neke klase.</span>
# <span class="solution">Klasa ''Adapter'' sme imati metode koje nisu deo interfejsa ''Cilj''.</span>
# Dvosmerni adapter i klasni i objektni adapter.
# <span class="solution">Klasni uzorak ''Adapter'' dopušta klasi ''Adapter'' da nadjača i tako redefiniše neke metode adaptirane klase.</span>
</div>


[[Категорија:Рокови]]
[[Категорија:Рокови]]
[[Категорија:Пројектовање софтвера]]
[[Категорија:Пројектовање софтвера]]

Верзија на датум 9. децембар 2021. у 16:50

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

1. zadatak

Izabrati odgovarajuću sintaksu za sekvenciranje poruka, koja odgovara sledećem opisu:

U toku posmatrane interakcije, u aktivnosti koja sledi na strani prijema 2. poruke dolazi do konkuretnog grananja; u niti B se poziva 1. operacija po redu, koja izaziva aktivnost u kojoj se kao 4. poruka po redu, dok god je uslov x>5 ispunjen, pokreće aktivnost iz koje se poziva operacija f() kao 3. po redu.

  1. 2B.1.4*[x>5].3:f()
  2. 3.1B.4[x>5].2:f()
  3. 2.B1.4*||[x>5].3:f()
  4. 2.1B.*[x>5]4.3:f()
  5. 2.B1.[x>5]*4.3:f()

2. zadatak

Povezati načine pristupa drugoj strani konektora kod dijagrama komunikacije sa njihovim ukrasima:

Opcije
Pristup Ukras
  • Objektu uloge se pristupa preko primerka asocijacije - veze b
  • Objekat uloge je u nekom okružujućem dosegu imena c
  • Objekat uloge je argument operacije e
  • Objekat uloge je u lokalnom dosegu imena d
  • Objekat uloge sam sebi može da šalje poruku f
  1. argument
  2. association
  3. global
  4. local
  5. parameter
  6. self
  7. this

3. zadatak

Kako se na jeziku UML označava sekcija slučaja korišćenja, u kojoj se naznače tačke ponašanja u kojim se dati slučaj korišćenja proširuje drugim slučajevima korišćenja?

Odgovor: extension points

4. zadatak

Koje od navedenih tvrdnji su tačne za sledeći dijagram stanja:

  1. Ovakav automat stanja prihvata kao ispravnu i kompletnu praznu sekvencu znakova.
  2. Ovakav automat stanja prihvata kao ispravnu i kompletnu sledeću sekvencu znakova: ;
  3. Ovo je primer automata Moor-ovog tipa.
  4. Ovakav automat stanja prihvata kao ispravnu i kompletnu sledeću sekvencu znakova: <>;
  5. Ovakav automat stanja prihvata kao ispravnu i kompletnu sledeću sekvencu znakova: <a>bbb;
  6. Ovaj automat radi beskonačno.

5. zadatak

Sistem modelovan priloženim dijagramom stanja se pušta u rad. Redom se dešavaju događaji e1, e3, e2. Navesti akcije koje sistem izvršava kao posledicu navedene sekvence događaja, po redosledu izvršavanja. Odgovor (sekvencu akcija) dati navođenjem naziva akcija razdvojenih zapetama, bez razmaka. Primer: ako se redom izvršavaju akcije sa nazivima akcija1, akcija2 i akcija3, odgovor treba dati u formatu "akcija1,akcija2,akcija3" (bez znakova navoda).

Slika uz peti zadatak.

Odgovor: z,z1,z11,t11,f1,z12,t12,t1,t,f3,z,z1,z12,t12,t1,t,f2,x,x1

6. zadatak

Koje od sledećih tvrdnji su tačne za projektni uzorak Iterator:

  1. Kurzor je naziv specifične vrste iteratora.
  2. Unutrašnji iterator je fleksibilniji od spoljašnjeg.
  3. Kod spoljašnjeg iteratora je na klijentu odgovornost za progres obilaska.
  4. Agregat ne sme da definiše algoritam obilaska ni za jednu vrstu iteratora.
  5. Unutrašnji iterator mora posedovati javni metod za dohvatanje tekućeg elementa.

7. zadatak

Koje od navedenih tvrdnji su tačne za projektni uzorak Stanje:

  1. Predstavlja klasni uzorak ponašanja.
  2. Mana uzorka je što prelasci između stanja konteksta nisu eksplicitni.
  3. Objekti stanja se često realizuju preko projektnog uzorka Unikat.
  4. Prilikom promene stanja, spolja izgleda kao da objekat konteksta menja svoju klasu.
  5. Konkretan objekat stanja ne sme da menja stanje svog konteksta.

8. zadatak

Koje od navedenih tvrdnji su tačne za projektni uzorak Podsetnik?

  1. Klasa Podsetnik ispoljava dva interfejsa - uski prema klasi Čuvar i široki prema klasi Subjekat.
  2. Čuvar proverava i koristi stanje objekta Podsetnik.
  3. Subjekat odlučuje u kom trenutku će da sačuva svoje kompletno stanje ili deo stanja.
  4. Subjekat kreira objekat Podsetnika.
  5. Objekat Podsetnika nema unutrašnje stanje.

9. zadatak

Koje od navedenih tvrdnji su tačne za projektni uzorak Muva?

  1. Klijenti stvaraju objekte muve njenim kloniranjem ili direktnom konstrukcijom.
  2. Objekti deljenih muva mogu biti varijacije Unikata sa ograničenim brojem objekata.
  3. Glavna mana ovog uzorka su potencijalni troškovi pronalaženja ili izračunavanja spoljašnjeg stanja muve.
  4. Često se kombinuje sa uzorkom Sastav, tako da se formira stablo sa deljenim muvama u čvorovima i nedeljivim muvama u listovima.
  5. Koristi se sa ciljem da se izbegne hiperprodukcija objekata.

10. zadatak

Koje od navedenih tvrdnji su tačne za projektni uzorak Adapter?

  1. Klasa Cilj predstavlja klasu koju treba adaptirati prema očekivanom interfejsu za klijenta.
  2. Objektni uzorak Adapter treba koristiti kada je potrebno istovremeno adaptirati više potklasa neke klase.
  3. Klasa Adapter sme imati metode koje nisu deo interfejsa Cilj.
  4. Dvosmerni adapter i klasni i objektni adapter.
  5. Klasni uzorak Adapter dopušta klasi Adapter da nadjača i tako redefiniše neke metode adaptirane klase.