zadaci sa res uml.pdf

20
USE CASE DIAGRAMS 1. Ispod su dati neki scenariji vezani za sistem u biblioteci. Za svaki scenario naći use case i učesnika i na kraju nacrtati use case dijagram za ceo sistem u biblioteci. A. Član biblioteke izabere tri knjige i odnese ih bibliotekaru na sto za pozajmljivanje knjiga Bibliotekar proverava koliko knjiga član ima već pozajmljeno Član nema pozajmljene knjige Bibliotekar registruje pozajmicu u sistemu i izdaje knjige članu Use case: Izdaj knjigu; Actor:Bibliotekar B. Član izabere šest knjiga i odnese ih bibliotekaru na sto za pozajmljivanje knjiga Bibliotekar proverava koliko knjiga član ima već pozajmljeno Član ima pozajmljenih 3 knjiga Bibliotekar kaže članu da može ukupno da pozajmi šest knjiga Član vraća tri knjige Bibliotekar registruje pozajmicu u sistemu i izdaje knjige članu Use case: Izdaj knjigu Actor: Bibliotekar C. Član izabere četiri knjige i odnese ih bibliotekaru na sto za pozajmljivanje knjiga Bibliotekar proverava koliko knjiga član ima već pozajmljeno Član ima pozajmljenih 6 knjiga Bibliotekar kaže članu da može ukupno da pozajmi šest knjiga Bibliotekar kaže članu da ne može da pozajmi ni jednu knjigu dok ne vrati neku Use case: Izdaj knjigu Actor: Bibliotekar D. Član vraća tri knjige u biblioteku Član odlazi na šalter za vraćanje knjiga Bibliotekar registruje vraćanje knjiga u sistemu Use case: Vraćanje knjiga Actor: Bibliotekar E. Član pretražuje onlajn katalog da bi našao knjigu. On nađe knjigu koju želi. Član proverava da li je knjiga na raspolaganju i pronalazi da postoji primerak u biblioteci Član upisuje broj reference u knjigu Use case: Pretraživanje kataloga Actor: Član

Upload: paniqs

Post on 22-Jan-2016

387 views

Category:

Documents


21 download

DESCRIPTION

Zadaci sa resenjima za UML za studente predmeta Projektovanje softwera

TRANSCRIPT

Page 1: Zadaci sa res UML.pdf

USE CASE DIAGRAMS

1. Ispod su dati neki scenariji vezani za sistem u biblioteci. Za svaki scenario naći use case i učesnika i na kraju nacrtati use case dijagram za ceo sistem u biblioteci. A.

Član biblioteke izabere tri knjige i odnese ih bibliotekaru na sto za pozajmljivanje knjiga

Bibliotekar proverava koliko knjiga član ima već pozajmljeno

Član nema pozajmljene knjige

Bibliotekar registruje pozajmicu u sistemu i izdaje knjige članu Use case: Izdaj knjigu; Actor:Bibliotekar

B.

Član izabere šest knjiga i odnese ih bibliotekaru na sto za pozajmljivanje knjiga

Bibliotekar proverava koliko knjiga član ima već pozajmljeno

Član ima pozajmljenih 3 knjiga

Bibliotekar kaže članu da može ukupno da pozajmi šest knjiga

Član vraća tri knjige

Bibliotekar registruje pozajmicu u sistemu i izdaje knjige članu Use case: Izdaj knjigu Actor: Bibliotekar

C.

Član izabere četiri knjige i odnese ih bibliotekaru na sto za pozajmljivanje knjiga

Bibliotekar proverava koliko knjiga član ima već pozajmljeno

Član ima pozajmljenih 6 knjiga

Bibliotekar kaže članu da može ukupno da pozajmi šest knjiga

Bibliotekar kaže članu da ne može da pozajmi ni jednu knjigu dok ne vrati neku Use case: Izdaj knjigu Actor: Bibliotekar

D.

Član vraća tri knjige u biblioteku

Član odlazi na šalter za vraćanje knjiga

Bibliotekar registruje vraćanje knjiga u sistemu Use case: Vraćanje knjiga Actor: Bibliotekar

E.

Član pretražuje onlajn katalog da bi našao knjigu. On nađe knjigu koju želi.

