Using abstraction in MDA-based reverse engineering for creative evolution

Jing, D, Yang, H and Hakeem, H (2014) 'Using abstraction in MDA-based reverse engineering for creative evolution.' In: Cao, Y and Luo, X, eds. 20th International Conference on Automation and Computing (ICAC). IEEE Computer Society, Los Alamitos, pp. 67-72. ISBN 9781909522022

Official URL:


Creativity becomes an ever important feature in software development nowadays as software application in various domains is on an ever rapid growth. It leads to changes on system requirements, hoping to improve systems with attractive creativity features. Consequently, creative computing is aroused as an emerging research field in software engineering. Currently, there are researches working on approaches and processes to develop creative software from scratch. However, evolving existing systems can achieve the same purpose, though it is hard to add creativity features to legacy systems by traditional software evolution approaches. Obviously, based on experiences over decades from software community, development from scratch might cause a waste in terms of resources. To solve this problem, this paper proposes a Model Driven Architecture based reverse engineering method for creative evolution. Abstraction techniques are explored, classified, designed and applied in this proposed approach. Meanwhile, details and roles of abstraction techniques were developed for each step. Also, an e-learning system is chosen as a case study to illustrate, validate and evaluate the proposed method. Overall, our work aims to contribute to software evolution methodology and its application creatively.

Item Type: Book Chapter or Section
Keywords: Software, Reverse engineering, Computer integrated manufacturing, Object oriented modeling, Aging, Computer architecture, Computational modeling
Divisions: Bath School of Design
Identification Number:
Date Deposited: 10 Apr 2015 16:23
Last Modified: 05 Jan 2022 16:07
URI / Page ID:
Request a change to this item or report an issue Request a change to this item or report an issue
Update item (repository staff only) Update item (repository staff only)