Metatiedon siirto (XMI) Martti Söderlund

Samankaltaiset tiedostot
UML-kielen formalisointi Object-Z:lla

Malliperustainen ohjelmistokehitys - MDE Pasi Lehtimäki

WWW-ohjelmoinnin kokonaisuus. WWW-OHJELMOINTI 1 Merkkauskielet. Merkkauskielten idea. Merkkauskielet (markup languages) Merkkauskielten merkitys

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

Ohjelmistotekniikan menetelmät, Ohjelmistotuotannon työkaluista

Ohjelmistojen mallintaminen

Ohjelmistojen mallintaminen, mallintaminen ja UML

Rakenteiset dokumentit Mitä hyötyä niistä on?

Vaasan yliopiston toimintaa tukevat informaatiopalvelut ovat käytettävissä WWW:n kautta.

Rakenteisen oppimateriaalin tuottaminen verkossa esimerkki Rhaptos. Antti Auer Koordinaattori, HT Jyväskylän yliopisto Virtuaaliyliopistohanke

812347A Olio-ohjelmointi, 2015 syksy 2. vsk. IX Suunnittelumallit Proxy, Factory Method, Prototype ja Singleton

Paikkatiedot ja Web-standardit

Johdatus rakenteisiin dokumentteihin

W3C-teknologiat ja yhteensopivuus

Metatiedot organisaatioiden sisällönhallinnassa

Ohjelmistotekniikan menetelmät, kesä 2008

XML kielioppi. Elementtien ja attribuuttien määrittely. Ctl230: Luentokalvot Miro Lehtonen

Semanttinen Web. Ossi Nykänen Tampereen teknillinen yliopisto (TTY), DMI / Hypermedialaboratorio W3C Suomen toimisto

ELM GROUP 04. Teemu Laakso Henrik Talarmo

Ohjelmistotekniikan menetelmät, UML

Ohjelmistotekniikan menetelmät, kevät 2008

SÄHKE-hanke. Abstrakti mallintaminen Tietomallin (graafi) lukuohje

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys

Copyright by Haikala. Ohjelmistotuotannon osa-alueet

Sisällys. Valtion tietotekniikan rajapintasuosituksia. XML:n rooleja sähköisen asioinnin tavoitearkkitehtuurissa. dbroker - asiointialusta

Luento 12: XML ja metatieto

Integrointi. Ohjelmistotekniikka kevät 2003

XPages käyttö ja edut Jarkko Pietikäinen toimitusjohtaja, Netwell Oy

XML / DTD / FOP -opas Internal

MetaEdit+ -ohjelmiston soveltuvuuden arviointi

UML metamallina. Seminaariesitelmä Minna Majuri HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Laajuus 5 op Luennot: 12 x 2t Harjoitukset: 7 viikkoharjoitusta harjoitusten tekemiseen saatavissa apua 2 ryhmää / harjoitus

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

Malliperustainen ohjelmistokehitys (Model-Driven Engineering, MDE)

Heikki Helin Metatiedot ja tiedostomuodot

Paikkatiedon mallinnus Dokumentoinnin ymmärtäminen. Lassi Lehto

4. Olio-ohjelmoinista lyhyesti 4.1

Rajapinnasta ei voida muodostaa olioita. Voidaan käyttää tunnuksen tyyppinä. Rajapinta on kuitenkin abstraktia luokkaa selvästi abstraktimpi tyyppi.

Sisältö. XML, XHTML ja CSS XML XML. XML:n ja HTML:n ero. XML kieliä XML XHTML CSS XSL. T Hypermediadokumentin laatiminen 2002

Järjestelmäarkkitehtuuri (TK081702) SOA, Service-oriented architecture SOA,

Ohjelmistojen mallintaminen, kesä 2009

Arkkitehtuuripankki. Mallintamisen metamalli ja notaatiot

Yhteentoimivuutta edistävien työkalujen kehittäminen

Interfacing Product Data Management System

Semanttinen Web. Ossi Nykänen. Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), Hypermedialaboratorio W3C Suomen toimisto

Sisällys. JAVA-OHJELMOINTI Osa 7: Abstrakti luokka ja rajapinta. Abstraktin luokan idea. Abstrakti luokka ja metodi. Esimerkki

UML - unified modeling language

Analyysi on tulkkaamista

3 Verkkosaavutettavuuden tekniset perusteet

W3C ja Web-teknologiat

Paikkatietojen tietotuotemäärittely

