Malliperustainen ohjelmistokehitys (Model-Driven Engineering, MDE)

Samankaltaiset tiedostot
Malliperustainen ohjelmistokehitys (Model-Driven Engineering, MDE)

Malliperustainen ohjelmistokehitys - MDE Pasi Lehtimäki

arvostelija OSDA ja UDDI palveluhakemistoina.

Selainpelien pelimoottorit

Palvelusuuntautunut ohjelmistotuotanto Luento 6: Malliperustaisen ohjelmistotuotannon perusteet; palvelutuotannon mallit Toni Ruokolainen, 5.2.

Työn laji Arbetets art Level Aika Datum Month and year Sivumäärä Sidoantal Number of pages

Arkkitehtuurinen reflektio

Aika/Datum Month and year Kesäkuu 2012

Pro gradu -tutkielma Meteorologia SUOMESSA ESIINTYVIEN LÄMPÖTILAN ÄÄRIARVOJEN MALLINTAMINEN YKSIDIMENSIOISILLA ILMAKEHÄMALLEILLA. Karoliina Ljungberg

Luonnontieteiden popularisointi ja sen ideologia

! #! %! & #!!!!! ()) +

Koht dialogia? Organisaation toimintaympäristön teemojen hallinta dynaamisessa julkisuudessa tarkastelussa toiminta sosiaalisessa mediassa

Maailman muutosta tallentamassa Marko Vuokolan The Seventh Wave -valokuvasarja avauksena taidevalokuvan aikaan

Enterprise Architecture TJTSE Yrityksen kokonaisarkkitehtuuri

Katsaus korruption vaikutuksesta Venäjän alueelliseen talouskasvuun ja suoriin ulkomaisiin investointeihin

Hieman lisää malleista ja niiden hyödyntämisestä

Domain spesifinen mallinnus ja generointi käytännössä. Petri Savolainen

2 Description of Software Architectures

7. Product-line architectures

Ohjelmistojen mallintaminen Ohjelmiston suunnittelu Model driven development Harri Laine 1

Tiedekunta/Osasto Fakultet/Sektion Faculty Valtiotieteellinen tiedekunta

Oppimateriaalin kokoaminen ja paketointi

Hallintomallit Suomen valtionhallinnon tietohallintostrategioissa

Malliperustainen ohjelmistokehitys ja malliperustainen arkkitehtuuri

TIEKE Verkottaja Service Tools for electronic data interchange utilizers. Heikki Laaksamo

TietoEnator Pilot. Ari Hirvonen. TietoEnator Oyj. Senior Consultant, Ph. D. (Economics) presentation TietoEnator 2003 Page 1

MALLIPOHJAINEN KEHITYS OHJELMISTOTUO- TANNON AUTOMATISOINNISSA

OpenUP ohjelmistokehitysprosessi

Laskennallinen yhteiskuntatiede

2 Ohjelmistoarkkitehtuurien kuvaus

!"#$%&'$("#)*+,!!,"*--.$*#,&--#"*/".,,%0

Tietojenkäsittelytieteiden koulutusohjelma. Tietojenkäsittelytieteiden laitos Department of Information Processing Science

Collaborative & Co-Creative Design in the Semogen -projects

SOA SIG SOA Tuotetoimittajan näkökulma

Ohjelmistojen mallintaminen

IoT-platformien vertailu ja valinta erilaisiin sovelluksiin / Jarkko Paavola

Malliperustainen ohjelmistokehitys webympäristössä

Asuntojen neliöhinnan vaihtelu Helsingissä ( )

Ohjelmistoarkkitehtuurit Syksy 2009 TTY Ohjelmistotekniikka 1

7.4 Variability management

Bachelor level exams by subject in Otaniemi

Automaatiojärjestelmän hankinnassa huomioitavat tietoturva-asiat

DIPLOMITYÖ ARI KORHONEN

MEMS-muisti relaatiotietokannoissa

Bachelor level exams by date in Otaniemi

Kuvailulehti. Korkotuki, kannattavuus. Päivämäärä Tekijä(t) Rautiainen, Joonas. Julkaisun laji Opinnäytetyö. Julkaisun kieli Suomi

RAIN RAKENTAMISEN INTEGRAATIOKYVYKKYYS

Making use of BIM in energy management