Član proverava da li je knjiga na raspolaganju i pronalazi da postoji primerak u biblioteci

Član upisuje broj reference u knjigu Use case: Pretraživanje kataloga Actor: Član

Page 2: Zadaci sa res UML.pdf

F.

Član pretražuje onlajn katalog da bi našao knjigu. On nađe knjigu koju želi.

Član proverava da li je knjiga na raspolaganju i pronalazi da su svi primerci izdati

Član rezerviše onlajn knjigu Use case: Rezerviši knjigu Actor: Član

G.

Nove knjige dolaze u biblioteku

Bibliotekar dodeljije svakoj knjizo referentni broj

Bibliotekar ažurira katalog knjiga sa novim naslovima Use case: Dodaj knjigu Actor: Bibliotekar

2. U prethodnim scenarijima vidimo da slučajevi korišćenja “Pretraži katalog” i “Rezerviši knjigu” dele

istu funkcionalnost. Koristeći <<include>> promeniti dijagram tako da “Rezerviši knjigu” ne duplira funkcionalnost od use case-a “Rezerviši knjigu” .

Page 3: Zadaci sa res UML.pdf

3. Na slici je dat dijagram slučajeva korišćenja za frizersku firmu Cool Cuts.

Dalji razgovori sa klijentima su otkrili dodatne informacije o sistemu. Kada klijent dođe da plati tretman, on ponekad kupi i proizvode za negu kose (šampon, conditionar, itd.). Stažisista koji radi naplatu prvo unese kod proizvoda i sistem mu vrati cenu proizvoda. To znači da use case “Handle customer payment” ponekad uključuje i pretragu sistema da bi se našao proizvod i njegova cena. Takođe use case “Maintain product list“ uvek uključuje pretragu. Dodavanjem <<include>> i <<extends>> veza izmeniti dijagram na slici.

4. Dalji razgovorima se došlo do zaključka da ponekad klijenti uđu kod frizera samo da kupe proizvode. Dijagram na prethodnoj slici podrazumeva da se proizvod plaća zajedno sa uslugom kod frizera. Klijenti koji samo kupuju proizvod žele da to odvojeno urade. Kako bi promenili ovaj dijagam?

Page 4: Zadaci sa res UML.pdf

Objekti i klase 1. Predložiti klase koje bi očekivali da se nađu u sledećim sistemima:

a. Bankarski sistem b. Paket za crtanje c. Biblioteka d. Kadrovsko odeljenje na univerzitetu

a. Bankarski sistem: Klijent, Račun, Tekući račun, Štedni račun, Onlajn račun, Savetnik za fizička lica,

Savetnik za pravna lica b. Paket za crtanje: Oblik, Trougao, Pravougaonik, Kvadrat, Linija c. Biblioteka: Knjiga, Član, Pozajmica, Rezervacija d. Kadrovsko odeljenje na univerzitetu: Zaposleni, AdministrativnoOsoblje, AkademskoOsoblje,

TehničkoOsoblje, Ocene 2. U listi su navedeni objektno-orjentisani koncepti. Pored njih su kratke definicije. Povezati koncepte.

Koncept Definicija

a. agregacija 1.veza između dve klase gde je jedna specijalizovana verzija druge

b. asocijacija 2. mogućnost da jedna operacija bude implementirana od strane različitih metoda

c. atribut 3. apstrakcija zajedničkih osobina u superklasu

d.klasa 4.kod koji implementira

Page 5: Zadaci sa res UML.pdf

operaciju

e.sakrivanje podataka 5.prikrivanje internih detalja objekta

f.enkapsulacija 6.kreiranje objekta

g. generalizacija 7.podatak koji je definisan kao deo objekta

h.nasleđivanje 8.instanca klase

i.instanciranje 9.interfejs metoda

j.poruka 10.spakovani podaci i operacije

k.metod 11.veza između klasa

l.objekat 12.zehtev za izvršenje servisa

m.operacija 13.šablon za objekar

n.polimorfizam 14.veza celina-deo

a 14, b 11, c7, d 13, e5, f10, g3, h1, i6, j12, k4, m9,n2

3. Nacrtati dijagram koji povezuje sledeće klase koristeći asocijaciju, agregaciju, nasledjivanje i

