UML RASE 10.5.2006.

Slides:



Advertisements
Samankaltaiset esitykset
Vihreän liiton kesäpäivät 2006 Panu Laturi
Advertisements

Ohjelmistokehitys Viikko 2 Mika Salo Pekka Valtonen Asmo Voutilainen
@ Leena Lahtinen Helia Ohjelman perusrakenteet 1. PERÄKKÄISRAKENNE 2. VALINTARAKENNE 3. TOISTORAKENNE.
– Ohjelmistojen mallintaminen luokkamallin lisäpiirteitä.
Koostumussuhde Jukka Juslin © Jukka Juslin.
Ohjelmiston tekninen suunnittelu
Määritystyön eteneminen
Tietojärjestelmät 2.
7. Käyttötapausmallinnus (kirjassa 8.4)
Suunnitelma ohjelmiston testaukseen
Ohjelmistotuotanto - Mallinnus
Luokkakaaviot Luokkakaaviot Tekninen suunnittelu.
Tietojärjestelmät ja Systeemisuunnittelu
Tietokanta.
Tietokannan suunnittelu
Tapahtumasekvenssit = Käyttötapausten realisointi
Tekninen suunnit-telu
Näytölle tulostaminen. 7.2 Sisällys System.out.println - ja System.out.print -operaatiot. Tulostus erikoismerkeillä. Edistyneempää tulosteiden.
Ohjelmistotekniikka: Ohjelmiston mallintaminen, osa I
Perintä. Yleistä Olio-ohjelmoinnin menetelmä muodostaa uusia luokkia aiemmin määriteltyjen luokkien avulla Luokka saa automaattisesti käyttöönsä kaikki.
Päivi Ovaska Tutkijaopettaja LTY/Tite
Tietojärjestelmän suunnittelu
@ Leena Lahtinen OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT.
Ohjelmistotekniikka Specifikaatiot: Määrittely, suunnittelu, työkalut ja standardit . Kevät 2002 Päivi Ovaska LTKK/Tite.
Tietojärjestelmät ja Systeemisuunnittelu
Oliomallittaminen ja UML
SE-02 Olioperustainen ohjelmistokehitys Tampereen yliopisto, syksy 2000 Roope Raisamo perustuu Kai Koskimiehen Oliokirjaan ja kurssin aiempiin materiaaleihin.
TAULUKKO YKSIULOTTEINEN TAULUKKO. TAULUKKO  Taulukon tarkoitus Ohjelmassa tarvitaan paljon samantyyppisiä samaan kohdealueeseen kuuluvia muuttujia Näitä.
TIETO JA TIETOKONEOHJELMA TIETOKONEOHJELMA KÄSITTELEE TIETOJA TIETOJA VOIDAAN KÄSITELLÄ OHJELMASSA VAIN SALLITUILLA MENETELMILLÄ.
Valsta Olioiden välinen yhteistyö Oliokeskeisen/-pohjaisen järjestelmän toiminta on olioiden välistä vuorovaikutusta, tapahtumia ja tapahtumaketjuja.
1 Kertaus koetta varten oleellisista asioista Jukka Juslin.
Johdatus ohjelmointiin Ohjelmistosuunnittelu Jaana Holvikivi.
Polun pyöreä pöytä Eero Tuomenoksa Polku Eero Tuomenoksa Ohjelma 18:00 Polun tämän hetken tilanteen esittely 18:50 Polun kehityssuunnat.
Ohjelmistotekniikka ja projektinhallinta, 4 op
Osaamisen ja sivistyksen parhaaksi Oppijan verkkopalveluiden hyväksymistestitapausten kuvausohje.
Selainkäyttöliittymän tuotantoprosessi Klikkaamalla pääotsikoista tietosi karttuu. Sininen mökki toimii paluupainikkeena. Selainkäyttöliittymän tuotantoprosessi.
Kalenteri 2005 AJAVA – Ajanvarausjärjestelmä CSP Compact Software Products.
JHS:N SUOSITUKSET VAATIMUSMÄÄRITTELYLLE SEPPO RÄSÄNEN SAVONIA-AMMATTIKORKEAKOULU TERVEYSALA, KUOPIO Ohjelmistotekniikka ja projektinhallinta,
Miika Nurminen, Kerho -alusta() : void +lue_tiedostosta(tied : String) : String +talleta() : String +kerhon_nimi(): String +jasenia() : int +poista(nro:
Käyttötapauskaavio ja käyttötapaukset
Esitutkimus (tarvekartoitus)
Systeemityö 2 Käyttötapauskaavio Teppo Räisänen, Principal Lecturer
Muunnos luokkakaaviosta relaatiokaavioon
10. Abstrakti luokka Johdanto Abstrakti luokka (abstract class) poikkeaa konkreettisesta luokasta (ei-abstrakti luokka) siten, että siitä ei.
Johdanto Teppo Räisänen, Principal Lecturer Oulu University of Applied Sciences, School of Business and Information Management
Package diagram Tiia Jefremoff
Koostekaavio – Composite Structure Diagram Kinnula – Kellolampi - Lehtosaari.
– Ohjelmistojen mallintaminen, mallintaminen ja UML.
Mallinnustavat.
@ Leena Lahtinen TIETOKONEOHJELMAN RAKENNE OHJELMALLA ON KAKSI OSAA:  MÄÄRITYSOSA TIETOJEN KUVAUKSIA VARTEN  SUORITUSOSA TIETOJEN KÄSITTELYÄ.
Käyttötapaus (Use case) UML-tekniikalla
Jouni Juntunen Oulun seudun ammattikorkeakoulu Liiketalouden yksikkö
Component diagram– Komponenttikaavio J. Pätsi & H. Malmihuhta
Kontrollirakenteet laajemmin
– Ohjelmistojen mallintaminen Unified Modeling Language (UML)
8. Periytyminen Sisällys Mitä on periytyminen? Yksittäis- ja moniperiytyminen. Oliot ja perityt luokat. Periytymisen käyttö.
Koostekaavio– composite structure diagram Mikko Näpänkangas.
Liiketoimintaprosessit ja MS Visio 2010
Ohjelmistotekniikka - Määrittely (Analysis) Kevät 2003 Hanna-Kaisa Lammi LTY/Tite.
Ohjelmistotuotanto - Spesifikaatiot ja dokumentointi
Tietojärjestelmät ja Systeemisuunnittelu
Lehden tietojärjestelmän suunnittelu ja käyttöönotto.
PALVELUTEHTÄVISSÄ TOIMIMINEN Mitä näytössä näytetään.
UML-luokkakaavio ● Luokkakaavio (class diagram) kuvaa järjestelmän luokkarakennetta ● Mitä luokkia on olemassa ● Minkälaisia luokat ovat ● Luokkien suhteet.
Prosessimallinnuksen kehittäminen JHKA-jaosto Jari Kallela.
UML-mallinnus osana tietotuotemäärittelyä
Liiketoimintaprosessit ja MS Visio 2010
– Ohjelmistojen mallintaminen Unified Modeling Language (UML)
2. Olio-ohjelmoinnin perusteita
1. Olio-ohjelmointi.
Esityksen transkriptio:

UML RASE 10.5.2006

Yleistä UML on oliokeskeisen ohjelmistotuotannon mallinnukseen liittyvä kieli Vanhemman, rakenteisen suunnittelun kielenä on omat menetelmät (esim. SA/SD/RT) UML (Unified Modeling Laguage) on standardoitu mallinnuskieli: alunperin mm. ohjelmistojen kuvaamiseen ja dokumentointiin sitten käyttöalue laajentunut mm liiketoimintaprosessien mallinnukseen Mallinnusohjelmia on runsaasti tarjolla Rational Rose (www.rational.com) System Architect (www.popkin.com) Visual UML (www.visualobject.com) Poseidon (www.download.com/Poseidon-for-UML-Community-Edition/3000-2212_4-10342659.html) Jotkin piirto-ohjelmat tukevat UML-notaatiota

Yleistä UML-kaavioista UML kaavioita on määritetty kahdeksan Use Case Käyttötapaus Sequence Sekvenssi Class Luokka State Tilakaavio Activity Vuokaavio Collaboration Yhteistyö Component Komponentti Deployment Sijoittelu

Use Case - Käyttötapauskaavio Koostuu käyttäjistä ja käyttötapauksista käyttäjien ja järjestelmän välillä Selkeä ja helppo ymmärtää suunnittelija, asiakas ja järjestelmän käyttäjät ymmärtävät yhteinen työväline asioiden tarkentamiseksi (iterointi) Järjestelmä Käyttötapaus Käyttötapaus Käyttäjä Käyttäjä

Use Case - Käyttötapauskaavio Käyttäjä Käyttäjä – Actor: Kuvataan ”tikku-ukkona” Käyttäjät EIVÄT ole tietojärjestelmän osia Käyttäjä voi syöttää tietoa järjestelmään / vastaanottaa tietoa järjestelmästä Ihmisten lisäksi käyttäjät voivat olla myös toisia tietojärjestelmiä, jotka kommunikoivat tämän järjestelmän kanssa ohjelmien välityksellä

Use Case - Käyttötapauskaavio Käyttötapaus – Use Case: Kuvataan ovaalina Käyttötapaus kuvaa toimintaa tai toiminnan osaa Se voi olla myös tapahtuma, johon tulee reagoida Kuvaa käyttäjän ja tietojärjestelmän välistä vuorovaikutusta Käyttötapaus voi olla laaja kokonaisuus tai pieni yksityiskohta Käyttötapaus

Use Case - Käyttötapauskaavio Yhteyssuhteet: Linkki (Association) Yksisuuntainen (Unidirectional) Kaksisuuntainen (Bidirectional) Yhteys (Connection) ’käyttää’ – uses (myös include) ’laajentaa’ – extends Riippuvuus (Dependency) <<uses>> <<extends>>

Use Case - Käyttötapauskaavio Yksisuuntainen kommunikointisuhde käyttäjän ja käyttötapauksen välillä kuvataan siis yksisuuntaisella nuolella Kaksisuuntainen kommunikointisuhde kuvataan joko pelkällä viivalla tai sitten kaksisuuntaisella nuolella Nuolen suunta kertoo, kumpi osapuoli käynnistää kommunikoinnin (käynnistäjästä poispäin) Asiakas Tee tarjous Järjestelmä Hyväksy tilaus Myyjä

Use Case - Käyttötapauskaavio Käyttötapaus alkaa jonkun käyttäjän aloitteesta ja päättyy kun järjestelmä on tuottanut lisäarvoa käyttäjälleen Hyvän käyttötapauksen ominaisuuksia: ymmärrettävyys: asiakkaan ja järjestelmän tulevien käyttäjien tulee ymmärtää ne. Kuvausten oltava mahdollisimman konkreettisia kuvaa asiakasvaatimuksia: vältetään ottamasta kantaa toteutukseen. ”käyttäjä identifioi itsensä” on parempi kuin ”käyttäjä identifioi itsensä syöttämällä kuusi kirjaamisen käyttäjätunnuksen ja nelinumeroisen salasanan. testattavuus: käyttötapaukset muodostavat perustan järjestelmätestaukselle. Käyttötapauksen oltava kokonaisuus, joka voidaan testata testausvaiheessa koko: ei saa olla liian laaja. A4-arkillinen on riittävä koko sopiva tarkkuus: kattavat tärkeimmät osat toteutuksesta. Kaikkia yksityiskohtia ei voi ottaa mukaan.

Use Case - Käyttötapauskaavio Käyttötapausten tarkoitus on siis toimia asiakasvaatimusten kartoittamisen apuvälineenä Käyttötapaukset eivät korvaa toiminnallisessa määrittelyssä esitettäviä järjestelmän toiminnan kuvauksia käyttötapausten ei tarvitse kattaa järjestelmän koko toiminnallisuutta kaikista ominaisuuksista ei kannata edes tehdä käyttötapauksia yhden käyttötapauksen suorittaminen voi vaatia useamman järjestelmän tarjoaman toiminnon suorittamisen

<<actor>> Use Case - Käyttötapauskaavio Varauksista vastaava Varausten poistaminen Järjestelmä Käyttäjän tunnistus Ylläpitäjä Perustietojen ylläpito Luentosalin varaaminen <<uses>> Assistentti Harjoitussalin Vuokran laskutus <<actor>> vuokra- järjestelmä

Use Case - Käyttötapauskaavio Nimi: Luentosalin varaaminen, versio 1.0 Suorittajat: Kurssin vastuuhenkilö Esiehdot: Vastuuhenkilö ja kurssi syötetty järjestelmään Kuvaus: Vastuuhenkilö seuraa WWW-linkkiä, joka johtaa järjestelmän pääsivulle. Hän syöttää järjestelmään käyttäjätunnuksensa ja salasanansa (uses: KT käyttäjän tunnistus). Käyttäjä pyytää järjestelmää näyttämään salin varaustilanteen haluamaltaan aikaväliltä. Hän saa eteensä salin lukujärjestysnäytön (ks liite). Käyttäjä näkee näytöstä vapaat ajat sekä myös mille kursseille sali on milloinkin varattu ja kuinka monelle viikolle. Käyttäjä tekee varauksen joltain vapaaksi havaitsemaltaan ajankohdalta. [Poikkeus: varaus ei onnistu]. Poikkeukset: Varaus ei onnistu. Varaustilanne voi muuttua sillä aikaa kun varaaja tekee varausta. Järjestelmä ilmoittaa tilanteesta käyttäjälle ja käyttäjä yrittää uudelleen. Lopputulos: Varaukset kurssien luentoajoiksi on tehty. Muut vaatimukset Päivittäin käsitellään kiireisimpinäkin ajankohtina enintään 100 varausta. Vastausajan on oltava alle 1 sekuntia, lukujärjestysnäytön päivitys saa kestää 5 sekuntia.

Luokkakaavio (Class Diagram) Luokkakaavio on UML-kaavioista laajin ja monipuolisin Kaaviossa esitetään luokkien välisiä suhteita ja luokkien ominaisuuksia ja operaatioita Käytetään myös tietokannan kuvaamiseen (luokka=taulu) Luokkakaaviossa on erilaisia rakenteita: yhteysrakenne eli assosiaatio koosterakenne eli aggregaatti periytymisrakenne eli hierarkia

Luokkakaavio (Class Diagram) Yhteysrakenteella (assosiaatio) kuvataan kahden olion välisiä suhteita Koosterakenteella (aggregaatti) kuvataan olioita, jotka koostuvat toisista olioista. Jos olion olemassaolo riippuu toisesta oliosta maalataan vinoneliö mustaksi, muodoste (komposiitti) Eläkeläinen 0..5 0..1 Palmu yhteys Puu Oksa Hedelmä 1..* 0..* 1 Yritys Osasto * Henkilö

Luokkakaavio (Class Diagram) Periytymisrakenteella (hierarkia) kuvataan yliluokkia ja niistä periytettyjä aliluokkia Aliluokat perivät kaikki yliluokan ominaisuudet ja toiminnot Ihminen Aikuinen Lapsi

Luokkakaavio (Class Diagram) Ihminen -nimi -osoite -ikä Työssä käyvä -palkka -työnantaja Eläkeläinen - eläkkeen suuruus Palmu - maaperä - maa Puu - ikä - korkeus 0..1 0..5 Runko - väri - paksuus Oksa - muoto Hedelmä - maku 1 1..* 0..*