Considering Non-Functional Requirements in Model-Driven Development

Master thesis data

Title: Considering Non-Functional Requirements in Model-Driven Development 

Master Specialization: Information Systems
Topic Aproval date: 18/02/09
Orientation: research

Student: David Ameller
Thesis advisor(s): Xavier Franch
Contact: franch at

Thesis Description
Model-Driven Development (MDD) is a software development paradigm that has gained acceptance in the last years. Roughly speaking, the MDD process takes a Platform Independent Model (PIM) of the system and applies some Model-to-Model (M2M) transformations that generate a Platform Specific Model (PSM), adapted to the characteristics of the software architectural style chosen to implement the system. Last, Model-to-Text (M2T) transformations are used to generate the executable system, embracing several artefacts glued together: Java business classes, XML descriptor files, Oracle DB schemas, etc.

Most current MDD approaches only consider as starting PIM a UML-like description of the functional part of the system. But others also deal with Non-Functional Requirements (NFRs; e.g. performance, reliability, ease-of-use), which are crucial for the success of the system-to-be.

This Master Thesis will develop a systematic review analyzing the current approaches that tackle NFRs in the MDD process. This review will be complemented with the design of a questionnaire to be disseminated in IT companies and organizations about current impact of MDD and NFRs in software architectures. Also, some first steps towards a reference framework for dealing systematically with NFRs in the MDD process will be proposed.