Proceedings ArticleDOI
An exploratory study of fault-proneness in evolving aspect-oriented programs
Fabiano Cutigi Ferrari,Rachel Burrows,Otávio Augusto Lazzarini Lemos,Alessandro Garcia,Eduardo Figueiredo,Nelio Cacho,Frederico Lopes,Nathalia Temudo,Liana Silva,Sergio Soares,Awais Rashid,Paulo Cesar Masiero,Thais Batista,José Carlos Maldonado +13 more
- Vol. 1, pp 65-74
TLDR
The results show that 40% of reported faults were due to the lack of awareness among base code and aspects, which contradicts the common intuition stating that the use of pointcut languages is the main source of faults in AOP.Abstract:
This paper presents the results of an exploratory study on the fault-proneness of aspect-oriented programs. We analysed the faults collected from three evolving aspect-oriented systems, all from different application domains. The analysis develops from two different angles. Firstly, we measured the impact of the obliviousness property on the fault-proneness of the evaluated systems. The results show that 40% of reported faults were due to the lack of awareness among base code and aspects. The second analysis regarded the fault-proneness of the main aspect-oriented programming (AOP) mechanisms, namely pointcuts, advices and intertype declarations. The results indicate that these mechanisms present similar fault-proneness when we consider both the overall system and concern-specific implementations. Our findings are reinforced by means of statistical tests. In general, this result contradicts the common intuition stating that the use of pointcut languages is the main source of faults in AOP.read more
Citations
More filters
Journal ArticleDOI
Source code metrics
Alberto S. Nuez-Varela,Hctor G. Prez-Gonzalez,Francisco E. Martnez-Perez,Carlos Soubervielle-Montalvo +3 more
TL;DR: There is a current need for more studies on aspect and feature oriented metrics, especially for the current interest in programming concerns and software product lines.
Journal ArticleDOI
Systems Engineering for Industrial Cyber–Physical Systems Using Aspects
TL;DR: This paper shows how to use aspect-oriented (AO) modeling techniques in MBD as a systematic way to segregate domains of expertise and cross-cutting concerns within the model to improve understanding of a system.
Journal ArticleDOI
Components meet aspects: Assessing design stability of a software product line
TL;DR: The combination of aspects and components supports the design of high cohesive and loosely coupled PLAs and contributes to improve modularity by untangling feature implementation.
Evidence-based programming language design : a philosophical and methodological exploration
TL;DR: The content of evidence-based programming design (EB-PLD) is explored, the extent of evidence potentially useful for EB- PLD is mapped, and the appropriateness of Cohen’s kappa for evaluating coder agreement in a secondary study is evaluated.
Proceedings ArticleDOI
An empirical evaluation of coupling metrics on aspect-oriented programs
TL;DR: The results show that coupling metrics, which are not directives of object-oriented metrics, tended to be superior indicators of fault-proneness in aspect-oriented (AO) systems.
References
More filters
Book
A metrics suite for object oriented design
TL;DR: This research addresses the needs for software measures in object-orientation design through the development and implementation of a new suite of metrics for OO design, and suggests ways in which managers may use these metrics for process improvement.
Journal ArticleDOI
Aspect-oriented programming
TL;DR: This work proposes to use aspect-orientation to automate the calculation of statistics for database optimization and shows how nicely the update functionality can be modularized in an aspect and how easy it is to specify the exact places and the time when statistics updates should be performed to speed up complex queries.
Book
Experimentation in Software Engineering: An Introduction
TL;DR: The purpose of Experimentation in Software Engineering: An Introduction is to introduce students, teachers, researchers, and practitioners to experimentation and experimental evaluation with a focus on software engineering, and to provide guidelines for performing experiments evaluating methods, techniques and tools in software engineering.
Journal ArticleDOI
Empirical validation of object-oriented metrics on open source software for fault prediction
TL;DR: This paper calculated the object-oriented metrics given by Chidamber and Kemerer to illustrate how fault-proneness detection of the source code of the open source Web and e-mail suite called Mozilla can be carried out and checked the values obtained against the number of bugs found in its bug database to validate the usefulness of these metrics for fault- proneness prediction.