Composing Domain-Specific Languages for Wide-Scope Software Engineering Applications (original) (raw)
Related papers
On the Combination of Domain Specific Modeling Languages
Lecture Notes in Computer Science, 2010
Domain Specific Modeling Languages (DSMLs) are essential elements in Model-based Engineering. Each DSML allows capturing certain properties of the system, while abstracting other properties away. Nowadays DSMLs are mostly used in silos to solve specific problems. However, there are many occasions when multiple DSMLs need to be combined to design systems in a modular way. In this paper we discuss some scenarios of use and several mechanisms for DSML combination. We propose a general framework for combining DSMLs that subsumes them, based on the concept of viewpoint unification, and its realization using model-driven techniques.
An integrated view on modeling with multiple domain-specific languages
2009
The use of domain-specific languages (DSLs) has been shown to raise the level of abstraction, increase productivity and ease maintenance and evolution in software development. Development of and tooling for a single DSL is well-studied, but surprisingly little is known about the interplay of different DSLs in a single system. Multiple DSLs are required when moving from toy examples to real enterprise applications. Method and tool support is needed if multiple DSL development is to succeed. In this paper, we propose a novel method for development with multiple DSLs which fills this gap. The method specifically tackles the problem of overlapping concerns between different DSLs. It has three steps: 1) Identification, 2) Specification, and 3) Application. We explain these steps using a suite of prototype tools and documented case studies.
Model-driven engineering with domain-specific meta-modelling languages
Software & Systems Modeling, 2013
Domain-specific modelling languages are normally defined through general-purpose metamodelling languages like the MOF. While this is satisfactory for many Model-Driven Engineering projects, several researchers have identified the need for domainspecific meta-modelling (DSMM) languages. These provide customised domain-specific meta-modelling primitives aimed at the definition of modelling languages for a specific domain, as well as the construction of metamodel families. Unfortunately, current approaches to DSMM rely on ad-hoc methods which add unnecessary complexity to the realization of DSMM in practice.
Composition of Domain Specific Modeling Languages - An Exploratory Study
Proceedings of the 1st International Conference on Model-Driven Engineering and Software Development
This paper presents an exploratory study in the context of composition of domain-specific modeling languages (DSMLs). It aims evaluating a composition method using Ecore-based DSMLs based on xText tool. The study was performed applying the method to modelling a composition of DSMLs from the domain of controlled experiments in software engineering. The study consists of four different DSMLs, whose ultimate goal is to generate executable workflows for each experiment subject. The study results present: (i) new adaptations that can be incorporated into the method in order to enable its application to the xText context; and (ii) a brief comparison of the method application using xText and XML based approaches.
Model Driven Development of Software Product Lines
6th International Conference on the Quality of Information and Communications Technology (QUATIC 2007), 2007
Software product lines and related approaches, like software factories, are starting to capture the attention of the industry practitioners. Nevertheless, their adoption outside the research community and big companies is still very restricted. We believe that model-driven approaches, like OMG's MDA, with proper tool support, can bring the advantages of product lines to a broader audience. In this thesis we propose an approach to achieve this goal in which modeling is inspired by UML and automation is based on metamodeling and transformation languages using publicly available tools.
Creating Domain-Specific Modeling Languages with OPM/D - A Meta-modeling approach
ICSOFT
Domain-specific languages and model-driven development are two promising approaches for tackling the complexity of software systems development. However creating domain-specific modeling languages is a complex task that makes the definition of new languages difficult. To alleviate this difficulty, we developed OPM/D, a visual meta-modeling language for the definition of domain-specific modeling languages. Languages in OPM/D are defined via a static structural meta-model of the language and a set of validation rules applied at edit time. The language editor is created on-the-fly through language interpretation, minimizing the time between language definition and its use. Our approach has been applied to define a subset of the OPM modeling language, and is developed using the Eclipse platform and technologies.
Creating Domain-Specific Modeling Languages with OPM/D
Domain-specific languages and model-driven development are two promising approaches for tackling the complexity of software systems development. However, creating domain-specific modeling languages is a complex and lengthy task which makes the creation of DSMLs only feasible in large and complex projects. To alleviate this difficulty, we developed OPM/D, a visual meta-modeling language for the definition of domainspecific modeling languages. Languages in OPM/D are defined via a static structural meta-model of the language and a set of validation rules that define the non-structural constraints of the language. The language editor is created on-the-fly through interpretation of the static structure and validation rules, minimizing the time between language definition and its use. Our approach has been applied to define a subset of the OPM modeling language, and a prototype tools is being developed using the Eclipse platform and technologies.
A Lightweight Approach for Domain-Specific Modeling Languages Design
2009 35th Euromicro Conference on Software Engineering and Advanced Applications, 2009
Off-the-shelves general purpose modeling languages cannot obviously cover the whole range of needs that can be encountered in current systems design. Therefore, putting efficiently Model-Driven Engineering into practice involves designing specific modeling languages. The goal is to cover in a more suitable manner a particular application domain (e.g. automotive) or specific concerns (e.g. hardware modeling) or even to focus on a given class of practitioners. In this respect, two design approaches are generally opposed which respectively propose to define domain-specific modeling languages from scratch or to customize an existing general-purpose language. This paper focuses on the latter approach and claims that UML profiles do provide handy and powerful mechanisms to design domain-specific modeling languages but are penalized by lacks of methodological guidelines and tool support. To cope with these lacks, a profile design approach is introduced, which includes a methodological framework to structure profiles design process and tool support to partly automate this process.
Metamodels composition strategy for the model driven engineering context
In Model Driven Engineering (MDE) approaches, metamodelers usually need to create a metamodel based on existing metamodels, where each one abstracts a specific domain, in order to abstract a new domain, which includes elements that could be taken from the other already created metamodels. This kind of constructions allows getting advantage of the knowledge obtained in the construction of the previous built metamodels. This paper presents a proposal to solve metamodel composition through a Domain Specific Language (DSL). This DSL is used by metamodelers, who are the people that know the domains abstracted by the different metamodels and know how to combine those metamodels in order to generate the new one. Moreover, a simple case study is presented so as to demonstrate the low level of complexity of the DSL.