Miika Nurminen, 18.3.2005
description
Transcript of Miika Nurminen, 18.3.2005
Miika Nurminen, 18.3.2005
Kerho
-alusta() : void+lue_tiedostosta(tied : String) : String+talleta() : String+kerhon_nimi(): String+jasenia() : int+poista(nro: int) : int +jasenet() : Jasenet +harrastukset() : Harrastukset+teeBak(bak_tark : String) : int
Jasenet
- max_lkm : int- lkm : int- muutettu : int- tiedoston_nimi : String- bak_nimi : String- koko_nimi : String
- poista_kaikki() : void- poista_alkiot() : void- poista_taulukko() : void- luo_taulukko(koko : int) : String - alusta() : void- rajoihin(i : int) : int+lisaa(jasen : Jasen) : String +anna(i : int) : Jasen+lue_tiedostosta(tied : String) : String+talleta() : String+koko_nimi() : String +lkm() : int+tiedoston_nimi() : String+bak_nimi() : String+teeBak(bak_tark : String) : int
Harrastukset
- max_lkm : int- lkm : int- muutettu : int- tiedoston_nimi : String- bak_nimi : String- koko_nimi : String- kohdalla : int
- poista_kaikki() : void- poista_alkiot() : void- poista_taulukko() : void- luo_taulukko(koko : int) : String - alusta() : void- rajoihin(i : int) : int+lisaa(harrastus : Harrastus) : String+anna(i : int) : Harrastus+lue_tiedostosta(tied : String) : String+talleta() : String+lkm() : int+tiedoston_nimi() : String+eka(nro : int) : Harrastus+seuraava(nro : int) : Harrastus+teeBak(bak_tark : String) : int
Naytto
- logo() : void- void avustus(valinta : char) : void- lisaa_uusi_jasen(valinta : char) : void- etsi_jasenen_tiedot(valinta : char) : void- tulosteet(valinta : char) : void- tietojen_korjailu(valinta : char) : void- paivita_jasenmaksuja(valinta : char) : void- paamenu() : void- tulosta(os : ostream; jasen : Jasen) : void- kysy_tiedot(jasen : Jasen) : void+ohjeet() : void+kiitokset() : void+lue_tiedosto() : int+talleta() : int+paavalinta() : int
Kerhon jäsenrekisteri (toteutusvaiheen luokkakaavio)
Jasen- jasen_id : int - nimi : String- hetu : String- katuosoite : String- postinumero : String- postiosoite : String- kotipuhelin : String- tyopuhelin : String- autopuhelin : String- liittymisvuosi : int - jmaksu : double- maksu : double- lisatietoja : String - seuraava_nro : int
+vastaa_aku_ankka() : void +tulosta(os : ostream) : void +rekisteroi() : int+tunnus_nro() : int
*
Harrastus- harrastus_id : int- jasen_id : int- ala : String- aloitusvuosi : int- tuntia_viikossa : int- seuraava_nro : int
+tulosta(os : ostream) : void +vastaa_pitsin_nyplays(nro : int) : void+viite_nro() : int+rekisteroi() : int+tunnus_nro() : int
*
1
1
1 1..*
1
1
a yleistyy b:hen (perintä)
UML-notaatiosta
a b
a on koostettu b:hen (kompositio, b:n tuhoutuessa myös a tuhotaan)
a b
a on assosioitu b:hen (esim. a:ssa osoitin b:hen)
a b
UML-pikaoppaita: http://www-306.ibm.com/software/rational/uml/ http://www.holub.com/goodies/uml/
Piirto-ohjelmia esim. Dia, ArgoUML, SCED, MetaEdit, Prosa, Radional Rose tai hätätapauksessa vaikka Visio tai Powerpoint.
a ja b on assosioitu (2-suuntainen linkki)a b
Luokka-yksityinen attribuutti#suojattu attribuutti
-yksityinen operaatio#suojattu operaatio+julkinen operaatio
a on koostettu b:hen (a voi olla olemassa myös ilman b:tä)
a b
Assosiaatio/koosteviivojen päissä voidaan käyttää seuraavia kardinaalisuusmerkintöjä:
a b1..* Jokaisesta a:sta on assosiaatio 1 tai useampaan b:hen. Jokaisella b:llä on assosiaatio yhteen a:han.
1
1 linkki yhteen olioon1..* linkki yhteen tai useampaan olioon0..1 linkki korkeintaan yhteen olioon• Linkki 0 tai useampaan olioon
Esimerkki:
Luokkia/olioita voidaan yhdistää seuraavilla suhteilla:
Miika Nurminen, 18.3.2005
Kerho
lue_tiedostosta()talleta()jasenet()harrastukset()
Naytto
Kerhon jäsenrekisteri (analyysivaiheen luokkakaavio)
Jasenjasen_idnimihetuosoite
Harrastusharrastus_idala
1
1
*
1..*
*
1