1 / 19

Projektgruppe „Semantics Workbench“

Projektgruppe „Semantics Workbench“. Christian Soltenborn FG Engels 13. Juli 2009. Software Engineering: Ausblick. Bisher: universelle Sprachen In Zukunft: Domain Specific Languages (DSLs). Beispiel: Visuelle DSL. Definition einer DSL. Dynamic Meta Modeling. DMM specification. Runtime

lindsey
Download Presentation

Projektgruppe „Semantics Workbench“

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Projektgruppe „Semantics Workbench“ Christian Soltenborn FG Engels 13. Juli 2009

  2. Software Engineering: Ausblick • Bisher: universelle Sprachen • In Zukunft: Domain Specific Languages (DSLs) Christian Soltenborn: "Semantics Workbench"

  3. Beispiel: Visuelle DSL Christian Soltenborn: "Semantics Workbench"

  4. Definition einer DSL Christian Soltenborn: "Semantics Workbench"

  5. Dynamic Meta Modeling Christian Soltenborn: "Semantics Workbench"

  6. DMM specification Runtime Metamodel Graph Transformation Rules Mapping typed over DMM: Architektur Metamodel Christian Soltenborn: "Semantics Workbench"

  7. UML Activities: Metamodel ControlNode DecisionNode ActivityNode nodes ObjectNode Activity source target ActivityEdge edges Action Christian Soltenborn: "Semantics Workbench"

  8. DMM specification Runtime Metamodel Graph Transformation Rules Mapping typed over DMM: Architektur Metamodel Christian Soltenborn: "Semantics Workbench"

  9. ObjectNode ObjectNode BufferNode Action Action carries carries belongsTo Offer Token tokens executes ActivityExecution Semantic domain Metamodel ControlNode DecisionNode ActivityNode nodes Activity source target ActivityEdge edges offers Tokens cannot “rest” at control nodes. A source node can onlyoffer tokens to its outgoing edges An activity execution represents an execution of the activity. Semantics is based on token flow Christian Soltenborn: "Semantics Workbench"

  10. DMM specification Runtime Metamodel Graph Transformation Rules Mapping typed over DMM: Architektur Metamodel Christian Soltenborn: "Semantics Workbench"

  11. DMM-Regeln DMM-Regeln sind im Prinzip Graphtransforma-tionsregeln (GTRs). Unterschiede: • Sehen im wesentlichen wie UML Kommunika-tionsdiagramme aus. • Vertrautes Aussehen erleichtert Arbeit mit DMM • DMM-Regeln können andere DMM-Regeln aufrufen • Bigstep-Regeln verhalten sich wie normale GTRs • Smallstep-Regeln können nur angewandt werden, wenn sie aufgerufen wurden • Premise-Regeln schränken Anwendtbarkeit von aufrufenden Regeln ein Christian Soltenborn: "Semantics Workbench"

  12. DMM-Regel: DecisionNode Semantik der Regel: Eingehende Offers werden zu den ausgehenden Kanten weitergeleitet decisionNode.flow()* :Offer carries {new} carries {destroyed} target source :ActivityEdge decisionNode:DecisionNode :ActivityEdge Christian Soltenborn: "Semantics Workbench"

  13. :Token :Offer decisionNode.flow()* carries source :ActivityEdge B:Action target :Offer A:Action :ActivityEdge :DecisionNode carries {new} :ActivityEdge C:Action source carries {destroyed} target source :ActivityEdge decisionNode:DecisionNode :ActivityEdge B B A A C C DMM-Regel: Anwendung base :Token :Offer carries base carries source :ActivityEdge B:Action target A:Action :ActivityEdge :DecisionNode :ActivityEdge C:Action source Christian Soltenborn: "Semantics Workbench"

  14. Graph Transformation Rules typed over DMM und Transitionssysteme DMM specification Metamodel Runtime Metamodel Mapping Transition system instance of … s1 s3 action.start() decisionNode.flow() Model s0 decisionNode.flow() … s2 action.start() s4 Transitionssystem: komplettes Verhalten des Modells! Christian Soltenborn: "Semantics Workbench"

  15. DMM and Groove • Bisher kein DMM-Interpreter • Stattdessen: Abbil-den in herkömmli-chen Formalismus, Tools umsonst • Unsere Wahl: GROOVE (= GRaphs for Object-Oriented VErification) Christian Soltenborn: "Semantics Workbench"

  16. PG: Ziel „Semantics Workbench“ • Eclipse-basierte IDE zur Semantikspezifikation • Erstellen von DMM-Semantiken • Verifizieren von Modellinstanzen • Visuelles Ausführen/Debuggen • Vorhandene Werk-zeuge integrieren Christian Soltenborn: "Semantics Workbench"

  17. Christian Soltenborn: "Semantics Workbench"

  18. SCRUM PG: Ablauf • Was ihr schon können solltet: • Was ihr lernt: Christian Soltenborn: "Semantics Workbench"

  19. Kontakt Wenn ihr Fragen und/oder Interesse habt, setzt euch mit mir in Verbindung! christian@uni-paderborn.de Christian Soltenborn: "Semantics Workbench"

More Related