Sisällys. 11. Rajapinnat. Johdanto. Johdanto

Ontologiat merkitysten mallintamisessa: OWL. Eeva Ahonen

Järjestelmäarkkitehtuuri (TK081702) Avoimet web-rajapinnat

Digitaalisen median tekniikat. JSP ja XML Harri Laine 1

Ohjelmistojen mallintaminen, kesä 2010

Digitaalisen median tekniikat. JSP ja XML

StanForD-XML. Juha-Antti Sorsa, Tapio Räsänen, Vesa Imponen

Oppisisällön metatieto

Tiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas

P e d a c o d e ohjelmointikoulutus verkossa

Ohjelmistojen mallintaminen kertausta Harri Laine 1

Käyttötapausanalyysi ja testaus tsoft

Tietokannanhoitaja DBA (Database Administrator) ja tietokannan hallinta

1. Olio-ohjelmointi 1.1

TIE = JOTU. VH5 - MagicDraw

Action Request System

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

XML johdatus: DTD. Jaana Holvikivi

Eero Hyvönen. Semanttinen web. Linkitetyn avoimen datan käsikirja

Vaatimusmäärittely Ohjelma-ajanvälitys komponentti

Sosiaalihuollon asiakasasiakirjojen tietomallinnus Tietomallit teknisen asiakirjamäärittelyn näkökulmasta

Suvi Remes Miika Alonen Petri Mustajoki Totti Tuhkanen

OHJ-5201 Web-palveluiden toteutustekniikat. Kurssisisällöstä. Tarja Systä

Johdanto. Kiinteistöhuoltoyhtiö tarvitsee järjestelmän huoltopyyntöjen hallinnointiin

Opetusteknologian standardoinnin tilanne. Antti Auer

Tuotekehitysverkoston läpimenoajan lyhentäminen tuotemuutostenhallinnalla ja verkoston tietojärjestelmien integroinnilla

Paikkatietojen tietotuotemäärittely

XML-saatavuuskysely. XML-tiedoston kuvaus. versio

Semanttinen Web. Ossi Nykänen. Tampereen teknillinen yliopisto (TTY), Digitaalisen median instituutti (DMI), W3C Suomen toimisto

Liite D: Poikkeamispäätösten ja suunnittelutarveratkaisujen mallinnus tiedonsiirtoa varten

Järjestelmäarkkitehtuuri (TK081702) Lähtökohta. Integroinnin tavoitteet

Yhteentoimivuusalusta ja sen hyödyntäminen kuntien/maakuntien taloushallinnossa Petri Tenhunen, VRK

Menetelmäraportti - Konfiguraationhallinta

Automaattinen semanttinen annotointi

Avoimet standardit ja asiakirjamuodot Suomen julkisessa hallinnossa: teoriasta käytäntöön

Visual Case 2. Miika Kasnio (C9767)

Poikkeusinfo XML-rajapinnan kuvaus, rajapinnan versio 2 Seasam Group

2. Olio-ohjelmoinista lyhyesti 2.1

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

2 Ohjelmistoarkkitehtuurien kuvaus

UML Luokkakaavio 14:41

Tietojärjestelmän osat

Harjoitustehtävät ja ratkaisut viikolle 48

Työkalujen merkitys mittaamisessa

XML prosessori. XML prosessointi. XML:n kirjoittaminen. Validoiva jäsennin. Tapahtumaohjattu käsittely. Tapahtumaohjattu käsittely.

Ohjelmistojen suunnittelu

Kansallinen koodistojen siirtoformaatti

Sivuston tiedotqbooksupportpho nenumber.com

Ctl160 Tekstikorpusten tietojenkäsittely p.1/15

Transkriptio:

Metatiedon siirto (XMI) Martti Söderlund 12.11.2000 Seminaarialustus, Ohjelmistotuotantovälineet Tietojenkäsittelytieteen laitos HELSINGIN YLIOPISTO

Sisältö 1. Johdanto...1 2. Kuvauskielet...2 2.1 XML... 2 2.2 UML ja MOF... 3 2.3 XMI... 4 3. Sovelluksia...6 3.1 Arvioita käytettävyydestä... 6 4. Päätelmiä...7

