Budapest University of Technology and Economics Fault-tolerant Systems Research Group Nyílt Fejlesztőrendszerek Domain specifikus nyelvek Eclipse Modeling.

Slides:



Advertisements
Hasonló előadás
Bevezető Innovációs területek S+S Epilógus. pptPlex Section Divider Bevezető The slides after this divider will be grouped into a section and given the.
Advertisements

Global Distribution System
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék 5.5. Model Based Architecture módszerek BelAmI_H Spring.
Richter Elek Technikai terméktámogatási felelős Microsoft Magyarország.
© 2008 Cisco Systems, Inc. All rights reserved.Cisco ConfidentialPresentation_ID 1 Üzleti Megoldások a KKV szegmens számára Cisco partner nap 2009 április.
21 Years of Partnership and Innovation 1989 Citrix Systems founded 2010 Citrix signed licensing agreement with Microsoft for NT Server Introduced Independent.
Mylogo is member of Erste Group (this is optional: please cancel completely from the Master, if not needed or just cancel this info) E RSTE B ANK „Olaj.
STORY THE MAN THE BOY AND THE DONKEY. AZ EMBER A FIÚ ÉS A SZAMÁR.
Az integrált áramkörök (IC-k) tervezése
A Microsoft rendszermenedzsment víziója A Dynamic Systems Initiative A System Definition Model Az üzemeltetésre tervezett szoftverek A SDM jelentősége.
„ Bottom-up” cluster development and cooperation in Hungary Hungarian Confederation of Clusters and Networks Conference on cluster-cooperation in the V4.
Kalman-féle rendszer definíció Kálmán Rudolf Rudolf Emil Kalman was born in Budapest, Hungary, on May 19, He received the bachelor's degree (S.B.)
Budapest University of Technology and Economics Fault-tolerant Systems Research Group Nyílt Fejlesztőrendszerek Domain specifikus nyelvek Eclipse Modeling.
Budapest University of Technology and Economics Fault-tolerant Systems Research Group Nyílt fejlesztőrendszerek Felhasználói felületek Balogh András.
Budapest University of Technology and Economics Fault-tolerant Systems Research Group Nyílt Fejlesztőrendszerek Plugin fejlesztés.
Budapest University of Technology and Economics Fault-tolerant Systems Research Group Nyílt Fejlesztőrendszerek Graphical Editing Framework.
Budapest University of Technology and Economics Fault-tolerant Systems Research Group BIRT, Szerveroldali Eclipse, TPTP, Subversive Balogh András.
FelültöltésVHDL Felültöltés (Overloading) n Áttekintés n Példák.
Szakterület-specifikus modellezés és modellfeldolgozás
Vizuális modellezés Uml és osztálydiagram UML eszközök
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Hálózati Operációs Rendszerek TMForum Dr. Bilicki Vilmos.
Modellvezérelt webalkalmazás-tervezés
Szoftverrendszerek fejlesztése
Course Situation and Event Driven Models for Multilevel Abstraction Based Virtual Engineering Spaces Óbuda University John von Neumann Faculty of Informatics.
1. előadás. 1.) Szoftverfejlesztés, mint mérnöki tevékenység. Számítási eszközfejlődés. Számítási eszközfejlődés: hazai viszonyok. Mérföldkő: Simula 67.Klasszikus.
1. előadás. 1.) Szoftverfejlesztés, mint mérnöki tevékenység. Számítási eszközfejlődés. Számítási eszközfejlődés: hazai viszonyok. Mérföldkő: Simula 67.Klasszikus.
Természetesen P = Q = O esetén O + O = O. Tetszőleges, nem 2, vagy 3 karakterisztikájú test esetén hasonló módon eljárva E(K)-n zárt műveletet.
Copyright © 2005 | update software AG | update software Magyarország Kft. Radics Sándor principal IV.
♀ ♂ Vizuális kódok a videoklipekben Bakonyi Borbála ELTE BTK.
Szoftvertechnológia Bevezetés.
ESzabványok Workshop 1. előadás: Bevezető, eAdatmodell október 13.
„MICROSOFT IT ÜZLETI INTELLIGENCIA MEGOLDÁS BEMUTATÓ” Avagy az IT adat vizualizációs lehetőségi egyéb szervezeti egységek felé („ablak” a nagyvilágra)
Edge Transport Routing and AV/AS Enterprise Network External SMTP servers Phone system (PBX or VOIP) Client Access Client connectivity Web services.
„MICROSOFT SYSTEM CENTER 2012 OPERATIONS MANAGER” Intelligens mérési megoldások gyorsan Benkovics Viktor Vezető tanácsadó Microsoft Magyarország – Services.
Üzleti informatika Szabó Gábor - üzletágvezető February 25.
Copyright © 2012, SAS Institute Inc. All rights reserved. STATISZTIKA ÉS VIZUALIZÁCIÓ - ÚJ LEHETŐSÉGEK A STATISZTIKAI ADATOK MEGJELENÍTÉSÉRE ÉS FELTÁRÁSÁRA.
Új programozási paradigmák a láthatáron (aspektus-orientált és intencionális programozás) Csontos Péter AITIA Informatikai Rt. 2002/10/17.
Tervminták megvalósítása B formális nyelven Papp Olga Vadász Péter Témavezető: Fóthi Ákos egyetemi tanár.
Tervminták megvalósítása B formális nyelven Papp Olga Vadász Péter.
Szervező program Pénzügy figyelő, számlázó program Legújabb alkalmazás.NET Framework 2.0 WSE.NET Framework 4.0 WCF Régebbi, jól bevált alkalmazás.
Gábor Dénes Főiskola (IAI)Programozási technológia (Java) - III. / 1 13.Állományok, bejegyzések 14.Folyamok 15.Közvetlen hozzáférésű állomány.
Z. Klencsár, Z. Németh, E. Kuzmann, Z. Homonnay, A. Vértes Research Group for Nuclear Methods in Structural Chemistry, Hungarian Academy of Sciences, Department.
Budapest University of Technology and Economics Fault-tolerant Systems Research Group Nyílt Fejlesztőrendszerek JFace.
Budapesti Műszaki Egyetem Méréstechnika és Információs Rendszerek Tanszék 1 Szolgáltatásbiztos számítástechnika = hibatűrés, információbiztonság Pataricza.
Budapest University of Technology and Economics Fault-tolerant Systems Research Group Nyílt Fejlesztőrendszerek SWT haladó komponensek.
Budapest University of Technology and Economics Fault-tolerant Systems Research Group Nyílt Fejlesztőrendszerek JFace.
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks P-GRADE Portal gyakorlat ismertető Gergely.
1 SCI-BUS SCIentific gateway Based User Support Kezdés: Futamidő: 36 hónap SCI-BUS is supported by the FP7 Capacities.
Domain-specifikus nyelvek a fejlesztésben Ráth István
Teachers as key stakeholders of ICT in Hungarian schools Andrea Karpati, Eotvos University, Budapest
Tanulni, tanulni, tanulni Értékesítői képességek, a személyzet képzése.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Web: Magasszintű Programozási Nyelvek I. Eszterházy.
Domain names and DNS Félegyházi Márk Laboratory of Cryptography and System Security (CrySyS) Budapest University of Technology and Economics Department.
Budapest University of Technology and Economics Fault-tolerant Systems Research Group Eclipse alapú technológiák JFace Balogh András.
BPM alapú robosztus e-Business alkalmazás fejlesztés VE Számítástudomány Alkalmazása Tsz. BME Méréstechnika és Információs Rendszerek Tsz. Balatontourist.
A szoftver, szoftvertípusok
- Group Policy - Group Policy Preferences - Group Policy 4x5 - Optimális munkakörnyezet – az első lépcsőfok.
A sablon nyelvének választása: /Format/Slide Design /majd jobb oldalt válaszd a másik be- ágyazott sablont! Projekt logó beállítása: /View/Master /Slide.
SpecificationWebStandardEnterpriseDatacenterItaniumFoundation X64 Sockets44864  1 IA64 Sockets  64  X64 RAM32 GB 2 TB  8 GB IA64 RAM 
Department of Applied Mechanics – Budapest University of Technology and Economics Magas röptű robotok a mennyezeten Magas röptű robotok a mennyezeten Stépán.
Az üzleti rendszer komplex döntési modelljei (Modellekkel, számítógéppel támogatott üzleti tervezés) II. Hanyecz Lajos.
Web Application 1 Web Application 3 Web Application 2 Web Application 4 Shared Service Provider 1 Shared Service Provider 2 Excel Services1 Search1.
Objektumvezérelt rendszerek tervezése
Technological investigation of Early Neolithic pottery from Vörs, South-West Hungary Gherdán, Katalin* - T. Biró, Katalin** - Szakmány, György* - Tóth,
.NET FRAMEWORK Röviden Krizsán Zoltán 1.0. Tulajdonságok I Rövidebb fejlesztés 20 támogatott nyelv (nyílt specifikáció) 20 támogatott nyelv (nyílt specifikáció)
Grafikus szoftver Szirmay-Kalos László. Interaktív programok felépítése input csővezeték output csővezeték.
IoT alapvető kérdései és megoldásai I. rész
Programozási nyelvek alapfogalmai
Zoltán Baracskai In the age of digital natives: fast thinking, experience mining, and rule based behaviour these three metaphors are sufficient to describe.
Előadás másolata:

Budapest University of Technology and Economics Fault-tolerant Systems Research Group Nyílt Fejlesztőrendszerek Domain specifikus nyelvek Eclipse Modeling Framework

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 2 Miért kellenek domain specifikus nyelvek?  A mai szoftver fejlesztés kihívásai −komplexitás: ●Növekvő fejlesztési idő és költség −diverzitás: ●domainek, követelmények, implentációs technikák, eszkzök −Változás ●Változó követelmények, környezet, bug fixek…

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 3 Nyelv-alapú fejlesztés  A nyelvek alapvető fontosságúak az emberek számára  Biztosítaniuk kell −Futtatást, analízist, tesztelést, implementálást, …  Kulcs: Több nyelv absztrakciója és integrációja −Transzformáció −Aspektus integráció −szinkronizáció −Finomítás és ekvivalencia vizsgálata −evolúció

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 4 Az UML lehetőségei  Előnyök: −Standard közös nyelv −Vizuális  Hátrányok: −Nem-formális szemantika ●Nincs egy közös, általánosan használható szemantika −Korlátozott hatókör ●UML Profilok −Unified (NOT Universal) Modeling Language

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 5 Metamodellezés: Modellező nyelvek tervezése

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 6 Modellező nyelvek tervezése  Metamodellezés: Tervezési metodológia modellező nyelvekhez  Metamodel: egy modellező nyelv modellje  Lehetőségek: −Konkrét szintaxis −Absztrakt szintaxis −Jól formáltság szabályok −Szemantika −Leképzések más nyelvekre

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 7 Konkrét szintaxis  A modellek (vagy programok) megjelenése −Szöveges notáció: +Könnyen írható: Komplex kifejezések is megadhatóak -Nehéz olvasni:Nehéz karbantartani és módosítani a komplexitás miatt −Vizuális notáció: +Könnyen olvasható: Ki tudja fejezni a nyelv (vagy egy kiválasztott rész) részleteit egy intuitív, könnyen érthető jelölésrendszerrel +Biztonságosan írható: Csak szintaktikailag helyes modellek készíthetőek -Nehéz írni: a grafikus szerkesztés lassabb…

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 8 Példa: konkrét szintaxis void request() { if (state == "idle" && this.load<10) state = "calculating"; } void response() { if (state = "calculating") state = "idle" } Szöveges notációGrafikus notáció

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 9 Absztrakt szintaxis (Metamodel)  Metamodel: a modellező nyelv modellje −Jelentés: feletti, transzcendens…  Cél: definiálni −A nyelv által tartalmazott koncepciókat −És az ezek közötti lehetséges kapcsolatokat  Tartalma: −Alapelemek definíciója −Kapcsolatok az elemek között −Absztrakció/finomítás (Taxonómia, Ontógia) az elemek között −kényszerek (pl. számosság) −(egyéb jól formáltsággal kapcsolatos szabályok)

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 10 t1s2t2 s1a1s3 t3 st tr fr to fr curr s2 s3 s1 t1 t2 t3 a1 Abstrakt szintaxisKonkrét szintaxis Model szint Meta (nyelv) szint StateAccStateTransition Automaton from to transitions statescurrent color:{R,G,B} Metamodel Instantiation osztály asszociáció öröklődés attribútum Object Link Metamodellek és példányok

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 11 Típus konform modellek

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 12 Példa: Statechart Metamodel

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 13 Példa: EJB Metamodel

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 14 Hol találkozunk metamodellekkel?  Különböző alkalmazási domainek az UML körül −SysML (rendszerfejlesztés) −SPEM (folyamat modellezés) −CWM (adattárházak) −GRM (Általános erőforrás metamodell) −EDOC (nagyvállalati elosztott rendszerek) −AutoSAR (autóipari szabvány) −FIBEX (autóipar) −AADL (repülő) −XPDL (üzleti folyamatok)

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 15 Well-formedness rules  Multiplicity constraints −At most one: 0..1 −Many: *  Aggregation/Containment −At most one parent for each model element  Language specific constraints: −E.g.: Each state in a class must have a unique name −Expressed in e.g. OCL

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 16 Dynamic Semantics  Semantics: the meaning of concepts in a language  Main approaches: −Denotational (Translational): translating concepts in one language to another language (called semantic domain) ●compiled −Operational: modeling the operational behavior of language concepts ●interpreted

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 17 Overview of Transformations Semantic domain/ Programming language Semantic domain/ Programming language Concrete syntax Abstract syntax layout scanning and parsing denotational semantics semantic feedback operational semantics

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 18 XMI: Dokumentumtervezés metamodellezéssel

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 19 Dokumentumtervezés metamodellezéssel  Célkitűzés: −XML alapú dokumentumok struktúrájának automatikus szintézise −az XMI (XML Metadata Interchange) szabvány használatával

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 20 XML áttekintés  XML = eXtensible Markup Language −a Web szabványos nyelve −strukturált információtárolás  Korábbi problémák: −HTML: megjelenítés orientált −SGML: túl komplex  Tulajdonságai: −különválasztott struktúra és megjelenítés −eszköz- és gyártófüggetlenség

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 21 Az XML struktúrája  XML Schema, DTD (Document Type Definition): −dokumentumok modellezésére −speciális nyelvtan −Dokumentumellenőrzés  Dokumentum példány: −információ tárolására −jól formált HTML-szerű tag-ek −szigorú fastruktúra

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 22 Dokumentum definíciók és példányok DefinitionInstance element Mondeo attribute

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 23 Példa: metamodell és modell  Csapat metamodell −M2 szint  Csapat modell −M1 szint Element name : String Player number : Integer Team +players+playsFor 0..*11..*0..*11..* Puskas : Player Hungary : Team playsFor players

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 24 Példa: XMI 1.0 DTD Element name : String Player number : Integer Team +players+playsFor 0..*11..*0..*11..*

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 25 Példa: XMI 1.0 dokumentum Hungary Puskas 10 <Player.playsFor xmi.idref=‘t1’/> Puskas : Player Hungary : Team playsFor players

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 26 Példa: XMI 1.1 dokumentum <FB:Player id=‘p1’ name=‘Puskas’ number=’10’ playsFor='t1'/> Puskas : Player Hungary : Team playsFor players

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 27 Példa: XMI 2.0 dokumentum <fb:Model xmlns:fb="…„ xmlns:xmi="…" <players xmi.id=‘p1’ name=‘Puskas’ number=’10’ playsFor='t1'/> Puskas : Player Hungary : Team playsFor players

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 28 Eclipse Modeling Framework  Modellezési komponens Eclipse alá  Lehetőség domain specifikus nyelvek definiálása  Szerkesztés, XML/XMI export-import támogatás  Saját metamodellező mag

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 29 EMF történelem  Eredetileg MOF alapú volt −MOF-> OMG szabvány −Absztrakt nyelv és keretrendszer metamodellek specifikálására  Az EMF az alkalmazási tapasztalatokra támaszkodva fejlődött −Hatékony implementáció a MOF API egy részére  2003: EMOF (Essential MOF) −A MOF 2 spec. Része, az OMG elfogadta −Az EMF jelentősen hozzájárult  2004 Service Data Objects (SDO) referencia impl. −IBM & BEA −Jelenleg JCP szabványosítás alatt (JSR-235)

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 30 ECore  Az EMF metamodellező nyelve −Meta-nyelv  A metamodellek platform függetlenek −További nyelv(ek) az implementáció-közeli modellezésre  Strukturális modellek definíciójára szolgál

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 31 ECore – miért?  Van már néhány hasonló nyelv…  Az EMF azonban támogatja az Ecore-alapú −Kódgenerálást −Import/export-ot más formátumokba −Jelentős ipari támogatás (IBM, …)  Az Ecore viszonylag szűk, csak az alapvető információkat rögzíti

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 32 ECore – kulcselemek  Ezek a minimálisan szükséges elemek az ecore megértéséhez

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 33 ECore – kulcselemek  Ezek a minimálisan szükséges elemek az ecore megértéséhez Egy típust jelképez tetszőleges számú ős tetszőleges számú asszociáció tetszőleges számú attribútum

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 34 ECore – kulcselemek  Ezek a minimálisan szükséges elemek az ecore megértéséhez Típusos attribútum

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 35 ECore – kulcselemek  Ezek a minimálisan szükséges elemek az ecore megértéséhez Egy egyirányú, bináris kapcsolatot (Asszociáció) jelképez opcionálisan mutathat az ellenkező irányú asszociációra definiálja a referált típust is

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 36 Teljes Ecore hierarchia

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 37 ECore implementáció

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 38 Hogyan használjuk az EMF-et?  A fenti ábra az egyszerűsített felhasználási módot szemlélteti

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 39 EMF eszközkészlet madártávlatból

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 40 EMF eszközkészlet madártávlatból Platform független modell A modellezési nyelvünk metamodelljét adja meg

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 41 EMF eszközkészlet madártávlatból Platform specifikus modell Az ecore modell leképzése az implementációs platformra

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 42 EMF eszközkészlet madártávlatból Kód sablonok az implementáció létrehozásához.

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 43 EMF eszközkészlet madártávlatból A generator modell és a sablonok alapján történik a kódgenerálás

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 44 EMF eszközkészlet madártávlatból Modell perzisztencia megvalósítás Java oszálykönyvtár

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 45 EMF eszközkészlet madártávlatból Modell manipuláció „üzleti logika” – elemek létrehozása, törlése, …

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 46 EMF eszközkészlet madártávlatból Automatikusan generált grafikus editor Fastruktúrájú megjelenítés

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 47 ECore modell létrehozása

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 48 ECore modell létrehozása UML osztálydiagramm Rational Rose EclipseUML a kimeneti fájlok átkonvertálásával

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 49 ECore modell létrehozása Az XML séma egy XML dokumentum metamodelljének tekinthető Ebből generálható ecore modell

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 50 ECore modell létrehozása Egy programnyelv-szerű mini nyelv ecore modellek leírására

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 51 ECore modell létrehozása Közvetlen megadás (ecore modell editor)

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 52 ECore modell létrehozása Speciálisan annotált (megjegyzésben) Java interfészek, melyek leírjék a modell szerkezetét

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 53 Példa: zenetár

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 54 Példa: zenetár – ecore XML 1 2 <ecore:EPackage 3 xmi:version="2.0" 4 xmlns:xmi=" 5 xmlns:ecore=" 6 name="music"> 7 Minden ecore fájl egy csomag definíciójával kezdődik. Ez fogja tartalmazni a többi modell-elemet

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 55 Egy osztály definíciója 1 2<eStructuralFeatures xsi:type="ecore:EAttribute" 3 name="name" lowerBound="1" 4 eType="ecore:EDataType 5 Ecore#//EString"/> 6 <eStructuralFeatures xsi:type="ecore:EAttribute" 7 name="notes" 8 eType="ecore:EDataType 9 Ecore#//EString"/> 10 Egy meta osztályt az eClassifiers elem és az xsi:type=„ecore:EClass” hivatkozás jelzi.

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 56 Egy asszociáció definíciója <eStructuralFeatures 4 xsi:type="ecore:EReference" 5 name="works" 6 upperBound="-1" 7 eType="#//Work" 8 containment="true"/> Az asszoicációt az ecore:EReference típus azonosítja.

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 57 Egy felsorolt típus definíciója <eClassifiers 2 xsi:type="ecore:EEnum" 3 name="MediaType"> Ez EEnum elemeit a típuson belül az eLiterals tagok alkotják.

Budapest University of Technology and Economics Fault-tolerant Systems Research Group 58 EMF – hogyan tovább?  A megadott ecore modellből forráskód generáltatható −Modell perzisztencia −Modell menedzsment −Modell editor  Minden komponens testre szabható… −Következő óra témája lesz