Kaavioista luettavat UML-laajennukset

Samankaltaiset tiedostot
Määrittelydokumentti. Ohjelmistotuotantoprojekti XPerf. Helsingin yliopisto. Tietojenkäsittelytieteen laitos. Tommi Koivula.

Testaussuunnitelma. Ohjelmistotuotantoprojekti XPerf. Helsingin yliopisto. Tietojenkäsittelytieteen laitos

Suunnitteludokumentti

UML- mallinnus: Tilakaavio

Ohjelmistotekniikan menetelmät, UML

Tilakaaviot, sekvenssikaaviot (Haikala, Märijärvi ss , )

Ohjelmointiharjoituksia Arduino-ympäristössä

Ohjelmistojen mallintaminen Unified Modeling Language (UML)

UML -mallinnus TILAKAAVIO

Ohjelmistojen mallintaminen kertausta Harri Laine 1

Ylläpitodokumentti. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Olioperustaisuus (object oriented)

Johdatus sovellussuunnitteluun, s99, osa2 Helsingin yliopisto;/tktl Harri Laine 1. Olioperustainen ohjelmistokehitys

Perusarkkitehtuurin ja vuorovaikutuksen mallintamisen perusteita.

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio

Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio

Johdatus sovellussuunnitteluun, s99, osa2 Helsingin yliopisto;/tktl Harri Laine 1. Olioperustaisuus (object oriented)

Unified Modeling Language

TIE Samuel Lahtinen. Lyhyt UML-opas. UML -pikaesittely

Ohjelmistojen mallintaminen, mallintaminen ja UML

Johdatus sovellussuunnitteluun

Ohjelmistojen mallintaminen, sekvenssikaaviot

Informaatioteknologian laitos Olio-ohjelmoinnin perusteet / Salo

Luento 5. Timo Savola. 28. huhtikuuta 2006

Johdatus sovellussuunnitteluun

ITKP102 Ohjelmointi 1 (6 op)

UML:n yleiskatsaus. UML:n osat:

ITKP102 Ohjelmointi 1 (6 op), arvosteluraportti

ITKP102 Ohjelmointi 1 (6 op)

Java kahdessa tunnissa. Jyry Suvilehto

UML-kielen formalisointi Object-Z:lla

Ohjelmistojen mallintaminen Olioiden yhteistyö Harri Laine 1

1. Tarkastellaan seuraavaa kaaviota

käyttötapaukset mod. testaus

Ylläpitodokumentti. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

ITKP102 Ohjelmointi 1 (6 op)

Kääreluokat (oppikirjan luku 9.4) (Wrapper-classes)

Java-kielen perusteet

UML metamallina. Seminaariesitelmä Minna Majuri HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

TyontekijaOhjelma. +main() (käyttää) + = public - = private

Projektisuunnitelma Viulu

tietueet eri tyyppisiä tietoja saman muuttujan arvoiksi

Muuttujatyypit ovat Boolean, Byte, Integer, Long, Double, Currency, Date, Object, String, Variant (oletus)

Ohjelmien analysointi. ER-kaaviot

Taulukot. Jukka Harju, Jukka Juslin

Ohjelmistotekniikan menetelmät, mallintaminen ja UML

Harjoitus Olkoon olemassa luokat Lintu ja Pelikaani seuraavasti:

811120P Diskreetit rakenteet

Toimintokaavio. UML-Toimontokaavio 1

Algoritmit 2. Luento 13 Ti Timo Männikkö

Algoritmit 1. Demot Timo Männikkö

Ylläpitodokumentti Mooan

ITKP102 Ohjelmointi 1 (6 op)

UML - unified modeling language

UML OHJELMISTOPROSESSIEN TUKENA

UML-MALLINNUS MICROSOFT VISIOLLA JOUNI HUOTARI

Testausraportti v.1.3

Käyttöohje. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Sisältö. 2. Taulukot. Yleistä. Yleistä

Luokka- ja oliokaaviot

Käyttöohje. Versiohistoria: versio Mari Kommenttien perusteella korjattu versio

Yleistä. Nyt käsitellään vain taulukko (array), joka on saman tyyppisten muuttujien eli alkioiden (element) kokoelma.

Subversion-ohje. Linux Traffic Control-käyttöliittymä Ryhmä paketti2

