Behavioral Interfaces for Executable DSLs

Activity: Talk or presentationInvited talkscience-to-science

Description

A large amount of domain-specific languages (DSLs) are used to represent behavioral aspects of systems in the form of behavioral models [BCW17]. Executable domain-specific languages (xDSLs) enable the execution of behavioral models [Ma13]. While an executionis mostly driven by the model’s content (e.g., control structures, conditionals, transitions, method calls), many use cases require interacting with the running model, such as simulating scenarios in an automated or interactive way or coupling system models with environment models. The management of these interactions is usually hard-coded into the semantics ofxDSLs, which prevents its reuse for other xDSLs and the provision of generic interaction tools. To tackle these issues, we propose a novel meta language for complementing the definition of xDSLs with explicit behavioral interfaces to enable external tools to interact with executable models in a unified way. A behavioral interface defines a set of events specifying how external tools can interact with models that conform to xDSLs implementing the interface. Additionally, we define two types of relationships involving behavioral interfaces the implementation relationship and the subtyping relationship. An implementation relationship ties a behavioral interface to a given operational semantics implementation. Subtyping relationships allow to build event abstraction hierarchies, indicating that events from one interface can be abstracted or refined as events from another interface.
Period25 Feb 2020
Event titleSoftware Engineering Tagung, SE 2020, 24-28. Februar, 2020, Innsbruck, Österreich.
Event typeConference
LocationGermanyShow on map

Fields of science

  • 202017 Embedded systems
  • 102006 Computer supported cooperative work (CSCW)
  • 201132 Computational engineering
  • 502032 Quality management
  • 503015 Subject didactics of technical sciences
  • 502050 Business informatics
  • 207409 Navigation systems
  • 102020 Medical informatics
  • 102022 Software development
  • 102002 Augmented reality
  • 201305 Traffic engineering
  • 102034 Cyber-physical systems
  • 102015 Information systems

JKU Focus areas

  • Digital Transformation