1 1. Johdanto Ohjelmistotuotannon käytännön tehtävät ovat usein prosessin vaiheisiin tai osiin liittyvien työkalujen tai -ympäristöjen käyttöön. Työvälineet ovat useimmiten tarkoitettu tietyn osaalueen tehtävien avustamiseen. Toiminnon laajuus vaihtelee kunkin välineen käyttötavan mukaan, jolloin yksittäisen välineen toiminnan ulkopuolelle jäävien tehtävien toteuttaminen on ratkaistava käyttämällä yhteisiä tietovarastoja tai hallittava ilman automaatiota. Työympäristöt voivat toteuttaa ohjelmistotuotannon eri osa-alueista (kuten projektin hallinta, laadunvalvonta, eri mittauskohteet, konfiguraation hallinta) laajan osajoukon, jolloin tuotteeseen liittyvästä informaatiosta hallitaan suurin osa automaattisesti. On kuitenkin todennäköistä, että laajentuvat vaatimukset (teknologiset ja/tai poliittiset) muuttavat kerran valittua ratkaisua. Eri välineiden yhdistäminen tavalla voi tarjota ratkaisun, koko tuotantovälineistön uudistamisen sijaan. Yleinen kuvauskieli UML (Unified modeling language, [UML00]) on laajassa käytössä ohjelmistotuotannon määrittely-, suunnittelu- ja toteutusvaiheissa. Olioperustaiset kuvaukset muodostavat keskeisen osan tuotteen kehittäjille tarkoitetusta dokumentaatiosta, ja ovat arvokas osa järjestelmää. UML-kaavioiden automaattinen käsittely sovellusten välillä voisi olla järkevä tapa jakaa ohjelmistotuotannon tehtävien käsittelyä eri välineistöille ja helpottaa suppeiden työvälineiden yhdistämisen ongelmaa. Tämä seminaarialustus käsittelee UML-kielen kuvausta yleiseen, sovellusten kesken jaettavissa olevaan muotoon joka perustuu XML-kieleen (Extensible markup language, [XML98]). Kielten käytettyjen peruspiirteiden esittelyn jälkeen kuvataan lyhyesti XMI (Extensible markup language interchange, [XMI00]), joka on valittu siirtoformaatiksi Object Management Group -organisaation standardointiprosessissa. XMI selitetään lyhyesti esimerkkien avulla. Esimerkit XMI-dokumenteista, XMI-kielen standardointia tukevien yritysten ohjelmistoista ja niiden käyttömallista ohjelmistotuotantoprosessissa

2 havainnollistavat siirron toteutusta. Seminaariesityksessä on lisäksi mahdollisesti demonstraatio saatavilla olevista toteutuksista (Rational Rose, Argo UML). 2. Kuvauskielet Vaatimukset siirtoformaatille julkaistiin työnimellä 'Stream-based interchange format' (SMIF RFP) vuonna 1997. Ehdotusten on määrä ratkaista nimenomaan tavuvirta (stream) - tyyppinen rajapinta käytettäväksi esimerkiksi tallennettujen mallien siirtoon ja siirtoon eri metatietovarastojen välillä. Motivaationa tekstipohjaiselle siirrolle on myös jo olemassaoleva ohjelmointirajapinta (CORBA) metamallinnusjärjestelmään. Olemassaolevia metatiedon määritettelykeinoja ovat mm. CDIF (CASE data interchange format) ja RDF (Resource description framework). UML-dokumenttien siirtoon on myös määritelty formaatti (UML exchange format, UXF) joka esittää tyyppi ja oliotason kaavioita, kuten on tarkoitus myös tulevalle UML tekstiformaatille (human-usable textual notation, HUTN). Juuri XML-pohjaisen ratkaisun valintaperusteeksi mainitaan [XMI98] kieleen kohdistuvat odotukset yleisenä verkkomediana. XML on puumuotoisena myös sopiva tietorakenteen talletustavaksi, eikä liity mihinkään aikaisempaan metamallinnus-järjestelmään tai kieleen. 2.1 XML XML on osajoukko dokumenttien sisällönkuvauskielestä SGML (Standard generalized markup language). Kielen mukainen teksti, XML-dokumentti, on rakenteinen lauseke tekstimuodossa olevia vapaasisältöisiä kenttiä, joiden tulkinta ja riippuvuudet ilmaistaan tyyppikuvauksella. Tyyppikuvaukset ovat erillinen laji XML-kieltä, jotka muistuttavat esimerkiksi useiden tekstinkäsittelyjärjestelmien malleja (templates). Esimerkki dokumentin muotoilusta:

