Topic 12: Domain Specific Modeling Languages
Supervisor: Dennis Bokermann
Student: Guangli Zhang
To develop a Domain Specific Modeling Language (DSML) both knowledge about the domain and meta-modeling is necessary. Only few people have knowledge about both. A common approach to create a DSML is to adapt the UML, and thereby, allowing the usage of existing language constructs and tools. Nevertheless, this approach requires knowledge about UML meta-modeling. Sanchez-Cuadrado et al.  present an approach to induce a meta-model for a DSML from example models, which can be created by domain experts, even if they have little or none knowledge about meta-modeling. Afterwards, the induced meta-model can be refined by meta-modeling experts, and eventually, the meta-model can be compiled into a concrete technology (e.g. EMF).
The student should present the key aspects of the approach of Sanchez-Cuadrado et al.  and compare it to the approach of creating DSMLs by adapting the UML. Furthermore, the suitability and limitations of approach of Sanchez-Cuadrado et al. should be analyzed. General information on Domain Specific Languages, which mostly should also be applicable to DSML, is provided in  and some advantages/disadvantages of using UML to create DSMLs can be found in .
 Sanchez-Cuadrado, Jesus and De Lara, Juan and Guerra, Esther: Bottom-up meta-modelling: an interactive approach. In Proceedings of the 15th international conference on Model Driven Engineering Languages and Systems, MODELS'12, 2012
 Mernik, Marjan and Heering, Jan and Sloane, Anthony M.: When and how to develop domain-specific languages. In ACM Comput. Surv., 2005
 Selic, Bran: A Systematic Approach to Domain-Specific Language Design Using UML. In Object and Component-Oriented Real-Time Distributed Computing, 2007. ISORC '07
Topic 13: A comparison of service discovery and composition approaches based on behavioral model matching
Supervisor: Zille Huma
With the widespread use of modeling techniques in software engineering, different approaches in service-oriented computing (SOC) domain are also relying on these techniques at different stages of a service- oriented system development. An important aspect of this development process is the automatic service discovery and the composition/integration of the discovered services into a coherent system. For this purpose, different aspect, such as, the structure, behavior, and quality attributes of the requested/offered services can be considered.
The aim of this seminar topic is to particularly focus those approaches that focus on the behavioral matching of the requested and offered services and utilize the behavioral modeling techniques for this purpose. The comparison of these approaches can be based on different factors, such as, the considered behavioral aspects of the requested and offered services, the behavioral models used for this purpose, the matching techniques used to match the behavioral models, etc.
 Spanoudaki, G., Zisman, A.: Discovering Services during Service-Based System Design Using UML. IEEE Trans. on Softw. Eng. 36(3), 371–389 (2010)
 Huma, Z., Gerth, C., Engels, G., Juwig, O.: Automated Service Composition for On-the-Fly SOAs. ICSOC'13, LNCS, vol. 8274, pp. 524-532. Springer,Heidelberg (2013)
 Srinivasmurthy, V. , Manvi, S., Gullapalli, R., Sathyamurthy, D., Reddy, N., Dattatreya, H., Singhal, S., Pruyne, J.: Web2Exchange: A Model-Based Service Transformation and Integration Environment. SCC’09, pp. 324–331. IEEE Computer Society (2009)
 Autili M., Di Ruscio D., Di Salle A., Inverardi P., Tivoli M.: A Model-Based Synthesis Process for Choreography Realizability Enforcement. Fundamental Approaches to Software Engineering, LNCS, vol. 7793, pp. 37-52. Springer,Heidelberg (2013)
Topic 14: A Comparison of Design Techniques for Core Languages
Supervisor: Svetlana Arifulina
Student: Eugen Traut
Nowadays, a large number of domain-specific modeling languages exist. Therefore, domain experts have to work with models provided in different language dialects. For that, domain experts have to learn many specification languages and, in particular, to keep the models synchronized in different notations resulting in high effort, errors and inconsistencies. The idea of a core language claims to overcome the lack of a standard language in a certain domain. Core languages allow interoperability of models described in different languages and the interoperability of the corresponding language infrastructure. Depending on a domain, core languages have different purposes and follow different construction principles.
Investigate and compare different design techniques for core languages. Consider their purpose, their construction principles, and their language infrastructure.
 Ivano Malavolta, Henry Muccini, and Patrizio Pelliccione: "DUALLY: A framework for Architectural Languages and Tools Interoperability”. ASE, pages 483-484. IEEE, (2008)
 Sven Overhage "UnSCom: A Standardized Framework for the Specification of Software Components”. Net.ObjectDays, Vol. 3263 of Lecture Notes in Computer Science, pages 169-184. Springer, (2004)
Topic 15: Dynamic Meta Modeling and Rule Overriding
Supervisor: Stefan Heindorf
Student: Siby Thomas
Dynamic Meta Modeling (DMM) is a visual semantics specification technique targeted at languages based on a metamodel. A DMM specification consists of a runtime metamodel and operational rules which describe how instances of the runtime metamodel change over time. A known deficiency of the DMM approach is that it does not support the refinement of a DMM specification, e.g., in the case of defining the semantics for a refined and extended domain-specific language (DSL). Up to now, DMM specifications could only be reused by adding or removing DMM rules.
In this paper, DMM is enhanced such that DMM rules can override other DMM rules, similar to a method being overridden in a subclass, and it is shown how rule overriding can be realized with the graph transformation tool GROOVE. It is argued that rule overriding does not only have positive impact on reusability, but also improves the intuitive understandability of DMM semantics specifications.
Give an overview of the DMM approach and how DMM can be enhanced by rule overriding.
 Christian Soltenborn, Gregor Engels: Using Rule Overriding to Improve Reusability and Understandability of Dynamic Meta Modeling Specifications. In Journal of Visual Languages and Computing, vol. 22, no. 3, pp. 233-250. Elsevier (Amsterdam, The Netherlands) (2011)