A Validation of Object-Oriented Design Metrics as Quality Indicators
IEEE Transactions on Software Engineering
A Unified Framework for Coupling Measurement in Object-Oriented Systems
IEEE Transactions on Software Engineering
Towards a framework for empirical assessment of changeability decay
Journal of Systems and Software - Special issue on empirical studies of software development and evolution
Does Code Decay? Assessing the Evidence from Change Management Data
IEEE Transactions on Software Engineering
Composite Structure Design
A UML-Based Pattern Specification Technique
IEEE Transactions on Software Engineering
How Software Designs Decay: A Pilot Study of Pattern Evolution
ESEM '07 Proceedings of the First International Symposium on Empirical Software Engineering and Measurement
Testing Consequences of Grime Buildup in Object Oriented Design Patterns
ICST '08 Proceedings of the 2008 International Conference on Software Testing, Verification, and Validation
Evaluating pattern conformance of UML models: a divide-and-conquer approach and case studies
Software Quality Control
DeMIMA: A Multilayered Approach for Design Pattern Identification
IEEE Transactions on Software Engineering
Decay and grime buildup in evolving object oriented design patterns
Decay and grime buildup in evolving object oriented design patterns
Hi-index | 0.00 |
Software designs decay over time. While most studies focus on decay at the system level, this research studies design decay on well understood micro architectures, design patterns. Formal definitions of design patterns provide a homogeneous foundation that can be used to measure deviations as pattern realizations evolve. Empirical studies have shown modular grime to be a significant contributor to design pattern decay. Modular grime is observed when increases in the coupling of design pattern classes occur in ways unintended by the original designer. Further research is necessary to formally categorize distinct forms of modular grime. We identify three properties of coupling relationships that are used to classify subsets of modular grime. A taxonomy is presented which uses these properties to group modular grime into six disjoint categories. Illustrative examples of grime build-up are provided to demonstrate the taxonomy. A pilot study is used to validate the taxonomy and provide initial empirical evidence of the proposed classification.