3 <!Element Jakso (Jakso Kappale)+> <!ATTLIST Jakso nimi CDATA #IMPLIED> <!Element Kappale> <!ATTLIST Kappale kirjasintyyppi CDATA #IMPLIED> <Jakso nimi="johdanto"> Ittram Dnulredös <Kappale kirjasintyyppi="times"> tyhjä merkkijono </Kappale> </Jakso> Esimerkki 1. Osa XML-dokumenttia XML-kielen erikoispiirre on dokumenttityyppien (DTD, document type definition) käyttö osoittamaan kenttien ja niiden riippuvuuksien käyttöä erillisten ohjelmien, XMLprosessorien, syötteenä. Tyyppitietoa jakamalla saadaan esimerkiksi WEB-selaukseen monimuotoisempia piirteitä kuin HTML-kielellä. Kieleen ollaankin lisäämässä myös mekanismeja hyperlinkkien ja osoitteiden esittämiseen (XLink, XPointer). Laajennukset vaikuttanevat myös XMI-standardiin. 2.2 UML ja MOF UML on kolmen olio-ohjelmoinnin suunnittelumenetelmän käyttämistä notaatioista ja käsitteistä yhdistetty mallinnuskieli ohjelmistoprosessin määrittely-, suunnittelu- ja toteutusvaiheisiin. Kielellä on mahdollista kuvata ohjelmiston elementtien tyyppi-olio - suhteita, olioiden vuorovaikutuksia ja riippuvuuksia, sekä mallinnetun järjestelmän tilaa erilaisia kaavioita käyttäen. Tässä esityksessä keskitytään luokkakaavioihin, jotka esittävät olioiden tyyppien ominaisuuksia, sekä suhteita staattisella tavalla. Kappale kirjasin: String teksti: String 0..n Jakso Kuva 1. Yksinkertainen UML-kaavio Kieli on määritelty kerroksittain, erottamalla kaaviotyypit järjestelmiä kuvaavista käyttäjän UML-kaavioista (vrt. XML ja dokumenttityypit). Näin varsinainen kielen ydin (Metaobject

4 facility, MOF) on kaavioita tehdessä näkymätön, mutta kuitenkin muunneltavissa välineitä erikoistettaessa. Ydin perustuu muutamaan perusalkioon ja kategoriaan, joilla rakennetaan malleja käyttäen olio-ohjelmoinnissa tunnettuja mekanismeja kuten käsitteitä luokka, tyyppi ja olio, periytyminen, viite sekä polymorfismi. Luokka 1 meta-olio 0..n tyyppi instanssi Olio Esimerkki 3. metamallikaavio Eri dokumenttien erottaminen mahdollistaa erilaisten 'murteiden' kehittämisen, sekä ohjelmistotuotantovälineiden erikoistamisen tietylle sovellusalueelle. Murteita on kehitetty esimerkiksi tietoliikennejärjestelmien kuvaamiseen. Sovellusalue UML-kuvattujen metatietovarastojen siirtoon voisi olettaa kattavan hyvin laajan osan ohjelmistotuotantovälineiden toiminnasta. Itse ohjelmistotuotannon prosessin käsitteet olisi kuitenkin mallinnettava. 2.3 XMI XMI määrittelee UML-rakenteiden vastineet XML-kielessä, tuottosäännöt joilla dokumenttityypit kuvataan UML-rakenteista, UML-kaavioiden elementtien kuvaus XMLdokumenteiksi, sekä XML-dokumenttien tuottosäännöt. Yhdessä näillä säännöillä voidaan kuvata UML-metakuvaus niin, että esimerkiksi laajennettua mallinnusta käyttävät kaaviot voidaan koodata. XMI sisältää oman laajennusmekanisminsa, jota käytetään metakielen rakenteiden välittämiseen ja välinekohtaisen informaation esittämiseen. XMI-malliin kuuluu myös oletusarvoinen UML-kielen perusmurteen koodaustapa, joka on esitetty dokumenttityyppimääritelminä (standardin liitteenä). Määritelmä mahdollistaa myös sellaisten työkalujen käytön, jotka eivät toteuta metamalleja, vaan toimivat vain UML-perusversiolla.

