Aspect Oriented Re-engineering of Legacy Software Using Cross-Cutting Concern Characterization and Significant Code Smells Detection

Citations

WEB OF SCIENCE

4
Citations

SCOPUS

3

초록

Although object-oriented programming (OOP) methodologies immensely promote reusable and well-factored decomposition of complex source code, legacy software systems often show symptoms of deteriorating design over time due to lack of maintenance. Software systems may have different business and application contexts, but most of these systems require similar maintenance mechanism of understanding, analysis and transformation. As a consequence, intensive re-engineering efforts based on the model driven approach can be effective ensuring that best practices are followed during maintenance and eventually reducing the development cost. In this paper, we suggest detailed framework of re-engineering which includes: (i) rigorous and automated source code analysis technique for identification, characterization and prioritization of most prominent and threatening design flaws in legacy software, (ii) migration of existing the code to aspect-oriented programming (AOP) code by exploiting current state of art for aspect mining mechanism and incorporating behavioral knowledge of cross-cutting concerns. To exemplify how the approach works a case study has been conducted to experimentally validate the idea and analyze the effect of process on specific software quality spectrum. An explicit analysis of prevalent work on the subject and their critical reviews are also presented to further enhance the recognition of proposed re-engineering framework.

키워드

Aspect-oriented programming; code smells; object-oriented programming; characterization of cross-cutting concerns; re-factoring; formal concept analysis; MAINTENANCE; DESIGN; METRICS; COMPLEXITY; IMPLEMENTATION; INTERFACES; PATTERNS; PROJECTS; QUALITY; HELP
제목
Aspect Oriented Re-engineering of Legacy Software Using Cross-Cutting Concern Characterization and Significant Code Smells Detection
저자
Shaikh, Mohsin; Lee, Chan Gun
DOI
10.1142/S0218194016500212
발행일
2016-04
유형
Article
저널명
International Journal of Software Engineering and Knowledge Engineering
권
26
호
3
페이지
513 ~ 536