multiplikativnost tamo gde je potrebno. a. hotelska soba, buking, gost

b. član kluba, mlađi član, stariji član

c. ispit, instrukcije, pitanja, rešenje

Page 6: Zadaci sa res UML.pdf

Klasni Dijagram

1. Predložite objekte koje biste očekivali da nađete u sledećim sistemima:

a. Sistem za zdravstvanu zaštitu

b. Sistem za rentiranje videa

c. Sistem koji dodeljuje opremu lokalnim školama

a. doktor, medicinska sestra, pacijent, zakazivanje, recept, lekovi

b. video, kopija videa, klijent, renta

c. škola, jedinica opreme, dobavljač

2. Galerija organizuje izložbe koje se sastoje od izložbenih eksponata. Izložbeni eksponat može da

bude ulje na platnu, akvarel, skulptura ili fotografija. Nacrtati klasni dijagram koji prikazuje

navedenu vezu.

3. Proučiti klasni dijagram na slici i odgovoriti na pitanja:

a. Da li klijent mora da da naruči nešto?

b. Od čega se sastoji narudžbina?

c. Može li payment da bude za više od jedne narudžbine?

d. Koliko proizvoda je u OrderLine?

Page 7: Zadaci sa res UML.pdf

e. Koja je veza između CD-a i proizvoda?

f. Može li proizvod da se pojavi na više od jedne Order Line

a. Da pošto je veza između Order i Customer jedan ili više

b. Order se sastoje iz bar jedne narudžbine

c. Ne, veza između Order i Payment je jedan

d. Samo jedan proizvod je u svakoj order line

e. Nasledjivanje, CD je vrsta proizvoda

f. Da, veza je nula ili više

4. Velika filmska organizacija ima nekoliko bioskopa a svaki ima do 10 sala za prikazivanje filmova.

Klijenti mogu da rezervišu sedišta lično, preko telefona ili preko Interneta. Organizacija čuva podatke

o imenima i adresama regularnih posetilaca za potrebe marketinga. Napisati klasni dijagram koji

predstavlja ove informacije.

5. a. Budite Zdravi, Medicinski Centar vode pet doktora sa tri medicinske sestre. Kada pacijent traži

termin, obično posećuje istog doktora ako ako su puno zauzeti oni mogu da budu zakazani i kod

nekog drugog doktora ili medicinske sestre. Kada pacijent poseti doktora ili med sestru, njegov

medicinski karton se ažurira i doktor može da prepiše neki lek. Nacrtati klasni dijagram koji

predstavlja ove informacije.

b. Ponekad doktor zaključi da je potrebno da pacijent obavi neke dodatne pretrage. Ovi testovi

mogu da budu standardni ili detaljni; oni se obavljaju u nekim od lokalnih bolnica. Proširiti dijagram

da uključi ove dodatne informacije.

Page 8: Zadaci sa res UML.pdf

a.

b.

6. Oscars film je prodavnica koja rentira filmove na video traci i dvd-u. Oskar ima veliki broj

mušterija i čuva informacije o svima koji rentiraju video ili dvd. Česti klijenti mogu postati članovi

prodavnice što im donosi dodatne privilegije, kao što su rentiranje više filmova odjednom. U

slučaju članova, Oscar čuva informacije o njihovom članskom broju, telefonu i vrsti filmova koje

vole da gledaju. On takođe čuva informacije o svim filmovima i njihovim kopijama. Nacrtati

klasni dijagram koji predstavlja ovu informaciju.

Page 9: Zadaci sa res UML.pdf

Dijagrami Interakcije

1. Na slici ispod se nalazi opis slučaja korišćenja “Print ready card” koji ima zadatak da odštampa

kartu na kojoj piše da je rezervisani video na raspolaganju. Koristeći klasni dijagram na slici

a. Nacrtati dijagram sekvenci za uspešan scenario

b. Nacrtati dijagram kolaboracije za isti scenario

Page 10: Zadaci sa res UML.pdf

a.

b.

Page 11: Zadaci sa res UML.pdf

2. Na slici ispod je dat opis slučaja korišćenja “Pozajmi video” u sistemu video rentals. Koristeći

klasni dijagram za sistem, nacrtati dijagram sekvence za uspešnu pozajmicu videa.

Page 12: Zadaci sa res UML.pdf

