department of informatics

MDA - Model Driven Architecture: Improving Software Development Productivity in Large-Scale Enterprise Applications

Master Thesis in Informatics 2008

Pedro de Almeida

Professor : Prof. Jacques Pasquier-Rocha, Assistant : Dr. Patrik Fuhrer
December 2008

Abstract

Software development productivity has always been one of the most important centers of interest in the Software Engineering domain. After Object Oriented Programming (OOP), Designs Patterns and Model Driven Development (MDD), a new vision proposes to enhance interoperability, portability and productivity of computing systems by means of abstract models. This is the promise of the Model Driven Architecture (MDA) strived by the Object Management Group (OMG).
This thesis focuses on the MDA approach by highlighting the fundamental aspects of this development process. Particularly, it introduces the notion of model and the standards behind the MDA scene. These concepts are first applied in an introductory example, following the AndroMDA methodology to demonstrate how logic implementation can be reduced to the minimum when core business functionality is addressed during the modeling phase. In order to evaluate the benefits of this methodology, lessons learned are then confronted to a concrete MDA based application, namely SIEMS. This Electronic Health Record (EHR) system, which has been developed during 4 years by Tecost SA, a mid-sized software and consulting company established in Fribourg (CH), stands as a perfect example of a MDA integration in a large-scale enterprise solution and confirms that MDA principles are decisive in software development productivity.
Finally, this work exposes a critical point of view about the MDA approach, from development processes to productivity and performance, and suggests some directions that should help the reader on realizing an MDA based application.

Remark

This master thesis is the fruit of a collaboration between Tecost SA at Fribourg, a consulting, development and integration company and the Department of Informatics of the University of Fribourg. Mr de Almeida is a part-time collaborator (50%) of this company and works on the software architecture of SIEMS (Système d'Information pour Etablissements Médicalisés ou de Soins). This project is the context of this master thesis.

Tecost SA

Documentation