Globaalisti Hajautettu Ohjelmistokehitys Mitä, Miksi & Miten? Maria Paasivaara

UML-kielen formalisointi Object-Z:lla

KANSILEHDEN MALLISIVU

KOMPETENSSIT. Koulutus Opiskelija Tuuttori. Business Information Technologies. NQF, Taso 6 - edellyttävä osaaminen

Julkaisun laji Opinnäytetyö. Sivumäärä 43

Efficiency change over time

KYMIJOEN VAELLUSKALOJEN NOUSUREITTIEN AVAAMISEN KUSTANNUSTEN JA HYÖTYJEN ARVIOINTI

Seminaari: HL7 versio 2

Dominointianalyysi. Teppo Niinimäki. Helsinki Approksimointialgoritmit HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

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

arvostelija Turvallisuuskriittisissä, sulautetuissa järjestelmissä esiintyvien ohjelmistovaatimusten virheanalyysi Jarkko-Juhana Sievi

Yrityksen informaatio- ja toimintoprosessien optimointi

European Certificate for Quality in Internationalisation. Mafi Saarilammi Korkeakoulujen arviointineuvosto

BDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET.

Missä mennään BI? Mikko Kontio

.NET 2006 ja sen jälkeen

CIO muutosjohtajana yli organisaatiorajojen

Tutkittua tietoa. Tutkittua tietoa 1

IT and ICT infrastructure of Smart Grids

Palvelutasosopimukset ja niiden asema IT-ulkoistuksissa

Luottamuksen ja maineen rooli palveluperustaisten yhteisöjen muodostamisessa

MALLIPERUSTAISTA ARKKITEHTUURIA TUKEVIEN CASE-VÄLINEIDEN ARVIOINTI- JA VALINTAMENETELMÄ

VUOSI 2015 / YEAR 2015

Tutkittu totuus globaalista ohjelmistokehityksestä

ProAgria. Opportunities For Success

TÄYTTÖAUTOMAATIT TÄYTTÖAUTOMAATIT COMPUTER INFLATORS

Interfacing Product Data Management System

Mitä mahdollisuuksia ARTEMIS-teknologiayhteistyö tarjoaa? Oiva Knuuttila, Tekes

A Service-Oriented Architecture (SOA) View of IHE Profiles

Milloin. kannattaa paaluttaa? Väitöstutkimus. Turun perustustenvahvistuksesta

Tietohallinnon liiketoimintalähtöinen toiminnanohjaus IT-ERP

WAMS 2010,Ylivieska Monitoring service of energy efficiency in housing Jan Nyman,

Paikkatietorajapinnat IT arkkitehtuurin näkökulmasta

Windows Phone. Module Descriptions. Opiframe Oy puh Espoo

Salasanan vaihto uuteen / How to change password

Paikkatiedon semanttinen mallinnus, integrointi ja julkaiseminen Case Suomalainen ajallinen paikkaontologia SAPO

Teknologinen muutos ja yliopistojen tulevaisuus. Tievie-seminaari Helsinki Antti Auer

Indoor Environment

Teollinen Internet & Digitalisaatio 2015

Tietotekniikan koulutus ammattikorkeakouluissa 2012 Uudellamaalla

HITSAUKSEN TUOTTAVUUSRATKAISUT

Internet of Things. Ideasta palveluksi IoT:n hyödyntäminen teollisuudessa. Palvelujen digitalisoinnista 4. teolliseen vallankumoukseen

Ammatillinen opettajakorkeakoulu

MDA malliperustainen arkkitehtuuri

punainen lanka - Kehitysjohtaja Mcompetence Oy markokesti.com Työhyvinvoinnin kohtaamispaikka Sykettätyöhön.

Voice Over LTE (VoLTE) By Miikka Poikselkä;Harri Holma;Jukka Hongisto

A new model of regional development work in habilitation of children - Good habilitation in functional networks

Hajautettujen työvoiden hallinta

Green Growth Sessio - Millaisilla kansainvälistymismalleilla kasvumarkkinoille?

1 Introduction. TTY Ohjelmistotekniikka. Ohjelmistoarkkitehtuurit Syksy 2006

General studies: Art and theory studies and language studies

AKKREDITOITU TARKASTUSLAITOS ACCREDITED INSPECTION BODY INSPECTA TARKASTUS OY

