Program understanding and the concept assignment problem
Communications of the ACM
Experimentation in software engineering: an introduction
Experimentation in software engineering: an introduction
Quantifying the closeness between program components and features
Journal of Systems and Software - Special issue on software maintenance
A Metrics Suite for Object Oriented Design
IEEE Transactions on Software Engineering
Clone Detection Using Abstract Syntax Trees
ICSM '98 Proceedings of the International Conference on Software Maintenance
An Evaluation of Clone Detection Techniques for Identifying Crosscutting Concerns
ICSM '04 Proceedings of the 20th IEEE International Conference on Software Maintenance
Identifying Aspects Using Fan-In Analysis
WCRE '04 Proceedings of the 11th Working Conference on Reverse Engineering
A Qualitative Comparison of Three Aspect Mining Techniques
IWPC '05 Proceedings of the 13th International Workshop on Program Comprehension
Understanding Concerns in Software: Insights Gained from Two Case Studies
IWPC '05 Proceedings of the 13th International Workshop on Program Comprehension
Object-Oriented Metrics in Practice
Object-Oriented Metrics in Practice
ConcernMapper: simple view-based separation of scattered concerns
eclipse '05 Proceedings of the 2005 OOPSLA workshop on Eclipse technology eXchange
Distribution and persistence as aspects
Software—Practice & Experience - Research Articles
ICSM '06 Proceedings of the 22nd IEEE International Conference on Software Maintenance
Representing concerns in source code
ACM Transactions on Software Engineering and Methodology (TOSEM)
Identifying, Assigning, and Quantifying Crosscutting Concerns
ACoM '07 Proceedings of the First International Workshop on Assessment of Contemporary Modularization Techniques
The role of replications in empirical software engineering--a word of warning
Empirical Software Engineering
Evolving software product lines with aspects: an empirical study on design stability
Proceedings of the 30th international conference on Software engineering
Do Crosscutting Concerns Cause Defects?
IEEE Transactions on Software Engineering
Analysis of Variance Designs: A Conceptual and Computational Approach with SPSS and SAS
Analysis of Variance Designs: A Conceptual and Computational Approach with SPSS and SAS
Refactoring of Crosscutting Concerns with Metaphor-Based Heuristics
Electronic Notes in Theoretical Computer Science (ENTCS)
On the Maintainability of Aspect-Oriented Software: A Concern-Oriented Measurement Framework
CSMR '08 Proceedings of the 2008 12th European Conference on Software Maintenance and Reengineering
Applying and Evaluating Concern-Sensitive Design Heuristics
SBES '09 Proceedings of the 2009 XXIII Brazilian Symposium on Software Engineering
Measuring and characterizing crosscutting in aspect-based programs: basic metrics and case studies
FASE'07 Proceedings of the 10th international conference on Fundamental approaches to software engineering
Towards a catalogue of refactorings and code smells for aspectj
Transactions on Aspect-Oriented Software Development I
On the impact of aspectual decompositions on design stability: an empirical study
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
Concern-based cohesion as change proneness indicator: an initial empirical study
Proceedings of the 2nd International Workshop on Emerging Trends in Software Metrics
On the relationship of concern metrics and requirements maintainability
Information and Software Technology
Applying and evaluating concern-sensitive design heuristics
Journal of Systems and Software
Do crosscutting concerns cause modularity problems?
Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering
Hi-index | 0.00 |
Many concern metrics have been defined to quantify properties of crosscutting concerns, such as scattering, tangling, and dedication. To quantify these properties, concern metrics directly rely on the projection (assignment) of concerns into source code. Although concern identification tools have emerged over the last years, they are still rarely used in practice to support concern projection and, therefore, it is a task often performed manually. This means that the results of concern metrics are likely to be influenced by how accurately programmers assign concerns to code elements. Even though concern assignment is an important and long-standing problem in software engineering, its impact on accurate measures of crosscutting concerns has never been studied and quantified. This paper presents a series of 5 controlled experiments to quantify and analyse the impact of concern projection on crosscutting concern measures. A set of 80 participants from 4 different institutions projected 10 concern instances into the source code of two software systems. We analyse the accuracy of concern projections independently made by developers, and their impact on a set of 12 concern metrics. Our results suggest that: (i) programmers are conservative when projecting crosscutting concerns, (ii) all concern metrics suffer with such conservative behaviour, and (iii) fine-grained tangling measures are more sensitive to different concern projections than coarse-grained scattering metrics.