Logo image
QUANTIFYING THE EFFECTS OF ASPECTUAL DECOMPOSITIONS ON DESIGN BY CONTRACT MODULARIZATION: A MAINTENANCE STUDY
Journal article   Open access   Peer reviewed

QUANTIFYING THE EFFECTS OF ASPECTUAL DECOMPOSITIONS ON DESIGN BY CONTRACT MODULARIZATION: A MAINTENANCE STUDY

HENRIQUE REBÊLO, RICARDO LIMA, UIRÁ KULESZA, MÁRCIO RIBEIRO, YUANFANG CAI, ROBERTA COELHO, CLÁUDIO SANT'ANNA and ALEXANDRE MOTA
International journal of software engineering and knowledge engineering, v 23(7), pp 913-941
Sep 2013
url
https://doi.org/10.1142/s0218194013500265View
Published, Version of Record (VoR)Open Access (License Unspecified) Open

Abstract

aspect-oriented programming refactoring maintenance study Design by Contract
Although it is assumed that the implementation of design by contract is better modularized by means of aspect-oriented (AO) programming, there is no empirical evidence on the effectiveness of AO for modularizing non-trivial design by contract code in realistic development scenarios. This paper reports a quantitative and qualitative case study that evolves a real-life application to assess various facets of the adequacy of aspects for modularizing the design by contract concern. Our evaluation focused upon a number of system changes that are typically performed during software maintenance tasks. The study was driven by an analysis of fundamental modularity attributes, such as separation of concerns, coupling, conciseness, and change propagation. We have found that AO techniques improved separation of concerns and the design stability between the design by contract code and base application code throughout the development scenarios. However, contradicting the general intuition, the AO versions of the system did not present significant gains regarding four classical size metrics we employed.

Metrics

3 Record Views
5 citations in Scopus

Details

InCites Highlights

Data related to this publication, from InCites Benchmarking & Analytics tool:

Collaboration types
Domestic collaboration
International collaboration
Web of Science research areas
Computer Science, Artificial Intelligence
Computer Science, Software Engineering
Engineering, Electrical & Electronic
Logo image