UML 2.0 Dijagrami aktivnosti
description
Transcript of UML 2.0 Dijagrami aktivnosti
UML 2.0 Dijagrami aktivnosti
Beograd, 2007.
Laboratorija za informacione sisteme, FON
2
Sadržaj izlaganja
UML Dijagrami aktivnosti - istorijat Osnovni koncepti UML 2.0 dijagrama aktivnosti Napredni koncepti UML 2.0 dijagrama aktivnosti Primeri
3
UML
UML (Unified Modeling Language) OMG (Object Managemrnt Group) – organizacija
zadužena za brigu o standardizaciji UML UML– de facto standardni jezik za modelovanje Sadrži skup dijagrama za opis strukture i
dinamike svih vrsta sistema Najviše se koristi u razvoju informacionih
sistema Aktuelna verzija – UML 2.0
4
UML 2.0 dijagrami
UML 2.0 definiše 13 vrsta dijagrama
Diagram
Structural
Deployment diagram
Class diagram Object diagram
Implementation diagram
Component diagram
Activity diagram Use case diagram
Behavioural
State machine diagram
Sequence diagram Communication diagram
Interaction diagram
Timing diagram Interaction overviewdiagram
Package diagram Composite structurediagram
5
UML 2.0 Dijagrami aktivnosti
DA se koristi na najrazlicitijim nivoima projektovanja softvera i to za opis: Poslovnih procesa Workflow-a Slozenih use-case tokova Proceduralne logike Algoritama
6
UML 2.0 Dijagrami aktivnosti U prethodnim verzijama, Dijagrami aktivnosti (DA)
su bili zasnovani na konceptima dijagrama prelaza stanja (teorija konačnih automata) a od verzije UML 2.0 zasnovani su na teoriji Petrijevih mreža.
Token – koncept preko kojeg se prati izvršenje dijagrama aktivnosti
Dijagrami aktivnosti predstavljaju tehniku za opis proceduralne logike i poslovnih procesa. Sa tog aspekta su slični staroj tehnici flowchart ali glavna razlika je što DA podržava modelovanje paralelnog izvršavanja aktivnosti.
7
Osnovni grafički simboli DA
Osnovni koncepti UML 2.0 DA
Prijem porudžbine
Pakovanje robe Formiranjei slanje fakture
Ekspresnaisporuka
Evidentiranje uplate
Zatvaranje porudžbine
Regularnaisporuka
[ ostale ][ ekspresna porudžbina ]
Fork (račvanje niti)
Initial Node (inicijalni čvor)
Decision (odlučivanje)
Join (spajanje-sinhronizacija niti)
Merge (spajanje OR grana)
Acitvity Final (kraj procesa)
Action (aktivnost ili akcija)
Flow (tok)
8
Odlučivanje – OR grananje (Decision)
[ uslov2 ][ uslov 1 ]
A
B C
Osnovni koncepti UML 2.0 DA
[ uslov ]
[ ne ][ da ]
A
B C
9
Račvanje – AND grananje (Fork)
A
B
C
Osnovni koncepti UML 2.0 DA
A
B
C
[ Uslov 1 ]
[ Uslov 2 ]
10
Podprocesi (Subactivities)
Prijem porudžbine
Pakovanje robe Formiranjei slanje fakture
Otpremanje robe Evidentiranje uplate
Zatvaranje porudžbine
Osnovni koncepti UML 2.0 DA
Ekspresnaisporuka
Regularnaisporuka
[ ostale vrste ][ ekspresna porudžbina ]
Otpremanje robe
11
Particije (Partitions)
Osnovni koncepti UML 2.0 DA
Ekspedicija Prodaja Računovodstvo
Prijem porudžbine
Pakovanje robe Formiranjei slanje fakture
Evidentiranje uplate
Zatvaranje porudžbine
Otpremanje robe
Particije predstavljaju uloge (izvršioce) u modelu odvijanja poslovnog procesa
12
Particije (Partitions)
Osnovni koncepti UML 2.0 DA
Uloga (izvršilac) može predstavljati poslovnog partnera, organizacioni deo, radno mesto ...
Uključivanje organizacionog aspekta Od verzije UML 2.0 moguće je konstruisati
dvodimenzionalni grid (particije po kolonama i redovima)
Moguće je particije deliti na podparticije i tako prikazati hijerarhiju particija
13
Particije (Partitions)
Osnovni koncepti UML 2.0 DA
Ekspedicija Prodaja Računovodstvo
Prijem porudžbine
Pakovanje robe Formiranjei slanje fakture
Evidentiranje uplate
Zatvaranje porudžbine
Otpremanje robe
Nov
i Sad
Beo
grad
Beo
grad
14
Tokovi (Flows)
Prijem fakture Plaćanje fakture
Osnovni koncepti UML 2.0 DA
Kontrolni tok (Control flow)
Tok objekta (Object flow)
Prijem fakture Plaćanje faktureNalog za plaćanje
15
Kraj toka (Flow final)
Osnovni koncepti UML 2.0 DA
Kraj toka (Flow final) – služi za označavanje kraja jednog toka ili jedne niti, dok neka druga grana ili nit imaju završetak celog procesa.
A
B C
16
Konektori (Connectors)
Osnovni koncepti UML 2.0 DA
A APrijem fakture Plaćanje fakture
Konektori (Connectors) služe kao pomoćno sredstvo da se ogroman dijagram aktivnosti podeli na više delova. Tačka prekida prvog dela se označi sa imenovanim konektorom a onda se isti simbol koristi kao početna tačka narednog dela dijagrama.
17
Objekat (Object)Prijem fakture Plaćanje faktureNalog za plaćanje
Osnovni koncepti UML 2.0 DA
Objekat (Object) – predstavlja dokument koji se prosleđuje od jedne do druge aktivnosti
Skladište (Datastore) – skladište podataka (dokumenata)
Prijem otpremnice Formiranje prijemnice
<<datastore>>Otpremnice
18
Događaji - Signali (Signals)
Napredni koncepti UML 2.0 DA
Slanje signala (send signal) Prijem signala (receive signal) Vremenski okidač (time signal) Slanje signala sa priključenim objektom (send
object)
19
Događaji - Signali (Signals)
Slanje signala
Slanje signalasa objektom
Napredni koncepti UML 2.0 DA
[ uslov okidanja vremenskog događaja ]
Prijem signala
20
Događaji - Signali (Signals) primer
Napredni koncepti UML 2.0 DA
Kreiranje kvotacije(stock exchange)
Slanje kvotacije
KnjizenjeTransakcije
Ponistavanjeponude
slanje signala
prijem signala
Vremenski signal
[nakon 15 minuta]
A
Prihvatanjekvotacije
21
Ekspanzioni region (Expansion region)
Napredni koncepti UML 2.0 DA
Koriste se za opis interacije nad nekom kolekcijom interne akcije se izvrsavaju jednom za svaki element
kolekcije Interne akcije mogu biti sekvencijalne ili paralelne (sto se
prikazuje preko stereotipa <<concurrent>>) iliOtkazivanje terminaDefinisanje grupa za seminarske radove
Otkazivanje terminaIzrada seminarskog Otkazivanje terminaOdbrana seminarskog
Otkazivanje terminaFormiranje liste odbranjenih radova
<<concurrent>>
Spisak grupa
22
Parametri (Pins)
Napredni koncepti UML 2.0 DA
Koncept pina se koristi za definisanje ulaznih I izlaznih parametara akcije Akcije mogu imati parametre (kao metode operacije)
Izlazi iz neke akcije moraju odgovarati ulazima sledece akcije
Ukoliko je izlazni parametar razlicit od ulaznog paramtera mora se
prikazati preko transformacijeOtkazivanje termina
<<transformation>> Termin.Poruka
<<transformation>>
Termin.Studenta
Obavesti studenta
TerminPin za parametar
Izraz za tranformacije
Poruka Student
23
Region mogućeg prekida (Interruptible region)
Napredni koncepti UML 2.0 DA
A
B
C
Prekini PP1
D
Podproces PP1
24
Primer 1
Automat za napitke
Nađi napitak[nema kafe] [nema kole]
Sipaj vodu u
rezervoar
[ima kafe]
Pripremi šolje
Stavi kafu u filter
Stavi filter u mašinu
Uzmi konzervu kole
Uključi mašinu
Kafa ključa
Sipaj kafu
Ispij
[ima kole]
25
Primer 2
Priprema i obrada sednica Vlade
Pisarnica
Prijem predmeta
Utvrdjivanje nadležnosti
Biro sekretara
Savetnik - obradjivač predmeta
Sekretar odbora
[ nadležna Vlada ]
Upućivanje nadle nom
organu
[ nije nadležna Vlada ]
Savetnik za pripremu sednica
Vlade
Predmet obradjen
Predmet arhiviran Arhiviraj predmet
Spreman za sednicu odbora
Spreman za sednicu Vlade
Doneta bele{ka odbora o kompletiranju(Bele{ka odbora)
Zaduživanje nadležnog
organa
Doneta bele{ka odbora o zadu enju organa(Bele{ka odbora)
Donet izveštaj odbora
(Izveštaj odbora)
Uključen u dnevni red sednice odbora
Uključen u dnevni red
sednice Vlade
Predmet uključen u nacrt dnevnog reda
sednice odbora
Donet zaključak Vlade(Zaključak)
Odlo en za narednu sednicu
Odlo en za narednu sednicu
Upućen nadle nom
organu
Stigao izve{taj(Izve{taj nadle nog organa)
Predmet uklju~en u nacrt dnevnog
reda sednice Vlade
PODPOSAOKompletiranje
predmeta
Kompletiranje predmeta
Vra}en na kompletiranje
26
Primer 3
Primeri UML 2.0 DA
Primer Koji prikazuje Exception handling
27
Dijagram aktivnosti – Pregled elemenata
Initial node Activity final node Action Decision Merge Fork Join Flow/edge Action
decomposition
Action
Action
Send signal
Accept signal
<<transformation>>
region
boolean expression{ }
Accept (Receive) signal
Send signal
Time or event signal
Pin Transformation (Expansion) region Flow final Join Specification