Transzformációk integrált alkalmazása a modellvezérelt szoftverfejlesztésben

415 views

Published on

PhD disszertáció téziseinek előzetes bemutatója. BME-MIT tanszéki értekezlet, 2010. 02.03.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
415
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transzformációk integrált alkalmazása a modellvezérelt szoftverfejlesztésben

  1. 1. Transzformációk integráltalkalmazása amodellvezéreltszoftverfejlesztésbenRáth Istvánrath@mit.bme.hu
  2. 2. A grafikus nyelvek...• mindenhol ott vannak: – Grafikus felületek (Visual Studio) – Relációs sémák (dbdesign) – Web layout (Dreamweaver) – UML eszközök (Rational) – Üzleti folyamat modellezés (Oracle BPEL designer)• Mi tesz egy nyelvet nyelvvé? – elemek („mit rajzolhatunk?”) – szabályok („hogyan rajzolhatunk?”)• Miért jó egy ilyen nyelv? – Alkalmazkodik a célterülethez (kifejezésbeli értelemben) – … és a felhasználóhoz is („intuitív” megjelenés)
  3. 3. Domain-specifikus nyelvek !"#$%!& !"#$%!& !"#$%!& !"#$%&( !"#$%&( !"#$%&( 4& 4& 4& &()*& &()*& &()*& !" !" !"/$0$123)"& /$0$123)"& /$0$123)"& +)%,& -.& +)%,& -.& +)%,& -.& Metamodell = elemkészlet + szabályok
  4. 4. Domain-specifikus nyelvekDSML= metamodell + további szabályokOkos editorral ezeket be lehet tartatni, a felhasználó csak „helyes” modelleket rajzolhat. De: helyes != értelmes
  5. 5. Modell-vezérelt fejlesztés Visszafejtés (RE), modellezés Platform Platform független független modell modell Beágyazott Platform CORBA J2EE platform specifikus modell modell modell modell CORBA J2EE Beágyazott Öröklött Készalkalmazás alkalmazás alkalmazás kód alkalmazás
  6. 6. DSM⊆MDA Modellezés PIM (re-engineering) Szakterületi modellek Szakterületi modellek Beágyazott Platform CORBA J2EE platform generátor modell modell modell modell CORBA J2EE Beágyazott Öröklött Készalkalmazás alkalmazás alkalmazás kód alkalmazás
  7. 7. DSM-alapú fejlesztésifolyamatok Specifikáció = Iteratív fejlesztés analitikus modellezés (generatív technikák) Eszközkészlet prototipizálás
  8. 8. Nyelvfejlesztés Jólformáltsági Konkrét kényszerek szintaxis Absztrakt Kódgenerátorok szintaxis Dinamikus modellezés Nyelvközi leképezések
  9. 9. Problémák, kihívásokabsztrakt-konkrét szintaxis kapcsolatajólformáltsági kényszerek hatékony kiértékelésedinamikus modellezés, animáció integráltmegvalósításainkrementális kódgenerálás, modell-kód szinkronizáció...
  10. 10. Javaslat Transzformációk integrált alkalmazása a nyelvtervezés hatékony támogatására DSML1 DSML2 DSMLn Domain-specifikus nyelvi környezet Modelltranszformációs keretrendszer
  11. 11. Több nézet, egységesmodelltér A nyelv (domain) B nyelv (domain) <<A>> <<A,B>> <<B>> Többnyelv! modellek
  12. 12. Absztrakt-konkrét szintaxis Probléma: bonyolultság, kötött szabályok
  13. 13. Egy jobb architektúra
  14. 14. Jólformáltsági kényszerek Probléma: on-the-fly kiértékelés, azonnali visszajelzés Formalizmus: OCL, ... Hogyan lehet hatékonyan?
  15. 15. Kényszerek→inkrementálistranszformációkJavaslat: kényszerkielégítés szisztematikusvisszavezetése speciális inkrementálismodelltranszformációkra.
  16. 16. Dinamikus modellezésCél: diszkrét szimuláció-animáció az állapotot diszkrét időben értékeljük ki Pl. állapot térképek, Petri hálók, DFN, Kripke automaták…Operációs szemantika Egy állapotátmenet végrehajtásának leírása a nyelv saját kontextusában.Denotációs szemantika Leképezés egy, már ismert operációs szemantikájú formalizmusra.
  17. 17. Animáció→inkrementálismodelltranszformációDenotációs megközelítés Szimulációs lépések leírása valamely modelltranszformációs nyelven.Leírás Metamodell Szimulációs lépések (szabályok)Szabályok leírása Engedélyezettségi feltétel: milyen lokális állapotban tüzelhető a szabály? (kontextus) Végrehajtás: elemi műveletek sorozata.
  18. 18. “on-the-fly” animációTetszőleges szerkesztési lépések is megengedettek a szimuláció futása közben!
  19. 19. Technológiai háttér:eseményvezéreltmodelltranszformációk
  20. 20. A háttérben: inkrementálisgráfmintaillesztés
  21. 21. Formalizmus: gráftriggerek
  22. 22. Végrehajtás
  23. 23. Inkrementális kódgenerálás,modell-kód szinkronizáció
  24. 24. Eseményvezéreltszinkronizáció /01-&+# ,(-*+.# !"# !$# &()*+# !"%# !$%#
  25. 25. Az eredményekhasznosításaVIATRA2 projektEU kutatási projektek transzformációk: SENSORIA eszközintegráció: SENSORIA, MOGENTES (, DIANA)nemzetközi kooperáció: VoIP hálózatok sztochasztikus szimulációja (ULE)oktatás Eclipse-es szakmai választható tárgyak (BSc, MSc) (eclipse.inf.mit.bme.hu) MSc szakiránytárgy: Modellvezérelt rendszertervezés (modeling.inf.mit.bme.hu) MIT-AUT kooperációban szakmai választható tárgy: Modellvezérelt szoftverfejlesztés
  26. 26. Köszönöm szépen a figyelmet!

×