UML-kielen taso MOF-termi Esimerkki XMI dokumentti M3 metametamalli UML MOF-kieli MOF DTD M2 metamalli tai UML-kielen UML DTD, MOF XML metametadata määritelmä dokumentti M1 malli tai metadata UML-mallit UML XML dokumentti M0 data UML-mallin instansseja 5 Taulukko 1. UML- ja XML-kielten suhde [DHT00, s.100, XMI98] Kuvauskielen mallin (UML-terminologiassa metametamalli) muunnos on määritelty siten, että laajennusten siirto on tuntumaton työkalussa mikäli se ei toteuta kielten mallien siirtoa tai mikäli kielen mallia ei ole saatavilla. Tällöin välineessä voidaan esittää vain UMLkielen perusversion mukaisia kaavioita ja suhteita. 2.3.1 XMI elementit Kielen osa (luokka) esitetään samannimisellä XML-dokumenttityypin elementillä, jonka määritelmään kuuluvat luokan sisältämät attribuutit, viittaukset luokkaan liittyviin relaatioihin, sekä luokkaan sisältyvät muut luokat. Suhteista muodostetaan oma elementtinsä, johon kuuluu luokan olioiden rooli, lukumäärärajoite sekä suhteen vastinpäätä kuvaava elementti. Metamallien dokumenttityyppikuvauksissa käyttäjän mallien luokat on siis kuvattu Luokka-käsitettä vastaavilla XML-elementeillä, ja instanssikuvaukset Olio-käsitettä vastaavilla. XMI-dokumentti tunnistetaan otsakkeesta (XML-versio), XMI- ja MOF-mallien versiot huomioonottaen. Merkkijärjestelmä tunnistetaan XML-kielessä. Siirrettävien mallien tyyppi kuvataan siis XML-dokumenttityypiksi niin, että UML-kielen metaolioita vastaa XML-elementtikuvaus. Myös kielten mallien osia voidaan siirtää, mikä mahdollistaa kuvauksen osittaisen päivittämisen. Standardi [XMI00] ei vielä määrittele viittausta mallin osaan, mutta tulevaisuudessa linkkimekanismia voidaan käyttää tähän.

6 XMI-formaatin olennainen hyöty on, että mallinnustyökalun toteuttaessa UML-metamallit siirrettävä tieto on välineestä riippumaton. Koodaus siis säilyttää käyttäjän mallintaman informaation sellaisenaan, ja kuvausta voidaan periaatteesa muuttaa eri välineissä. 3. Sovelluksia XMI on käytössä prototyyppiasteella, muuntimia on saatavissa ja ainakin jotkin mallinnustyökalut toteuttavat koodauksen. XML-jäsentäjien saatavuus on hyvä, mutta MOF-toteutus ei välttämättä ole itsestäänselvyys välinevalmistajalle. Tämä saattaa olla syynä dokumenttityyppien liittämiseen XMI-standardiin. Prototyyppejä ovat metatietovarastototeutuksissa tehneet [XMI98] mm. Unisys, IBM, Oracle, ja Platinum. Rational Rose, Select Enterprise ja Unisys UREP -työkalujen ja tietovarastojen välillä on tehty siirtokokeilu, joka säilyttää työkalukohtaisen informaation. IBM on integroinut IBM integroinut TeamConnection-tietovarastototeutuksen ja VisualAge for Java -työvälineet. Projekteissa on käytetty IBM- ja Microsoft -XML-jäsentäjiä. XMI-määritelmän rajoituksia on muun muassa metamallin siirto, joka ei voi säilyttää kaikkia MOF-kielen rakenteita, koska XML-dokumenttityypeillä ei voida kuvata niitä. Esimerkiksi attribuuttien ja relaatioiden ominaisuuksien ilmaisemiseen täytyy käyttää laajennuselementtejä [XMI98]. Kaavioiden graafisen esitysmuodon kuvausta ei ole standardoitu, joten laajennuselementtejä voidaan käyttää tähän tarkoitukseen [DHT00], tai tallentaa asettelu eri tiedostona (PGML). Laajennusten talletus on järjestettävä niin, että usean työvälineen (round-trip engineering) käsittelemä tieto säilyy. 3.1 Arvioita käytettävyydestä Standardin tukijoihin kuuluvat suurimmat välinevalmistajat, jotka myös ovat mukana muussa OMG-standardoinnissa. SMIF RFP määritteli koodaustavalle tiiviin vaihtoehdon,