Algoritmit 1. Demot Timo Männikkö

17. Javan omat luokat 17.1

Sisältö. 22. Taulukot. Yleistä. Yleistä

f(n) = Ω(g(n)) jos ja vain jos g(n) = O(f(n))

Kompositio. Mikä komposition on? Kompositio vs. yhteyssuhde Kompositio Javalla Konstruktorit set-ja get-metodit tostring-metodi Pääohjelma

Arduinon ohjelmointi. Sami-Petteri Pukkila. 6. helmikuuta 2017

Testaussuunnitelma. Koskelo. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

TIEA241 Automaatit ja kieliopit, kevät Antti-Juhani Kaijanaho. 12. tammikuuta 2012

UML-mallinnus ja prosessien kuvaaminen Microsoft Visiolla (versio 2003 professional) Jouni Huotari

20. Javan omat luokat 20.1

TIEA341 Funktio-ohjelmointi 1, kevät 2008

Sisällys. 20. Javan omat luokat. Java API. Pakkaukset. java\lang

Kaaviotekniikoista (erityisesti UML)

Luokat ja oliot. Ville Sundberg

Visual Case 2. Miika Kasnio (C9767)

JAVA-PERUSTEET. JAVA-OHJELMOINTI 3op A JAVAN PERUSTEET LYHYT KERTAUS JAVAN OMINAISUUKSISTA JAVAN OMINAISUUKSIA. Java vs. C++?

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 5. marraskuuta 2015

Kaaviotekniikoista (erityisesti UML) (ajan riittäessä pikkasen projekteista)

UML -mallinnus Viestiyhteyskaavio EERO NOUSIAINEN

CoMa - Ohjelmoinnin tyyliohje

7. Näytölle tulostaminen 7.1

GroupDesk Toiminnallinen määrittely

Lomalista-sovelluksen määrittely

Toteutusdokumentti. Ohjelmistotuotantoprojekti XPerf. Helsingin yliopisto. Tietojenkäsittelytieteen laitos

2 Ohjelmistoarkkitehtuurien kuvaaminen

17. Javan omat luokat 17.1

Javan perusteita. Janne Käki

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys

Kaaviotekniikoista (erityisesti UML)

Kielioppia: toisin kuin Javassa

4.3. Matemaattinen induktio

Sisällys. 7. Oliot ja viitteet. Olion luominen. Olio Java-kielessä

Ohjelmistojen mallintaminen, mallintaminen ja UML

Harjoitus 5 (viikko 48)

Erlang. Miika Heinonen ja Lassi Uosukainen (Group 92) TIE Principles of Programming Languages Seminaariessee. Yleistä

Harjoitus 2 (viikko 45)

16. Javan omat luokat 16.1

Transkriptio:

Helsingin yliopisto Tietojenkäsittelytieteen laitos Ohjelmistotuotantoprojekti XPerf Kaavioista luettavat UML-laajennukset Tommi Koivula Antti Levomäki Juha Mondolin Timo Suomela Versio 1.1 13. huhtikuuta 2003

1 Versiohistoria Versio Päivämäärä Kommentti / muutokset Tekijä 1.0 13.4.2003 Sekvenssikaavion silmukoiden muutokset. Timo Suomela 1.1 13.4.2003 Sekvenssikaavion viestien parametrien muutokset. Tommi Koivula

2 Luokkakaavio... 3 Sekvenssikaavio... 3 Yhteistyökaavio... 6 Tilakaavio... 8 Aktiviteettikaavio... 8

3 Luokkakaavio Ei UML-laajennuksia. Sekvenssikaavio Sekvenssikaaviossa voi olla useita silmukoita. Jokaista silmukkaa varten pitää määritellä seuraavat UML-laajennukset: Loop.firstMessageNumber Silmukan tunniste (id) ja numero (n) erotettuna alaviivalla esim: loop1_5 Silmukan id ensimmäisen viestin numero on n.collaboration Loop.lastMessageNumber Silmukan tunniste Silmukan id (id) ja numero (n) viimeisen viestin erotettuna alaviivalla numero on n.collaboration esim: loop1_3 Loop.minimum Silmukan tunniste Silmukka id (id) ja numero (n) suoritetaan vähintään erotettuna alaviivalla n kertaa.collaboration esim: loop1_12 Loop.maximum Silmukan tunniste Silmukka id (id) ja numero (n) suoritetaan erotettuna alaviivalla korkeintaan n kertaa.collaboration esim: loop1_32

