Oliomallittaminen ja UML

Slides:



Advertisements
Samankaltaiset esitykset
19. Unified Modeling Language (UML)
Advertisements

Koostumussuhde Jukka Juslin © Jukka Juslin.
Ohjelmiston tekninen suunnittelu
Tietojärjestelmät 2.
Ohjelmistotuotanto - Mallinnus
UML-notaatio staattinen ja dynaaminen mallintaminen
Luokkakaaviot Luokkakaaviot Tekninen suunnittelu.
Tietojärjestelmät ja Systeemisuunnittelu
UML RASE
Tapahtumasekvenssit = Käyttötapausten realisointi
Olio-mallinnus Tietojärjestelmien suunnittelu KYAMK, Liiketalous, Kouvola Jarkko Ansamäki, 2002.
Ohjelmistotekniikka: Ohjelmiston mallintaminen, osa I
Päivi Ovaska Tutkijaopettaja LTY/Tite
– Ohjelmistojen mallintaminen, kesä 2009
2/2001 Tietojärjestelmät ja Systeemisuunnittelu Luennoitsija: Tapio Lammi
Tietojärjestelmät ja Systeemisuunnittelu
UML-luokkakaaviot.
SE-02 Olioperustainen ohjelmistokehitys Tampereen yliopisto, syksy 2000 Roope Raisamo perustuu Kai Koskimiehen Oliokirjaan ja kurssin aiempiin materiaaleihin.
Olioperustainen ohjelmistoprosessi
Valsta Olioiden välinen yhteistyö Oliokeskeisen/-pohjaisen järjestelmän toiminta on olioiden välistä vuorovaikutusta, tapahtumia ja tapahtumaketjuja.
Johdatus ohjelmointiin Ohjelmistosuunnittelu Jaana Holvikivi.
Pro gradu -tutkielmat ohjelmistotestauksesta
UML-luokkakaaviot ja Java
Ohjelmistotekniikka ja projektinhallinta, 4 op
Testauksen tutkimustulokset Marko Jäntti
Käyttötapauskaavio ja käyttötapaukset
Käyttöönottokaavio – Deployment diagram Sami Stenius.
Esitutkimus (tarvekartoitus)
Systeemityö 2 Käyttötapauskaavio Teppo Räisänen, Principal Lecturer
Systeemityö 2 Tilakaavio – State machine diagram
Johdanto Teppo Räisänen, Principal Lecturer Oulu University of Applied Sciences, School of Business and Information Management
UML-mallien testaaminen
Systeemityö 2 Toimintokaavio – Activity diagram
Package diagram Tiia Jefremoff
Tässä esityksessä on piilotettu osa dioista
Koostekaavio – Composite Structure Diagram Kinnula – Kellolampi - Lehtosaari.
– Ohjelmistojen mallintaminen, mallintaminen ja UML.
Mallinnustavat.
Jouni Juntunen Oulun seudun ammattikorkeakoulu Liiketalouden yksikkö
Pakkanen -arkkitehtuurin siirto toteutustekniikoihin
Komponenttikaavio Lehtonen Iiro, Janne Liikka
Component diagram– Komponenttikaavio J. Pätsi & H. Malmihuhta
Sequence Diagram Jani Keskitapio, Annika Alakastari, Heng Qing Zhu TIK9SNA.
Käyttöönottokaavio– Deployment diagram Vesa Jokikokko Tarmo Kemi TIK9SNA.
Ohjelmistotekniikka kevät 2003 CASE-välineet. Ohjelmistotekniikka kevät 2003 Mitä ovat CASE-välineet? Computer Aided Software Engineering Tietokoneavusteinen.
– Ohjelmistojen mallintaminen Unified Modeling Language (UML)
Systeemityö 2 Viestiyhteyskaavio (Sekvenssi kaavio) – Sequence diagram
Ohjelmistojen mallintaminen, sekvenssikaaviot
Pakkauskaavio– Package Diagram Jani Pelkonen, Niko Viinikanoja, Teemu Tervahauta.
Koostekaavio– composite structure diagram Mikko Näpänkangas.
Olio-ohjelmoinnin perusteet luento 7
Ohjelmistotekniikka - Määrittely (Analysis) Kevät 2003 Hanna-Kaisa Lammi LTY/Tite.
Päivi Ovaska Tutkijaopettaja LTY/Tite
Tietojärjestelmät ja Systeemisuunnittelu
Ohjelmistotuotannon menetelmät Syksy 2003 Oliopohjainen suunnittelu (Sami Jantunen, LTY/TITE)
Tietojärjestelmät ja Systeemisuunnittelu
1 UML - yleiskatsaus UML - yleiskatsaus (ei kirjassa koottuna) Miksi mallinnus Mikä UML on? UML:n peruselementit Kaaviotyypit Esimerkkiprosessi.
Kertaus: yleistys-erikoistus ja perintä ● Nauta, Lehmä ja Kuttu ovat Kotieläimiä, Kotieläimet Eläimiä ● Kotieläimillä (siis myös Naudoilla, Lehmillä ja.
Kertausta: Ohjelmistotuotantoprosessin vaiheet ● Vaatimusanalyysi- ja määrittely – Mitä halutaan? ● Suunnittelu – Miten tehdään? ● Toteutus – Ohjelmointi.
UML-luokkakaavio ● Luokkakaavio (class diagram) kuvaa järjestelmän luokkarakennetta ● Mitä luokkia on olemassa ● Minkälaisia luokat ovat ● Luokkien suhteet.
– Ohjelmistojen mallintaminen, mallintaminen ja UML
UML-mallinnus osana tietotuotemäärittelyä
Sekvenssikaavio– Sequence diagram Lassi Kemppainen
– Ohjelmistojen mallintaminen, kesä 2010
Mallintamisen metamalli ja notaatiot
– Ohjelmistojen mallintaminen, mallinnustekniikat käytännössä
Ohjelmistotekniikan menetelmät, sekvenssikaaviot
– Ohjelmistojen mallintaminen Unified Modeling Language (UML)
2. Olio-ohjelmoinnin perusteita
1. Olio-ohjelmointi.
Esityksen transkriptio:

Oliomallittaminen ja UML Seppo Törmä ja Esko Nuutila

UML - Unified Modeling Language Tietojärjestelmien määrittämiseen, suunnitteluun ja toteuttamamiseen tarkoitettu kokoelma mallitusmenetelmiä v. 1997 luotu yhdistelmä kolmen oliosuunnittelun kehittäjän (James Rumbaugh, Grady Booch ja Ivar Jacobson) aikaisemmista malleista yleiskäyttöinen: tukee koko ohjelmistonkehityksen elinkaarta ja sopii useimmille kohdealueille keskeisenä osana on käsitemallittaminen, mutta sisältää myös muita mallinnustapoja Teollisuusstandardi tukijoina suuret tietotekniikkayritykset: IBM, HP, Microsoft, ... OMG:n suosittama laajimmin käytetty oliosuunnittelumenetelmä Useita UML:ää tukevia CASE-työkaluja Rational Rose, Paradigm Plus, Poseidon, ... Unified Software Process UML:n käyttämiseen perustuva ohjelmistoprosessimalli

UML:n kaaviot Vaatimusmäärittely Rakenteen mallittaminen 1. Käyttötapauskaavio (use case diagram) Rakenteen mallittaminen 2. Luokkakaavio (class diagram) 3. Oliokaavio (object diagram) Muutokset olioiden tilaan 4. Tilakaavio (state diagram) 5. Vuokaavio (activity diagram) Olioiden vuorovaikutukset 6. Sekvenssikaavio (sequence diagram) 7. Yhteistoimintakaavio (collaboration diagram) Järjestelmän toteutus 8. Komponenttikaavio (component diagram) 9. Käyttöönottokaavio (deployment diagram)

Käyttötapauskaavio Vaatimusten määrittäminen rakennettavalle järjestelmälle tehdään suunnittelun alussa vaikuttavat järjestelmän yleiseen arkkitehtuuriin koskevat erityisesti järjestelmän käyttäjiä Tunnistetaan mitkä ovat järjestelmään liittyvät aktorit (toimijat) mitä eri käyttötapauksia järjestelmään liittyy mitkä aktorit liittyvät mihinkin käyttötapauksiin ovatko jotkin käyttötapaukset joidenkin toiseten osia tai erikoistapauksia

Aktoreiden yleistyssuhteet Käyttötapauksiin luotu abstrakti aktorirooli, josta on kaksi konkreettista esimerkkiä

Aktorin liittyminen käyttötapauksiin

Käyttötapauskaavio Käyttötapaus voivat sisältää toisia käyttötapauksia tai sen suorittaminen voi laukaista toisen käyttötapauksen

Luokkakaavio UML:n keskeisin ja monipuolisin kaavio Ohjelmiston käsitteistön mallittaminen Luokat (classes) Minkä tyyppisiä oliota järjestelmään kuuluu? Mitä yläluokka/alaluokka -suhteita luokkien välillä on? Ominaisuudet (attributes) Mitä ominaisuuksia kuhunkin luokkaan kuuluvilla olioilla on? Suhteet (associations) Mitä keskinäisiä suhteita eri luokkiin kuuluvien olioiden välillä on? Suunta, moniarvoisuus Toiminnot (operations) Mitä toimintatapoja tai käyttäytymisiä kuhunkin luokkaan liittyy? Rajoitukset (constraint rules) Ominaisuudet, suhteet ja metodit periytyvät yläluokilta alaluokille