7 jota XMI ei toteuta. Kysymys tallennustilan käytöstä ja siirtotien kapasiteetintarpeesta on avoin. 3.1.1 Käyttömahdollisuuksia Miksi käyttää siirtoformaattia, jos on voidaan integroida ohjelmistoja? Ohjelmointirajapintojen käyttö järjestelmien yhdistämiseen ei ole välttämättä aina mahdollista erityyppisten kutsumallien ja alustojen takia. Lisäksi tallennus tai tavuvirran siirto voi olla käyttötapojen mukaista joissain tilanteissa. Mallintamalla heterogeenisen järjestelmän kieliä saattaisi olla mahdollista tuottaa informaatiota joka voisi olla prosessikohtaista tai liittyä suoraan tuotteeseen. Vertailukohtana voi pitää integroitua ympäristöä, joka sisältää esimerkiksi versionhallinnan, komponenttikuvauksia, prosessinhallinnan avustusjärjestelmän ja erilaisia raportointityökaluja. Mikäli järjestelmän eri osat ovat muunneltavia, XMI-dokumentti voisi kuvata osia ohjelmistotuotantoprosessista. 4. Päätelmiä XMI on suunniteltu UML-mallien ja erikoistettujen versioiden siirtoon tavuvirtamuotoisena koodauksena. Avoimen siirtomuodon voidaan olettaa kattavan tarpeita erilaisten työkalujen yhdistämiselle, hajautettujen työympäristöjen vaihtoformaatiksi, sekä välittämään itse mallinnustapojen kuvauksia rajoitetulla tavalla. Koodausta voidaan käyttää ilman OMGmetatietovaraston toteutusta. XMI on määritelty käyttäen UML MOF-kieltä, jolla myös UML perusversio on määritelty, joten mallinnustapojen siirto on mahdollista. Ratkaisu on periaatteessa laajennettava, joskin esitysmuotoja koskeva informaatio on vielä standardoimatta UML-kielessä. Käytettävyys mallien siirtoon riippuu mallinnustyökalujen tavasta toteuttaa UML, ja niiden UML- ja MOF-versioista sekä itse XMI-versiosta. Riippuen mallinnuskielten ja XML-kielen kehityksestä standardi voi odottaa muuttuvan.

8 Kuvaus on ymmärrettävällä tavalla muotoiltu, joskin hieman raskaslukuinen ja rajoitettu XML-dokumenttityyppien määrittelytavan takia. Tällä hetkellä XML kaavojen (schema) käyttöä ei ole huomioitu. Esitysmuotoja ja välinekohtaista informaatiota voidaan välittää XML-elementeissä, jotka tulkitaan vain sisällön tulkinnan tuntevissa työkaluissa mikä mahdollistaa monen erilaisen järjestelmän käytön mallinnusprosessissa. Metatietovarastojen toteutus on tulevaisuudessa välttämätön välineessä mallinnuskielten siirron mahdollistamiseksi. Jotkin mallinnusympäristöt toteuttavat jo yksinkertaisemman XMI-siirron, ja laaja kannatus sekä XML-teknologian yleisyys lisännee saatavuutta. Yleinen ohjelmistotuotannollinen hyöty saattaisi olla tallennusmuodon käyttö prosessin eri vaiheiden ja näkökulmien informaation ymmärrettävyydessä ja hallittavuudessa. Toistaiseksi (löydetyt) sovellukset keskittyvät oliomallien kuvausten siirtoon, mutta mallintamalla tuotantoa voitaisiin saada yleisempää hyötyä metatiedon muodossa. Lähteet [XML98] [UML00] [XMI00] [RR00] [DHT00] [SSK00] Extensible Markup Language (XML) 1.0. Worldwide Web Consortium Recommendation, 1998. OMG Unified Modeling Language Specification. 00-03-01, Object Management Group, 2000. OMG XML Metadata Interchange (XMI) Specification. 00-06-01, Object Management Group, 2000. Robbins, J., Redmiles, D., Cognitive support, UML adherence, and XMI interchange in Argo/UML. Information and Software Technology, 42, 2, Elsevier, 2000, s. 79-89. Damm, C., Hansen, K., Thomsen, M., Tyrsted, M.,Tool integration: experiences and issues in using XMI and component technology. Proceedings of the 33rd International Conference on Technology of Object-Oriented Languages and Systems TOOLS 33, IEEE, s. 94-107. St-Denis, G., Schauer, R., Keller, R., Selecting a model interchange format: the SPOOL case study. Proceedings of the 33rd Annual Hawaii International Conference on Systems Sciences, IEEE, 2000, http://www.iro.umontreal.ca/~labgelo/publications/papers/hicss-2000.pdf.