Home // ICSEA 2015, The Tenth International Conference on Software Engineering Advances // View article
Recovering Lost Software Design with the Help of Aspect-based Abstractions
Authors:
Kiev Gama
Didier Donsez
Keywords: Software layers; Software reengineering; Aspect-oriented programming.
Abstract:
In this paper, we propose an unconventional usage of aspect-oriented programming, presenting and discussing a novel approach for recovering layered software design. It consists of a reengineering pattern based on aspect abstractions that work as a strategy for recovering software design. By using our approach it is possible to employ general purpose aspects that represent software layers. This is useful for capturing such design in systems where a layered architecture exists but was not documented or where it has been inconsistently translated from design to code. The pattern is a generalization of our initial validation performed in a case study on the Open Service Gateway Initiative (OSGi) service platform. We could verify that its software layers are well defined in the specification and design, however when analyzing the actual Application Programming Interface (API), such layers are completely scattered over interfaces that inconsistently accumulate roles from different layers. By extracting the layered design into separate aspects, we were able to better understand the code, as well as explicitly identifying the affected layers when applying dependability crosscutting concerns to a concrete aspect solution on top of three different implementations of the OSGi platform.
Pages: 477 to 483
Copyright: Copyright (c) IARIA, 2015
Publication date: November 15, 2015
Published in: conference
ISSN: 2308-4235
ISBN: 978-1-61208-438-1
Location: Barcelona, Spain
Dates: from November 15, 2015 to November 20, 2015