3. Na slici ispod je dat opis slučaja korišćenja “Vrativideo” u sistemu video rentals. Koristeći klasni

dijagram za sistem, nacrtati dijagram sekvence za uspešno vraćanje videa.

Page 13: Zadaci sa res UML.pdf

Dijagrami stanja

1. Protivprovalni alarm

a. Kada je postavljen, alarm je u stanju mirovanja (Resting) i kada je u ovom stanju, on

može biti setovan (Set stanje). Dok je u postavljenom stanju, alarm može biti isključen,

čime se vraća u stanje mirovanja. Nacrtati dijagram stanja za klasu Protivprovalmi Alarm.

b. Dok je u postavljenom stanju (Set), alarm može biti uključen čime on prelazi u stanje

Zvonjenja (Ringing). On može da se isljuči i iz ovog stanja on može da pređe u stanje

mirovanja. Promeniti dijagram sa slike da bi prikazao ove promene.

c. Alarm može i da se pokvari. Uneti ovu promenu u dijagram stanja.

Page 14: Zadaci sa res UML.pdf

2. Kada je nova, mikrotalasna je inicijalno isključena. Iz ovog stanja, vreme kuvanja kože da se

podesi i mikrotalasna uključi. Dok je mikrotalasna uključena, vreme kuvanja može da se

promeni. Kada je vreme isteklo, mikrotalasna se isključuje i oglasi sa tri kratka zvuka pištanja.

Nacrtati klasni dijagram koji opisuje ponašanje mikrotalasne.

3. Agenti novina imaju klijente koji naručuju da im se novine donesu i koji plaćaju mesečno.

Ukoliko klijent ne plati račun unutar četiri nedelje, agent šalje podsetnik. Ukoliko je račun i posle

naredne dve nedelje neplaćen, agent prestaje sa dostavljanjem. Klijent može da otkaže ili

promeni naručeno, ali samo ako su do tada platili sve račune. Nacrtati dijagram stanja koji

predstavlja Klijenta u sistemu.

Page 15: Zadaci sa res UML.pdf

Dijagrami aktivnosti

1. Slika ispod prikazuje jednostavan dijagram aktivnosti za naručivanje karata telefonom. Modifikovati

dijagram tako da se aktivnosti “Izračunati ukupne troškove” i “Sačuvaj detalje klijenta” izvrše bilo

kojim redosledom.

Resenje:

Page 16: Zadaci sa res UML.pdf

2. Vlasnici male maloprodajne radnje redovno naručuju od dobavljača. Prvo provere svoje trenutno

stanje u magacinu i obrade narudžbinu. Kada dobiju robu, oni provere narudžbenicu i ažuriraju nivo

zaliha. Onda plate dobavljaču. Nacrtati dijagram aktivnosti kojim se ilustruje proces naručivanja.

Dijagram treba da uključi i primer paralelne obrade.

3. Figura na slici prikazuje jednostavan sekvencijalni dijagram aktivnosti koji ilustruje auto koji ulazi na

parking. Dodati plivačke staze da bi prikazali koje aktivnosti obavlja vozač auta a koje mašina koja

kontroliše ulaz u park.

Page 17: Zadaci sa res UML.pdf

4. Kada vozač želi da napusti parking, on se doveze do rampe, ubaci kartu u mašinu, i mašina izračuna

iznos koji treba da se plati. Vozač ubaci novac i ako je iznos veći od traženog, mašina vraća kusur.

Mašina zatim diže rampu, vozač izveze auto sa parkinga i mašina spušta barijeru.

a. Nacrtati dijagram aktivnosti bez plivačkih staza da bi ilustrovali šta se dešava kada vozač izlazi sa

parkinga. Dijagram treba da prikaže alternativno ponašanje

b. Dodati plivačke staze u dijagram da bi prikazali ko ili šta je odgovoran za različite aktivnosti.

Page 18: Zadaci sa res UML.pdf

a.

b.

Page 19: Zadaci sa res UML.pdf

5. Dodati plivačke staze za dijagram aktivnosti za use case “Izdaj bicikl” da bi prikazali koje aktivnosti

obavljaju klijent, koje kompjuter a koje recepcionista u radnji.

Page 20: Zadaci sa res UML.pdf