1 / 36

UML pagrindai

UML pagrindai. Įvadas, elgsenos modeliavimas Lekt. dr. Agnius Liutkevičius. UML. PĮ projektavimo metodika ir priemonės Sukurta OMG ( www.uml.org ) Leidžia aprašyti kuriamą sistemą (ar jos dalį) norimame abstrakcijos lygyje. UML privalumai.

rossa
Download Presentation

UML pagrindai

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UML pagrindai Įvadas, elgsenos modeliavimas Lekt. dr. Agnius Liutkevičius

  2. UML • PĮ projektavimo metodika ir priemonės • Sukurta OMG (www.uml.org) • Leidžia aprašyti kuriamą sistemą (ar jos dalį) norimame abstrakcijos lygyje

  3. UML privalumai • Kuriama sistema yra profesionaliai suprojektuojama ir dokumentuojama dar prieš realizaciją. Tiksliai žinoma ką reikia pasiekti. • Kadangi sistema pradžioje suprojektuojama, galima nustatyti, kurios vietos bus perpanaudotos – mažėja kūrimo kaina. • Lengva nustatyti projektavimo klaidas. • Geras sistemos projektas užtikrina teisingą ir efektyvų realizavimą – mažėja kūrimo kaina. • UML leidžia aprašyti sistemą norimu detalumu ir norimais pjūviais.  • Atlikti sistemos modifikacijas yra žymiai lengviau turint sistemos UML dokumentaciją – mažėja palaikymo kaina. • UML leidžia kitiems kūrėjams greitai suvokti jūsų sistemą. Tai visuotinai pripažintas standartas.

  4. Spartus sistemų kūrimas (angl. Rapid Development) • Efektyvesnis ir greitesnis nei tradicinis “krioklio” metodas. • Susideda iš: • Reikalavimų išgavimas; • Analizė; • Projektavimas; • Kūrimas; • Diegimas.

  5. Reikalavimų išgavimas • Ko iš mūsų nori užsakovas??? • Verslo procesų identifikavimas: • Scenarijų diagramos (angl. activity) • Dalykinės srities analizė: • Aukšto lygio klasių diagrama • Sąveikaujančių sistemų išskyrimas: • Realizacijos (angl. deployment) • Rezultatų pristatymas užsakovui

  6. Analizė • Vartojimo atvejų identifikavimas: • Vartojimo atvejų diagrama (-os) (angl. use case) • Vartojimo atvejai detalizuojami: • Veiksmų sekų aprašymai • Detalizuojamos klasių diagramos: • Detalizuota klasių diagrama • Analizuojamos sistemos galimos būsenos: • Būsenų diagrama (angl. state) • Nustatomos objektų tarpusavio sąveikos: • Sekų ir bendradarbiavimo diagramos (angl. sequence, collaboration) • Analizuojama sąveika su kitomis sistemomis: • Detali realizacijos diagrama (angl. deployment)

  7. Projektavimas • Objektų diagramų kūrimas ir detalizavimas: • Scenarijų diagramos (angl. activity) • Komponentų diagramų kūrimas • Diegimo (angl. deployment) plano sudarymas • Vartotojo sąsajos projektavimas ir prototipai • Testų kūrimas • Dokumentacijos kūrimas: • Dokumentacijos struktūros sudarymas

  8. Kūrimas • Kodo rašymas • Kodo testavimas • Vartotojo sąsajų kūrimas ir testavimas • Pilna sistemos dokumentacija

  9. Diegimas • Sistemos atstatymo plano sudarymas • Sistemos įdiegimas aparatūrinėje įrangoje • Integruotos sistemos testavimas • Šventimas  ... arba ne 

  10. UML komponentai • UML susideda iš įvairių grafinių elementų apjungiamų į diagramas. • UML yra kalba, todėl egzistuoja griežtos grafinių elementų panaudojimo taisyklės. • Diagramų tikslas – įvairiais pjūviais aprašyti kuriamą sistemą, t.y. sudaryti sistemos modelį. • UML modelis aprašoką sistema turi daryti, bet jis nepasakokaip realizuoti tą sistemą.

  11. UML diagramų tipai (visi)

  12. UML diagramų tipai (1) • Klasių diagramos(angl. class): • Skirsto daiktus į kategorijas. Klasė aprašo daiktų grupę, kurie turi panašius atributus ir vienodą elgseną. • Sekų(angl. sequence)diagramos: • Aprašo objektų sąveiką laike. • Vartojimo (panaudos) atvejų(angl. usecase)diagramos: • Aprašo sistemos elgseną iš vartotojo pozicijų. • Veiklos arba Scenarijų(angl. activity)diagramos: • Aprašo veiksmų sekas.

  13. UML diagramų tipai (2) • Būsenų (angl. state) diagramos: • Nusako objektų būsenas ir jų pasikeitimus laike. • Bendradarbiavimo (komunikavimo) (angl. collaboration, communication) diagramos: • Aprašo objektų sąveiką. • Realizacijos (angl. component, deployment) diagramos: • Nusako sistemos komponentus ir parodo fizinę sistemos struktūrą.

  14. UML modeliavimo ir sistemų kūrimo priemonės • Mokamos (turi Trial versijas): • MagicDraw (https://www.magicdraw.com/) • Enterprise Architect (http://www.sparxsystems.com/) • IBM Rational Software Architect (http://www.ibm.com/developerworks/downloads/r/architect/) • Microsoft Visio • ir begalė kitų  • Nemokamos: • ArgoUML (http://argouml.tigris.org/) • Visual Paradigm (Community Edition) (http://www.visual-paradigm.com/) • Umbrello UML Modeller (http://uml.sourceforge.net/) ir kt.

  15. Vartojimo atvejų diagramos • Aprašo sistemos funkcionalumą • Esminiai elementai: • Aktoriai (angl. Actor) • Vartojimo atvejai (angl. Usecase) • Ryšiai (angl. Relationships) • Sistemos ribos (angl. System boundary)

  16. Aktoriai • Aktoriai aprašo sistemos vartotojus • Kiekvienas aktorius aprašo skirtingą vartotojo rolę (o ne konkretų vartotoją!) • pvz. administratorius, galutinis vartotojas ir pan. • Žymima:

  17. Vartojimo atvejis • Aprašo vieną vartotojui matomą sistemos funkciją • Vykdant pasiekiamas konkretus vartotojo iškeltas tikslas

  18. Detalus vartojimo atvejo aprašymas Grafinė sąsaja:

  19. Vartojimo atvejų modelis • Inicijuojantis (angl. initiating) aktorius yra kairėje vartojimo atvejo pusėje, o priimantis (angl. receiving) aktorius yra dešinėje pusėje.

  20. Asociacija Vartojimo atvejis Aktorius Vartojimo atvejų diagramos pavyzdys

  21. Kardinalumai

  22. Quake II vartojimo atvejų diagrama

  23. Ryšiai • <<include>> • <<extend>> • Aktorių hierarchija

  24. <<include>> • Naudojamas nurodyti, kad atliekant vieną vartojimo atvejį, būtinai atliekamas ir kitas.

  25. <<extend>> • Naudojamas nurodyti, kad atliekant vieną vartojimo atvejį, esant tam tikrai sąlygai, atliekamas ir kitas.

  26. Aktorių hierarchija

  27. Veiklos arba Scenarijų diagramos • Verslo procesų aprašymui • Vartojimo atvejų detalizacijai: • Kiekvieną vartojimo atvejį detalizuoja viena scenarijų diagrama. • Būsenų diagramos plėtinys: • Būsenų diagrama išryškina būsenas ir parodo veiklas kaip perėjimus tarp būsenų. Veiklos diagramos labiau koncentruojasi į pačias veiklas.

  28. Elementai • Veiksmų būsenos – aprašo sistemoje atliekamus veiksmus. • Perėjimas – jungia dvi veiksmų būsenas, atvaizduoja vykdymo eigą. • Išsišakojimas (angl. branch) • Sinchronizavimas: • Išlygiagretinimas (angl. fork) • Apjungimas (angl. join) • Objektai • Signalai

  29. Pradžia (start) Išlygiagretinimas (fork) Išsišakojimas (branch) Apjungimas (merge) Apjungimas (join) Pabaiga (end) Veiklos diagramos modelis

  30. Veiklos diagramos pavyzdys

  31. Išsišakojimas ir apjungimas • Skirtas alternatyvioms veiksmų šakoms aprašyti. • Nurodomos sąlygos, kurioms esant atliekama viena arba kita veiksmų seka.

  32. Išlygiagretinimas ir sinchronizavimas • Skirtas lygiagrečioms veiksmų šakoms aprašyti (lygiagretiems procesams).

  33. Objektai • Veiklos metu gali būti sukurti objektai (veiklos produktai), kurie naudojami kitose veiklose. • Duomenys, kurie “keliauja” per veiklas.

  34. Signalai • Atliekant veiksmų sekas galima išsiųsti signalą išoriniams procesams (objektams). • Gautas signalas naudojamas veiksmo inicializacijai.

  35. Detali veiklos diagrama

  36. Ačiū už dėmesį

More Related