Poglavje 3 DIA - Naˇcrtovanje diagramov

  • View
    215

  • Download
    1

Embed Size (px)

Text of Poglavje 3 DIA - Naˇcrtovanje diagramov

  • Poglavje 3

    DIA - Nacrtovanje diagramov

    Diagram poteka (aktivnosti)UML jezik

    Primer: nacrtovanje diagrama z UML

  • 70 DIA - Nacrtovanje diagramov

    3.1 Teoreticno ozadje

    3.1.1 Diagram poteka/aktivnosti

    Diagram poteka (Flow chart) je diagram za prikaz monih poti podatkov skozisistem oz. je eden izmed nacinov zapisa algoritma. Diagram prikazujenatancno zaporedje operacij, ki jih programsko orodje pri obdelavi podatkovizvede. Razlicni graficni simboli predstavljajo vnos in izpis podatkov, odlocitve,razvejitve in podprogramska orodja. Uporablja se v racunalnitvu, matematiki,pravu, logistiki in v mnogih drugih vedah. Danes se diagrami poteka oz.diagrami aktivnosti riejo predvsem v standardiziranem opisnem jeziku UML(Unified Modeling Language).

    Diagram poteka prikazuje prehode iz ene aktivnosti na drugo. Elementidiagrama aktivnosti so: aktivnosti, prehodi med aktivnostmi, razvejitve(socasne razvejitve), socasno sticice, linija toka dogodkov in objektni tok. Kotrezultat aktivnosti je akcija, katere posledica je prehod v drugo aktivnost ali pale vracanje vrednosti. Iz diagrama je jasno razvidna odgovornost za posamezneaktivnosti. Ce sov tokdogodkovvpleteni pomembni objekti, jih lahko spomocjoobjektnega toka dodamo v diagram aktivnosti.

    3.1.2 Standard UML

    Programsko orodje UML je graficni jezik za vizualizacijo, modeliranje,specifikacijo, konstruiranje in dokumentiranje programske opreme. UMLpredstavlja zbir najboljih postopkov v prakticno objektno orientiranemmodeliranju. Vedeti moramo, da UML ni metodologija za razvojinformacijskega sistema, ampak jezik, skupek tehnik, ki jih lahko uporabljamoskupaj s poenotenim procesom ali katero drugo metodologijo.

    Zacetek razvoja UML umecamo v leto 1994. Takrat je bilo na voljo okoli50 razlicnih metodologij za objektno usmerjeno analizo in nacrtovanje. Idejaraziskovalcev, ki so raziskovali na tem podrocju je bila zdruitev metodologijv enoten jezik za modeliranje, ki bi vseboval prednosti razlicnih metodologij.Tako je nastal UML. Med novimi metodami, ki so se pojavile v tistem casuso izstopale Boochova metoda, Jacobsonova metoda OOSE (Object-OrientedSoftware Engineering) in Rambaughtova metoda OMT (Object Modeling Techniq).V sredini 90-tih let so avtorji teh treh metod zasnovali nov modelni jezik, ki najbi bil podprt v vseh treh metodah (glej Sliko 3.1).

    Cilj UML je uporabniku ponuditi standarden, izrazno mocan vizualnimodelirni jezik; omogociti mehanizme razirjanja in specializacije osnovnihkonceptov; biti neodvisen od dolocenega programskega jezika in razvojnegaprocesa; ponuditi formalno osnovo za razumevanje jezika za modeliranje;

  • 3.1 Teoreticno ozadje 71

    Slika 3.1: Zgodovinski razvoj specifikacije poenotenega modelnega jezika UML

    Vir: [78]

    spodbuditi rast trica objektnih orodij; podpirati visoko nivojske razvojnekoncepte, kot so sodelovanje, ogrodja, vzorci in komponente ter integriratinajbolje praktike.

    Na sistem UML je moc gledati skozi pet razlicnih pogledov, kar prikazujeSlika 3.2.

    Modeliranje z UML

    Pri modeliranju z UML, vrstni red ni predpisan. Koristno je, da najprejmodeliramo pogled na uporabnike zahteve, nato nacrtovalski in procesnipogled, na koncu pa e pogled na komponente in razvrstitev. Da lahkorazumemodelovanjeUML, je potrebnopoznati pomen trehosnovnihgradnikov,in sicer: elementov, povezav in diagramov.

  • 72 DIA - Nacrtovanje diagramov

    Slika 3.2: Pet pogledov na sistem UML

    Vir: [101]

    Elementi

    V UML-ju se pojavljajo tiri vrste elementov: strukturni elementi, elementiobnaanja, elementi zdruevanja in elementi opomb. Strukturni elementiso najveckrat staticni deli modela, ki predstavljajo element shematicno alifizicno. Mednje pritevamo: razrede, vmesnike, sodelovanje, primere uporabekomponente in vozlica [100].

    Razred je opis nabora objektov, ki delijo enake atribute, operacije,povezave in semantiko.Vmesnik definira povezavo med specifikacijo, spomocjo katere ugotovimo kaj abstrakcija pocne in kako to pocne medimplementacijo. Gre za zbirko operacij, ki opisujejo kako razred alikomponenta delujejo. Sodelovanje je skupina razredov, vmesnikov indrugih elementov, ki delujejo skupaj v kooperativnemobnaanju, kateregarezultat je izboljano delovanje sistema. Primer uporabe je opis nizazaporednih akcij, ki jih sistem izvaja z namenom, da dolocenemu akterjuprinese rezultat, ki ga lahko opazujemo [100].

    Komponenta je fizicni in zamenljivi del sistema, ki omogoca izvedbo nizavmesnikov. Vozlice je fizicni element, ki obstaja v casu izvajanja programain predstavlja programski vir, z lastno rezervacijo pomnilnika [100].

    Elementi obnaanja so dinamicen del UML modela in predstavljajo

  • 3.1 Teoreticno ozadje 73

    casovno in krajevno obnaanje modela. Elemente obnaanja delimo nainterakcije in diagrame stanj. Interakcija je obnaanje, ki vkljucuje naborsporocil, ki se izmenjujejo med objekti v okviru dolocenega kontekstaza doseganje dolocenega cilja. Diagram stanja je obnaanje, ki opisujezaporedje stanj objekta ali interakcij med objekti, kot odgovor na dogodkev sistemu. Vkljucuje tevilne elemente stanja, prehode med posameznimiobjekti, dogodki in aktivnosti [100].

    Element zdruevanje je organizacijski del UML, katerega glavni elementimenujemo paket, ki omogoca zdruevanje elementov. Slui zazdruevanje modelnih elementov na nivoju arhitekturnega nacrtovanjav vecje skupine, s katerimi je laje upravljati. Zadnji izmed elementovje element opomb, katerega uporabljamo za pojasnjevanje in opisovanjedelovanja posameznih elementov v modelu [100].

    Povezave

    Kadar govorimo o povezavah, govorimo o spoju dveh elementov. V UML sepojavljajo tiri vrste povezav: odvisnosti, asociacije, generalizacije in realizacije.

    Odvisnost je semanticna povezava dveh elementov, pri katerih lahkosprememba neodvisnega elementa povzroci spremembo odvisnegaelementa. Odvisnost se uporablja takrat, ko poizkuamo pokazati, daena stvar uporablja drugo (glej Sliko 3.3).

    Asociacija je strukturirana povezava s katero pojasnjujemo nabor vezi,katere so povezave med objekti. Kot enega izmed posebnih primerovlahko izpostavimo agregacijo, ki predstavlja povezavo med celoto in delite celote (glej Sliko 3.4).

    Generalizacija je povezava, ki predstavlja povezavo specializacije ingeneralizacije, v kateri so objekti specializiranega elementa nadomestljiviz elementi generaliziranega elementa (glej Sliko 3.5).

    Realizacija je semanticna povezava med elementoma, pri kateri edenelement doloci dogovor, ki ga mora drugi izvriti. Le ta se pojavi medvmesniki v razredih ali med komponentami, ki jih realizirajo (glej 3.6).

    Diagrami

    Diagram je vizualni model, ki predstavlja pogled na dolocenem nivojuabstrakcije. V UML locimo strukturne diagrame, ki predstavljajo staticno

  • 74 DIA - Nacrtovanje diagramov

    Slika 3.3: Odvisnost

    Slika 3.4: Asosiacija in agregacija

    Slika 3.5: Generalizacija

    Slika 3.6: Realizacija

  • 3.2 O programskem orodju 75

    Strukturni diagrami Diagrami, kiprikazujejodelovanje inuporabo

    Diagrami, kiprikazujejointerakcije

    Razredni diagram(Class Diagram)

    Diagram primerovuporabe (Use CaseDiagram)

    Diagram zaporedja(Sequence Diagram)

    Objektni diagram(Object Diagram)

    Diagram aktivnosti(Activity Diagram)

    Komunikacijskidiagram(CommunicationDiagram)

    Diagram komponent(Component Diagram)

    Diagram nacrtovanjastanj (State MachineDiagram)

    Casovni diagram(Timming Diagram)

    Diagram razvrstitve(Deployment Diagram)

    Pregledni diagraminterakcij (InteractionOverviw Diagram)

    Strukturni diagram(Composite StructureDiagram)Diagram paketov(Package Diagram)

    Tabela 3.1: Vrste diagramov

    strukturo sistema, diagrame, ki prikazujejo delovanje in uporabo ter diagrame,ki prikazujejo interakcije. Diagrami, ki prikazujejo delovanje in uporabo terdiagrami, ki prikazujejo interakcijo, predstavljajo tako imenovano dinamicnostrukturo sistema (Tabela 3.1).

    3.2 O programskem orodju

    Urejevalnik diagramov Dia (v nadaljevanju Dia) je odprtokodno programskoorodje za kreiranje tehnicnih diagramov. Deluje na razlicnih operacijskihsistemih (Linux, Windows itd.). Je enostavno za ucenje in dovolj prono, sajuporabnikom omogoca ustvarjanje tevilnih diagramov. Programsko orodjeuporabljamo v razlicnih industrijskih panogah. Primer: elektricar uporabljaDia za ustvarjanje diagrama, kjer prikae delovanje vezja; programer ustvarjadiagrame za prikaz izvedbe poti.

  • 76 DIA - Nacrtovanje diagramov

    Slika 3.7: Urejevalnik diagramov Dia

    Prenos in namestitev

    Programsko orodje Dia lahko prenesemo in namestimo iz spletnega naslovaLive.gnome [6] s klikom na razdelek Download na uvodni spletni strani. Predprenosom lahko izbiramo med razlicnimi verzijami programskega orodja,odvisno kateri operacijski sistem uporabljamo. Uporabniki operacijskegasistema Ubuntu lahko programsko orodje Dia enostavno poicejo, prenesejoin namestijo s pomocjo orodja Synaptic (glej Sliko 3.8).

    Diagram je lahko sestavljen iz predmetov, ki so razlicnih oblik, crt, barv,velikosti itd. V razdelku Orodja se nahaja paleta vnaprej dolocenih predmetov,vkljucno s preprostimi oblikami, crtami in specificnimi predmeti. Ce elimododati dolocen predmet na platno, preprosto kliknemo na eleni predmet in gadodamo s klikom na miko. Po platnu premikamo predmete z miko in jih nato med sabo povezujemo (glej Sliko 3.9).

    Dia vkljucuje nabor standardnih oblik in linij, ki so e vnaprej dolocene.Vkljucujejo diagram poteka, UML diagram, diagram omreja, kronogram inmnoge druge diagrame. Glede na podrocje raziskovanja si lahko izberemopredmete, ki jih potrebujemo za oblikovanje diagrama.

    e izdelan diagram lahko shranimo v poljubno mapo v svojem racunalniku.To storimo tako, da v orodni vrsticiDatoteka