Abstract

Model transformation by example is a novel approach in model-driven software engineering. The rationale behind the approach is to derive transformation rules from an initial set of interrelated source and target models; e.g., requirements analysis and software design models. The derived rules describe different transformation steps in a purely declarative way. Inductive Logic Programming utilizes the power of machine learning and the capability of logic programming to induce valid hypotheses from given examples. In this paper, we use Inductive Logic Programming to derive transformation rules from given examples of analysis-design pairs. As a proof concept, we applied the approach to two major software design tasks: class packaging and introducing Facade design. Various analysis-design model pairs collected from different sources were used as case studies. The resultant performance measures show that the approach is promising.

Highlights

  • The problem of transforming the requirement analysis models into software design models can be viewed as a model transformation problem

  • The goal of this work is to facilitate the transformation from the analysis models toward the software design models by reusing previous experience

  • When three classes A, B and C have association relations, such that class A is linked to class B, and Class C, Class B is linked to Class C, and the three classes can be grouped in one package

Read more

Summary

Introduction

The problem of transforming the requirement analysis models into software design models can be viewed as a model transformation problem. The approach of learning a model transformation from provided examples is referred to as Model Transformation by Example (MTBE) [1] The examples, in this context, represent pairs of the transformation requirements/design models. Model Driven Development (MDD) considers a sequence of several kinds of models as the primary artifacts of the development process as they contain the needed information that supports its different phases. Those models may be derived from each other via automated transformation. When three classes A, B and C have association relations, such that class A is linked to class B, and Class C, Class B is linked to Class C, and the three classes can be grouped in one package.

Objectives
Methods
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call