Transkriptio:

Malliperustainen ohjelmistokehitys (Model-Driven Engineering, MDE) Pasi Lehtimäki Helsinki 10.9.2007 HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta/Osasto Fakultet/Sektion Faculty Laitos Institution Department Matemaattilsuonnontieteellinen tiedekunta Tietojenkäsittelytieteen laitos Tekijä Författare Author Pasi Lehtimäki Työn nimi Arbetets titel Title Malliperustainen ohjelmistokehitys(model-driven Engineering, MDE) Oppiaine Läroämne Subject Työn laji Arbetets art Level Aika Datum Month and year Sivumäärä Sidoantal Number of pages Seminaari 10.9.2007 5 pages Tiivistelmä Referat Abstract Ohjelmistosuunnittelussa abstraktiotason nostaminen mahdollistaa keskittymisen varsinaisen toiminnallisuuden suunnitteluun pienien yksityiskohtien sijaan. Malliperustainen ohjelmistokehitys (Model-Driven Engineering, MDE) tarjoaa seuraavan askeleen kohti tehokkaampaa ohjelmistojen suunnittelua ja kehitystä. Kantavana ideana on mallintaa sovellusten toimminnallisuus abstrakteilla toimialakohtaisilla malleilla. Näistä tomialakohtaisista malleista siirrytään automaattisten tai osittain automaattisten mallimuunnosten avulla kohti yksityiskohtaisempia malleja ja lopulta varsinaiseen ohjelmakoodiin. MDE:n toimintamallien kehitys ja siirtäminen käytäntöön on vielä alkuvaiheissa, mutta työkaluja MDE:n toteuttamiseen on jo tarjolla ja tietellinen yhteisö pursuaa MDE-aiheisia artikkeleita. ACM Computing Classification System (CCS): D.2 [Software Engineering] Avainsanat Nyckelord Keywords MDE MDA Säilytyspaikka Förvaringsställe Where deposited Muita tietoja övriga uppgifter Additional information

Sisältö ii 1 Johdanto 1 2 Termit ja käsitteet 1 2.1 Lyhenteitä................................. 1 2.2 Malli - käsitteenä............................. 2 3 Miksi tarvitaan MDE? 2 4 Mitä on MDE? 2 4.1 Mallit................................... 2 4.2 Mallimuunnokset............................. 2 5 MDE työkaluja 3 6 Onglemia 3 7 Lisää tietoa 3 Lähteet 4

1 Johdanto 1 2 Termit ja käsitteet Tarvittava johdanto julkaisuissa käytettävään akronyymiviidakkoon... ja mallin käsitteen selvennys. 2.1 Lyhenteitä MDD, MDE, MDSD Model-Driven Development n Use of (prescribed) models and transformations during software development. Model Driven Software Development. n Also used commonly as a synonym for MDE [Wike] MDA Model-Driven Architecture n OMG initiative n UML + MOF + QVT + few other standards.. [Wikd] UML, UML Profiles, MOF [Wiki] [OMGc] [Wikc] [OMGb] XMI The XML Metadata Interchange (XMI) is an OMG standard for exchanging metadata information via Extensible Markup Language (XML). [Wikj] CIM Computation-Independent Model (often referred to as a business or requirements model); PIM: Platform- Independent Model; PSM: Platform-Specific Model. [Sim04] PIM A platform-independent model or PIM is a model of a software or business system that is independent of the specific technological platform [Wikg] PSM A platform-specific model is a model of a software or business system that is linked to a specific technological platform. [Wikh] PDM Platform Description Model DSM Domain-Specific Modeling (DSM) is a software engineering methodology for designing and developing systems, most often IT systems such as computer

2 software. It involves systematic use of a graphical Domain-specific programming language (DSL) to represent the various facets of a system. [Wika] DSL, DSML Domain Specific (Modeling) Language [Wikb] MTL Model Transformation Language [Wikf] M2M Model-to-model M2T Model-to-text (or to code) 2.2 Malli - käsitteenä Mitä malli tarkoittaa? [Fav04] 3 Miksi tarvitaan MDE? [FS04] [FGDTS06] [BGK + 06] [Sch06] 4 Mitä on MDE? [Kut04] [Mal04] [BGMR03] [Wikd] [Sim04] [OMGa] An MDA tool is a tool used to develop, interpret, compare, align, measure, verify, transform, etc. models or metamodels. [Wikd] 4.1 Mallit CIM, PIM, PSM,... Malleja, metamalleja, metametamalleja... 4.2 Mallimuunnokset Mallin muunnokset (semi)automaattisesti abstraktista mallista spesifisempään malliin: PIM -> PSM ->... -> PSM -> Code [Wikf]

