Domain-specifikus modellezési nyelvek automatikus transzformációi

  • 232 views
Uploaded on

I. díjat nyert előadás a 2005-ös BME VIK Kari TDK konferencián, valamint a 2007-es Országos TDK Konferencián. …

I. díjat nyert előadás a 2005-ös BME VIK Kari TDK konferencián, valamint a 2007-es Országos TDK Konferencián.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
232
On Slideshare
0
From Embeds
0
Number of Embeds
2

Actions

Shares
Downloads
0
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Domain-specifikus modellezési nyelvekautomatikus transzformációi Ráth István Schmidt András Vágó Dávid g Konzulensek: Dr. Dr Varró Dániel Balogh András Méréstechnika és Információs Rendszerek Tanszék
  • 2. Modellvezérelt rendszerfejlesztés Rendszermodell Viselkedési Strukturális Adatbiztonság modell modell modell Előnyei: •Költséghatékonyság • Időmegtakarítás • Emberi beavatkozás Alkalmazás minimalizálása
  • 3. Az UML, , mint rendszermodellező nyelv Rendszertervező Adatbiztonsági szakértő UML nyelvÁllapottérkép Osztály Megbízhatósági diagram diagram profil Problémák: • Túl bonyolult eszközRendszermodell • Hibás modellek ( (könnyen) y ) Strukturális Adatbiztonság létrehozhatók Viselkedési modell modell modell Alkalmazás
  • 4. Domain-specifikus p modellezési nyelvek Rendszertervező Adatbiztonsági szakértő Eszköz tervező UML nyelv Sztochasztikus S t h tikÁllapottérkép Osztály Petri háló diagram diagram Problémák: • Lassú fejlesztés • Primitív DSMRendszermodell keretrendszerek Strukturális Adatbiztonság Továbbá: Viselkedési modell modell DSM ek DSM-ek modell integrációja?
  • 5. Domain-specifikus modellezési nyelvek tervezése Modellezési nyelvek felépítése Konkrét szintakszisModellekszimulációja Absztrakt szintakszis Petri háló Petri(Korai háló/Állapotgép háló/Áll t étesztelés) Jólformáltsági kényszerek << Él >> << Él >> T0: Tranzíció T0: Tranzíció Dinamikus szemantika P0: H l P0 Hely P0: Hely Modellezési nyelvek + kapacitás + tokenszám integrációja Modelltranszformációk Petri háló:• Automatikus kapacitás ≥modellanalízis Kódgenerálás tokenszám
  • 6. Javasolt rendszerarchitektúra UML nyelv Sztochasztikus ViatraDSMÁllapottérkép Osztály Petri háló keretrendszer diagram diagramRendszermodell VIATRA2 Strukturális Adatbiztonság Modell- Viselkedési modell modell transzformációs Elméleti modell rendszer eredmények: • Formális specifikáció • Egységes é Alkalmazás leírás
  • 7. Modellezési nyelvek formális specifikációjaModellezési nyelvek felépítése Konkrét szintakszis Domain és Diagram Absztrakt szintakszis metamodell (VPM)
  • 8. Absztrakt szintaxisdeklaratív specifikációja Domain o ametamodell mag Petri háló Háló_1: [Csomópont] Petri háló Szerkesztő H1_helyek: helyek yy T1tranzíciók _tranzíciók: Modellfinomítás [tartalom] helyek [tartalom] gyökércsomópont tranzíciók Domain Hely_1: Hely Tranzíció_1: Tranzíció metamodell [C H ó Csomópont óí ió t] [Csomópont] Hely t] l [Csomópont] [CT Tranzíció tartalom Él tokenek H1_t: É1_s: súly Szintaxisvezérelt tulajdonságok [Él] [tartalom] j tokenek Él_1: KiÉl KiÉl g [ y [tk.] súly] szerkesztés k té tulajdonságok t l jd á k Token_1: Token Tulajdonság Élsúly_1: Élsúly Domain [Csomópont] Token [Tulajdonság] Élsúly modell
  • 9. Megjelenítésdeklaratív specifikációja Domain o a Logikai modell Diagram ag ametamodell mag metamodell mag • Cél Cél: Modellfinomítás Modelltérbeli perzisztencia Domain Diagram metamodell támogatása metamodellek Szintaxisvezérelt • Lehetőség: szerkesztés k té Konkrét megjelenítés Domain modellalapú specifikációja Diagram modell modellek
  • 10. Végeredmény: Grafikus Petri háló szerkesztőTechnológia• Eclipse • nyílt, integrált fejlesztői környezet• Graphical Editing Framework (GEF) • magas szintű grafikus szerkesztő könyvtár Eclipse-hez
  • 11. Modellezési nyelvek formális specifikációjaModellezési nyelvek felépítése Konkrét szintakszis Domain és Diagram Absztrakt szintakszis metamodell (VPM) Jólformáltsági kényszerek Dinamikus szemantika Di ik tikModellezési nyelvek integrációja Modelltranszformációk Kódgenerálás
  • 12. Modellezési nyelvek formális specifikációjaModellezési nyelvek felépítése Konkrét szintakszis Domain és Diagram Absztrakt szintakszis metamodell (VPM) Jólformáltsági kényszerek Dinamikus szemantika Di ik tik Modell-Modellezési nyelvek integrációja transzformáció (GT+ASM) Modelltranszformációk Kódgenerálás
  • 13. Dinamikus szemantika Gráftranszformációs szabályBaloldal Jobboldal Él Él Él Él Hely Tranz. Hely Hely Tranz. Hely tokenek tokenek Token Token Chomsky nyelvtanok általánosítása szöveges minta gráfminta Alkalmazás: baloldalt a jobboldalra cseréli Gráfmintaillesztés Akciók: Törlés + Létrehozás
  • 14. Új eredmények: GráftranszformációBaloldal Jobboldal [ Él ] [Él] Él ] [ [Él] [ Él ] [Él] Él ] [ [Él] [Hely] Hely [Tranz.] Tranz. [Hely] Hely [Hely] Hely [Tranz.] Tranz. [Hely] Hely [tokenek] tokenek [tokenek] tokenek [Token] [Token] [Token] [Token] Interpreter alapú gráftranszformációs eszköz Generikus minták: típusváltozók kezelése Rekurzív minták: visszahívható minták Lokális keresésen alapuló mintaillesztési algoritmus p g Tüzelési szabály szimuláció a szerkesztőben
  • 15. Esettanulmány1. Jólformáltsági kényszerek definiálása kapacitáskorlát ellenőrzése: 2 GT szabály y2. Szimulációs transzformáció definiálása tüzelés: 4 GT szabály3. Kódgenerátor transzformáció definiálása Petri Net Markup Language generátor: 6 GT szabály y
  • 16. Utóélet Több nézőpontú modellezés Absztrakt-konkrét szintakszis közötti kétirányú leképezés Nyelv-specifikus kényszerek kezelése
  • 17. Több nézőpontú modellezés A nyelv (domain) B nyelv (domain) <<A>> <<A,B>> <<B>> Többnyelvű modellek
  • 18. Több nézőpontú modellezés
  • 19. Absztrakt-konkrét szintakszismegfeleltetéseLogikai modell Diagram h0 p p0 : Hely y :token :token :token 3 VIATRA2 t0:Token t1:Token t2:Token Modell transzformációkLogikai modell Diagram modell Diagram :model p0 : Hely _p0 : HelyRajz h0 :token :token :token :attribútum 3 t0:Token t1:Token t2:Token tokenSzám :Attribútum
  • 20. Elméleti eredményekDomain specifikus modellezési nyelvek Grafikus szerkesztőinek automatizált előállítása Deklaratív specifikáció Szerkesztők automatikus származtatása S k tők t tik á t tá Egységes formális leírása (gráftranszformáció és absztrakt állapotgépek) Jólformáltsági kényszerek, Dinamikus szemantika, Modelltranszformációk, Kódgenerálás
  • 21. Gyakorlati eredményekImplementáció: VIATRA2 modelltranszformációs rendszer: 18 emberhónap b hó ViatraDSM keretrendszer: 5 emberhónap Eclipse Generative Model Transformers projekt része (http://www.eclipse.org/gmt/)8 TDK dolgozat használta a VIATRA2 rendszert, ebből 5 kari I. díjat ynyertÖnálló laboratórium: nyelv-specifikus kényszerek kezeléseWorkshop cikk: I. Ráth, D. Varró: Challenges for advanced domain-specific frameworks. European Conference on Object-Oriented p p jProgramming. July 3-7, Nantes, France.