Professional Documents
Culture Documents
INFORMACIONIH SISTEMA
Nastavna jedinica 43.
Dijagrami aktivnosti
Šta će se naučiti?
• Dijagrami aktivnosti.
• Aktivnosti i akcije.
• Elementi dijagrama akrivnosti.
• Sekvencijalna granjanja i spajanja.
• Grafička predstava pseudostanja, tranzicija i konektora.
• Sinhronizacija – račvanje (fork) i udruživanje (join).
• Primeri dijagrama aktivnosti.
• Grafička predstava aktivnosti.
www.its.edu.rs
Ishodi učenja
Nakon ove nastavne jedinice bićete u stanju da :
– definišete šta predstavljaju dijagrami aktivnosti,
– definišete šta predstavljaju aktivnosti i akcije,
– grafički označite elemente dijagrama aktivnosti,
– definišete pseudostanja, tranzicije i konektore,
– definišete pojam sinhronizacije, račvanje (fork) i udruživanje (join),
– identifikujete paralelne procese u dijagramu aktivnosti,
– definišete šta su particije i plivačke staze,
– definišete šta predstavljaju signali i koja je njihova uloga,
– poštujete preporuke za kreiranje dijagrama aktivnosti.
www.its.edu.rs
Uvod
• Dijagrami aktivnosti su namenjeni za modeliranje dinamičkih aspekata
(ponašanja) sistema.
• Prikazuju sekvencijalne i konkurentne korake u procesu obrade.
• Mogu se koristiti:
– pre početka projekta, za modeliranje najvažnijih poslovnih procesa,
– za vreme faze specifikacije zahteva, za detaljnije pojašnjavanje toka aktivnosti u
use case-vima,
– za vreme analize i dizajna, kao pomoć pri definisanju ponašanja pojedinih
operacija,
– za opis dinamike skupa objekata,
– za opis toka neke operacije.
Aktivnost i akcije (1)
• Aktivnost reprezentuje neatomsku obradu koja se dekomponuje
na jedinice - elementarne jedinice podaktivnosti – pojedine akcije.
• Akcija je osnovna jedinica specifikacije ponašanja koja
reprezentuje neku transakciju ili obradu u modeliranom sistemu:
– akcija je osnovni izvršni element aktivnosti,
– akcija predstavlja jedan korak u aktivnosti koji se obično dalje
ne dekomponuje.
Aktivnosti i akcije (2)
• Akcije mogu biti:
– pokretanje aktivnosti (pozivi operacija ili slanje signala)
– čitanje (vraćanje vrednosti) ili upis (promena stanja) podataka (kreiranje ili
uništavanje objekata)
– Izračunavanje (izvršenje primitivnih (npr. aritmetičkih) operacija i funkcija)
• Izvršenje akcije koja pokreće neku aktivnost obuhvata izvršenje te aktivnosti (njenih
akcija) - takva akcija nije atomska .
A [kraj]
grananje [not kraj]
[uslov] B
radi()
[not uslov] završno
C stanje
promeni
iterator
Sinhronizacija (1)
• Sinhronizacija – zadebljana horizontalna linija.
• Račvanja (fork) i udruživanja (join) niti –
obavljaju se u sinhronizacionim tačkama.
• Tranzicije koje ulaze u sinhronizaciju su uslov za paralelno
obavljanje tranzicija koje iz nje izlaze – jedna aktivnost “čeka” na
ispunjenje uslova (“pristizanje” svih događaja) za njeno izvršenje.
Sinhronizacija (2)
Dijagrami aktivnosti (1)
• Početni čvor (engl. initial node) je mesto gde počinje aktivnost i
obavezan je element svakog dijagrama aktivnosti (svaki dijagram
aktivnosti mora imati jedan početni i jedan ili više krajnjih čvorova).
• Nakon ovoga imamo akciju koja se naziva Primljena narudžbenica, a
iza te akcije grananje aktivnosti (engl. fork) koje ima jedan ulazni tok
i nekoliko paralelnih izlaznih tokova.
Dijagrami aktivnosti (2)
• Dijagram pokazuje da se akcije iz leve i desne grane dijagrama odvijaju
paralelno. U suštini to znači da njihov redosled nije važan.
• Dijagram dozvoljava da izvršilac postupka bira redosled kojim će
obavljati pojedine poslove, tj. dijagram utvrđuje samo osnovna pravila
redosleda koja se moraju poštovati.
Dijagrami aktivnosti (3)
• Na osnovu dijagrama, mi možemo prvo pripremiti naručene
knjige, poslati fakturu, isporučiti knjigu i naplatiti, ali isto tako
dijagram nam dozvoljava da prvo pošaljemo fakturu,
pripremimo i isporučimo knjigu pa tek onda izvršimo naplatu,
itd.
• To je važno u modelovanju poslova, pošto se postupci često
odvijaju paralelno.
Dijagrami aktivnosti –
konkurentna grananja
• Prilikom paralelnog izvršavanja, neophodna je sinhronizacija.
• Za te svrhe koristi se isti grafički simbol kao i za grananje, ali se koristi
pri spajanju (engl. join) aktivnosti.
Priprema
sinhronizaciona tačka
Aktivnost1 Aktivnost2
Finalizacija
Dijagrami aktivnosti (4)
• Ukoliko pogledamo primer, uočavamo da ne možemo zaključiti
narudžbenicu sve dok se ne završe i isporuka i naplata. To je pokazano
oznakom spajanja ispred akcije Zaključi narudžbenicu.
• Izlazni tok spajanja započinje tek kada svi ulazni tokovi dođu do tačke
spajanja.
• Na osnovu dijagrama, možemo zaključiti narudžbenicu tek kada smo
naplatili i isporučili knjige.
• Možemo zapaziti da čvorovi na dijagramu aktivnosti nemaju naziv
aktivnosti, već akcije.
• Precizno govoreći, aktivnost predstavlja niz akcija, tako da dijagram
prikazuje aktivnost koja je sačinjena od akcija.
Dijagrami aktivnosti (5)
• Uslovno ponašanje se pokazuje odlukama i stapanjima.
• Odluka (engl. decision), u verziji UML 1 poznata pod nazivom
grana (engl. branch), ima jedan ulazni tok i više uslovnih izlaznih
tokova.
• Svakom izlaznom toku je pridružen jedan logički uslov, odnosno
logički izraz između ugaonih zagrada.
• Pri svakom nailasku na odluku moguće je nastaviti samo jednim
od izlaznih tokova, pa uslovi trebaju biti uzajamno isključivi.
Dijagrami aktivnosti (6)
• U primeru sa slike, ako je osoba koja je izvršila narudžbenicu
pretplatnik, prelazimo na akciju Hitna isporuka, inače prelazimo
na akciju Obična isporuka.
• [else] je rezervisana reč koja
ukazuje na tok kojim treba
nastaviti ukoliko su netačni
svi ostali uslovi odluke.
Dijagrami aktivnosti (7)
• Stapanje (engl. merge) ima više ulaznih tokova i jedan izlazni.
• Stapanje označava kraj uslovnog ponašanja započetog odlukom.
Akcije (1)
• Akcije se mogu razložiti u podaktivnosti.
• Akcije koje se odnose na isporuku u prethodnom primeru se mogu
definisati kao posebna aktivnost, pa dijagram aktivnosti dobija novi
izgled.
Akcije (2)
• Akcije se mogu realizovati kao podaktivnosti ili kao metode
klasa.
• Podaktivnost se na dijagramu prikazuje simbolom račve, a
sintaksa za poziv metode
ime_klase :: ime_metode
• Može se čak napisati i deo koda unutar oznake akcije, ako se akcija
ne može opisati pozivom jedne metode.
Grafička notacija
• Aktivnost:
– svaka aktivnost se može predstaviti posebnim dijagramom:
ime
aktivnosti
ime aktivnosti
ulazni izlazni
parametar akcija A akcija B parametar
Novi izgled dijagrama aktivnosti
Pitanja za proveru znanja (1)
• Šta predstavljaju dijagrami aktivnosti ?
– Dijagrami aktivnosti su namenjeni za modeliranje dinamičkih
aspekata (ponašanja) sistema.
– Prikazuju sekvencijalne i konkurentne korake u procesu obrade.