5 MDE työkaluja 3 Eclipse EMF, GMF... MetaCase... 6 Onglemia Luottamus OMG:hen jne. [Fav04] 7 Lisää tietoa Linkkejä, joista voi kaivaa lisää tietoa aiheesta.

Lähteet 4 BGK + 06 BGMR03 Fav04 FGDTS06 FS04 Kut04 Mal04 OMGa OMGb Balasubramanian, K., Gokhale, A., Karsai, G., Sztipanovits, J. ja Neema, S., Developing applications using model-driven design environments. Computer. Bezivin, J., Gerard, S., Muller, P.-A. ja Rioux, L., Mda components: Challenges and opportunities. Metamodelling for MDA. Favre, J.-M., Towards a basic theory to model model driven engineering. 3rd Workshop in Software Model Engineering (WISME @ UML 2004), 2004. France, R., Ghosh, S., Dinh-Trong, T. ja Solberg, A., Model-driven development using uml 2.0: promises and pitfalls. Computer. Fondement, F. ja Silaghi, R., Model driven engineering processes. 3rd Workshop in Software Model Engineering (WISME @ UML 2004), 2004. Kutvonen, L., Relating mda and inter-enterprise collaboration management. Second European Workshop on Model Driven Architecture (MDA) with an emphasis on Methodologies and Transformations, Kent CT2 7NF, UK, 2004, Computing Laboratory, University of Kent, Canterbury, sivut 84 88. Mallia, T., Enterprise change methodology with mda. Second European Workshop on Model Driven Architecture (MDA) with an emphasis on Methodologies and Transformations, Kent CT2 7NF, UK, 2004, Computing Laboratory, University of Kent, Canterbury. OMG, Omg model driven architecture, http://www.omg.org/mda/ (viitattu 8.9.2005). OMG, Omg s metaobject facility, http://www.omg.org/mof/ (viitattu 8.9.2005). OMGc OMG, Uml R resource page, http://www.uml.org/ (viitattu 8.9.2005). Sch06 Schmidt, D., Model-driven engineering. Computer.

5 Sim04 Wika Wikb Wikc Wikd Wike Wikf Wikg Sims, O., Enterprise mda R or how enterprise systems will be built. Second European Workshop on Model Driven Architecture (MDA) with an emphasis on Methodologies and Transformations, Kent CT2 7NF, UK, 2004, Computing Laboratory, University of Kent, Canterbury. Wikipedia, Domain-specific modeling, http://en.wikipedia.org/ wiki/domain-specific_modeling (viitattu 8.9.2005). Wikipedia, Domain-specific programming language, http://en. wikipedia.org/wiki/domain-specific_programming_language (viitattu 8.9.2005). Wikipedia, Meta-object facility, http://en.wikipedia.org/wiki/ Meta-Object_Facility (viitattu 8.9.2005). Wikipedia, Model-driven architecture, http://en.wikipedia.org/ wiki/model-driven_architecture (viitattu 8.9.2005). Wikipedia, Model-driven engineering, http://en.wikipedia.org/ wiki/model-driven_engineering (viitattu 8.9.2005). Wikipedia, Model transformation language, http://en.wikipedia. org/wiki/model_transformation_language (viitattu 8.9.2005). Wikipedia, Platform-independent model, http://en.wikipedia.org/ wiki/platform-independent_model (viitattu 8.9.2005). Wikh Wikipedia, Platform-specific model, http://en.wikipedia.org/ wiki/platform-specific_model (viitattu 8.9.2005). Wiki Wikj Wikipedia, Unified modeling language, http://en.wikipedia.org/ wiki/unified_modeling_language (viitattu 8.9.2005). Wikipedia, Xml metadata interchange, http://en.wikipedia.org/ wiki/xmi (viitattu 8.9.2005).