4 Loop.typical Silmukan tunniste Silmukka id (id) ja numero (n) suoritetaan esim: loop1_20 keskimäärin n kertaa.collaboration Olion elinikä määritellään seuraavilla UML-laajennuksilla. Lifetime Numero (n) Olioon liittyvän.firstmessagenumber ensimmäisen viestin järjestysnumero.object Lifetime Numero (n) Olioon liittyvän.lastmessagenumber viimeisen viestin järjestysnumero.object Seuraavia UML-laajennuksia pitää olla stimulaatiossa täsmälleen yksi: OrderNumber Numero (n) Viestin järjestysnumero

5 Constraint.time Numero (n) Viesti kestää n aikayksikköä Realtime.minimum Numero (n) Viestin pienin mahdollinen käsittely- ja siirtoaika Realtime.maximum Numero (n) Viestin suurin mahdollinen käsittely- ja siirtoaika Realtime.typical Numero (n) Viestin keskimääräinen käsittely- ja siirtoaika Seuraava UML-laajennus voi sisältyä stimulaatioon: Guard Merkkijono Viestin lähettämiseen liittyvä ehto

6 Stimulaation viestiin liittyvät parametrit ja viestin paluuarvo määritellään seuraavilla UML-laajennuksilla: Parameter.Variable.name Parametrin Viestin järjestysnumero n ja muuttujaparametri, nimi s muodossa jonka n_s. Esim. järjestysnumero on n 1_integer tai ja nimi s. 2_float. Parameter.Object.name Parametrin Viestin järjestysnumero n ja olioparametri, jonka nimi s muodossa järjestysnumero on n n_s. Esim. ja nimi s. 1_String tai 2_Object. ReturnValue Merkkijono Viestin paluuarvo Yhteistyökaavio Yhteistökaavion viestiin pitää määritellä seuraavat UML-laajennukset:

7 Predecessor Numero (n) Viestiä edeltävän viestin järjestysnumero Guard Merkkijono Viestin sisältämä ehto OrderNumber Numero (n) Viestin järjestysnumero Probability Numero (n) Siirtymän todennäköisyys Stereotype Merkkijono Viestin stereotyyppi Counter.minimum Numero (n) Silmukka suoritetaan vähintään n kertaa

8 Counter.maximum Numero (n) Silmukka suoritetaan korkeintaan n kertaa Counter.typical Numero (n) Silmukka suoritetaan keskimäärin n kertaa Tilakaavio Ei UML-laajennuksia. Aktiviteettikaavio Seuraavat UML-laajennukset pitää määritellä aktiviteettikaavion tiloille: Realtime.minimum Numero (n) Tilan suoritus kestää vahintään n aikayksikköä Realtime.maximum Numero (n) Tilan suoritus kestää korkeintaan n aikayksikköä

9 Realtime.typical Numero (n) Tilan suoritus kestää keskimäärin n aikayksikköä Jos aktiviteettikaavion tila on silmukka, sille pitää määritellä seuraavat UML-laajennukset: Loop.minimum Numero (n) Silmukka (tila) suoritetaan vähintään n kertaa Loop.maximum Numero (n) Silmukka (tila) suoritetaan korkeintaan n kertaa Loop.typical Numero (n) Silmukka (tila) suoritetaan keskimäärin n kertaa Aktiviteettikaavion tilalle voidaan lisäksi määritellä seuraava UML-laajennus:

10 Decision Merkkijono Päätösehto, jonka mukaan sopiva tilasta lähtevä siirtymä valitaan Aktiviteettikaavion siirtymälle pitää määritellä seuraava UML-laajennus: Probability Arvo [0.0 1.0] Tilasiirtymän todennäköisyys.state_machines.transition Aktiviteettikaavioon liitettävä signaali määritellään seuraavilla UML-laajennuksilla: Signal.id Merkkijono Kaavioon liittyvän signaalin tunnus.activitygraph Signal.name Merkkijono Kaavioon liittyvän signaalin nimi.activitygraph

11 Signal.type {send, receive} Kaavioon liittyvän signaalin tyyppi.activitygraph