Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

Ohjelmistotekniikan menetelmät, sekvenssikaaviot

Samankaltaiset esitykset


Esitys aiheesta: "Ohjelmistotekniikan menetelmät, sekvenssikaaviot"— Esityksen transkriptio:

1 582101 - Ohjelmistotekniikan menetelmät, sekvenssikaaviot

2 Vuorovaikutussuunnittelu
Oliojärjestelmän toiminta perustuu olioiden vuorovaikutukseen ja yhteistyöhön Olioiden yhteistyö toteutuu operaatioiden kautta Yhteistoimintakuvauksilla kuvataan, miten operaatioita käytetään Yhteistyökuvauksia voidaan määrittelyvaiheessa käyttää liiketoimintasääntöjen kuvaamiseen Olioiden yhteistoiminnan kuvaaminen on kuitenkin lähinnä suunnitteluvaiheen tehtävä

3 Vuorovaikutuksen mallintaminen UML:llä
Kuvataan järjestelmän osien (olioiden) välistä kommunikointia Tarkoituksena tarkistaa ja täydentää luokkamallia & tarjota esimerkkitapauksia sen dynaamisesta soveltamisesta Vuorovaikutus esitetään viesteinä olioiden (tai niiden elinkaarta esittävien elämänviivojen, lifeline) välillä Painopiste on viestisekvenssin kuvaamisessa, ei viestien tietosisällössä Vuorovaikutus voi olla synkronista tai asynkronista

4 Vuorovaikutuskaaviot UML:ssä
Sekvenssikaavio (sequence diagram) kuvaa operaatioiden tapahtumajärjestystä ja viestien kulkua olioiden välillä olioiden lisäksi toinen ulottuvuus on aika Kommunikointikaavio (communication diagram) painottaa olioiden välisiä kytkentöjä tunnettiin ennen UML 2.0:aa nimellä yhteistyörakennekaavio (collaboration diagram)

5 Sekvenssikaavio Havainnollistaa oliorakenteen toimintaa
Laaditaan keskeisille operaatioille ja tilanteisiin, joissa kaavioiden käyttö edistää rakenteiden ymmärtämistä Kuvaa olion (tai järjestelmän) operaation (tiettyyn) suoritukseen liittyvän olioiden yhteistyön: operaation suoritukseen osallistuvat avustavat oliot mitä näiden operaatioita kutsutaan missä järjestyksessä operaatioita kutsutaan Vältä pitkiä kaavioita (harvoin havainnollisia)

6 Sekvenssikaavionotaatio

7 Sekvenssikaavioesimerkki

8 Viestit ja aktivaatiot
aika olio1: Luokka olio2: Luokka viesti nimeää kutsuttavan operaation [ehto] viesti (parametrit) operaation aktivaatio eli suoritus (palkin pituus kuvaa sen kestoa) paluu operaation suorituksesta (jätetään usein merkitsemättä) 8/35

9 Erilaiset viestityypit

10 Sekvenssikaavioesimerkki (1/2)
public class A { private B b; private C c; private D d; ... public int doIt() { b.assist1(); c.assist2(d); } public class B { private E e; ... public void assist1() { e.doMagic(); } public class C { public void assist2(D d) { d.serviceD()

11 Sekvenssikaavioesimerkki (2/2)
b: B e: E c: C d: D doIt assist1() doMagic assist2(d) serviceD

12 Sekvenssikaavio: olioiden elinkaaren merkitseminen
m: MyMain tmp: MyHelper create use yksityiskohdat jätetty pois delete Huom. delete-operaatio voi olla eksplisiittinen (kuten C++:ssa) tai implisiittinen (kuten Javassa)

13 Sekvenssikaavio: silmukat
*[ehto]palvelu * koottu koottua palvelujoukkoa pyydetään useilta

14 Sekvenssikaavio: jakaminen
Käytettävää palvelua kuvaava erillinen alikaavio

15 Esimerkki: Login

16 Esimerkki: exit

17 Käytettävä operaatio (viesti)
Kommunikaatiokaavio Kuvaa miten, yhteistyö perustuu olioiden välisiin kytkentöihin 1: palvelu1 olio1 olio2 yhteys1 Järjestysnumero kuvaa suoritusjärjestyksen; numerointi voi olla monitasoinen 1.1: palvelu2 yhteys2 Käytettävä operaatio (viesti) olio3

18 Viestit kommunikaatiokaaviossa

19 Kommunikaatiokaavioesimerkki
1: assist1 doIt a: A b: B 2: assist2(d) 1.1: doMagic 2.1: serviceD d: D c: C e: E


Lataa ppt "Ohjelmistotekniikan menetelmät, sekvenssikaaviot"

Samankaltaiset esitykset


Iklan oleh Google