Ailar Zafranchi

Thesis Title: Enhancing Model-Driven Methods for Composition-Based Software Development                        


Using models to design systems has always had a vital role in engineering. Model Driven Development (MDD), as used in software engineering, uses models, modeling methods, and model transformation techniques as bases for automating the software development process. To this aim, MDD focuses on models and automatic model transformation to provide techniques for designing, understanding and maintaining models more easily. The Model Driven Architecture (MDA) was proposed by Object Management Group as a standard framework for MDD. In this framework, models are defined at different levels of abstraction conforming to specific standards. MDA separates the specification of system functionality from the specification of its implementation in order to achieve MDD goals at an architectural level.
On the other hand, Composition-Based Development (spanning Component-Based Development and Service-Oriented Development) has been recognized as a promising approach to software engineering. In Composition-Based Development, systems are modeled as sets of configurable parts (components or services). The main goal of this approach is to enhance flexibility and reusability.
As MDD methods can be used in any software development approach which utilizes modeling, they have also been used in Composition-Based Development. The modeling techniques, standards, model transformation methods, and different abstraction levels proposed by MDD/MDA can be of utmost use in Composition-Based Development; for instance, they can facilitate and enhance the transformation of problem domain models to sets of reusable components or configurable services, validation of components or existing services, and design of new components or services.
Based on this notion, the main objective of this research is to enhance model-driven methods for Composition-Based Software Development. To this aim, we will first survey the MDD methods that are currently used in composition-based software development. We will then analyze the methods identified to determine their shortcomings. Next, we will survey recent research on MDD in order to identify new MDD methods – especially new model transformation techniques – that can be useful in Composition-Based Development. We will then propose an approach for enhancing MDD practices in Composition-Based Development by using recently-developed MDD methods and techniques. The proposed approach will be validated through detailed criteria-based comparison with existing methods.    

(Progress Chart)

Contact Information

   Email: zafranchi [at] ce [dot] sharif [dot] edu