Navigation Title

Search Title
From Web 2.0 Wiki, Proposals::ARENA

ARENA: AsseRting thE quality of  modeling  laNguAges

(Remark: This project can be supported by a FCT Fellowship)


The emerging Model-Driven Software Development (MDD) techniques and tools are seen as an enabling methodology and technology for dealing with the software complexity by breaking it down into new levels of abstraction and indirection. MDD is grounded on the notion of providing explicit Models (commonly called first class artifacts) of every relevant concept in the development process, by means of using appropriate abstractions. These explicit Models are further translated into lower abstraction levels. This approach has special impact in dealing with the complexity of large scale problems, while also bringing with it several possibilities already demonstrated by the research community in rapid prototyping, simulation, validation and verification techniques.

In direct relation with MDD, we have (Modeling) Languages to be able to express the models with adequate notations. Some, called General purpose, cover a wide spectrum of applications (like UML, SysUML,...), while others, called Domain-Specific (Modeling) Languages (DSLs), are suited for particular domain application needs.

However intuitive the idea of Domain Specific Languages might be, in order to be widely adopted, we need to have systematic and reproducible approaches and tools to support the Software Language Engineer (SLE) [M. Mernik, J. Heering, and A. M. Sloane. When and how to develop domainspecific languages. ACM Computing Surveys, 37(4):316–344, 2005.] during the design and development phase of Languages, and to have means to assert their Quality and success. This means that we need a rigorous framework to evaluate: (1) Software Languages during and after their development; and (2) the instance models themselves.

Define and discuss a rigorous quality framework to evaluate: Software Languages (mainly DSLs) as well as the Models (i.e., the instance models) themselves.

With this project the student should define and discuss a quality framework to evaluate Domain-Specific (Modeling) Languages, somehow considering the following issues:

  • Quality criteria to evaluate the languages;

  • Best practices and good language design patterns;

Based on this quality framework, the student should evaluate her own proposal by applying it to assess different Modeling Languages, such as for example: DEMO (for Enterprise Architectures), CML-ML (for CMS-based applications), XIS (for Interactive Application), or even UML.