Go to main contentGo to main menu'>Formulario de contacto'>La UAM

Escuela Politécnica SuperiorLogo EPS

Print >< Back

Upcoming Events

Seminario "How to combine Separation of Concerns and Model-Driven Engineering: The Case for Concern-Specific Languages"

Jorg Kienzle
Home institution
School of Computer Science, McGill University, Montreal (Canada)
Sala de Grados A (A-120), Escuela Politécnica Superior


Concern-oriented Reuse (CORE) is a software development paradigm that my team has been developing over the last 10 years aimed at maximizing reuse. Techniques from model-driven engineering (MDE), software product line engineering (SPL) and software composition allow our units of reuse called “concerns" to encapsulate a variety of solutions (models and code) to recurring software development problems in a generic way. Reusing the encapsulated solutions is streamlined through interfaces: a) the variation interface, which exposes the variants offered by the concern and allows the user to reason about the impact of selecting a solution on high-level goals and system properties, b) the customization interface, which designates the partial, generic elements of a solution which need to be adapted to the specific reuse context in order to be usable, and c) the usage interface, which allows the user to access the functionality offered by the concern. In this talk I will explain the main idea and concepts of CORE, give a quick demo of the CORE modelling tool, and then present in more detail some of our recent work on concern-specific modelling languages (CSMLs), i.e., domain-specific language (DSL) specifically tailored for streamlining the expression and reuse of a concern. A CSML avoids exposing the user to accidental complexity when the essence of a concern does not align well with what general purpose languages can readily express. I will demonstrate the usefulness of CSMLs by showing how we designed a concern called RESTify that makes it easy to add a REST interface to an existing application. I will explain how CSMLs integrate with the rest of the MDE tool chain (model transformations to GPML models, homogeneous model composition, code generation), and demonstrate the use of RESTify in the CORE modelling tool.


Curriculum ponente  

Jörg Kienzle is a full professor at the School of Computer Science at McGill University in Montreal, Canada, where he is leading the Software Composition and Reuse Laboratory (SCORE). He currently also holds a position as contracted researcher at the Institute for Software Engineering and Software Technology of the University of Málaga, Spain. He obtained his Ph.D. and engineering diploma from the Swiss Federal Institute of Technology in Lausanne (EPFL). His current research interests include model-driven engineering, concern-oriented software development, reuse, software development methods in general, aspect-orientation, distributed systems and fault tolerance.

Escuela Politécnica Superior | Universidad Autónoma de Madrid | Francisco Tomás y Valiente, 11 | 28049 Madrid | Tel.: +34 91 497 2222 | e-mail: informacion.eps@uam.es