Object-oriented design: a responsibility-driven approach
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
Advanced C++ programming styles and idioms
Advanced C++ programming styles and idioms
Designing object-oriented software
Designing object-oriented software
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Subject-oriented composition rules
Proceedings of the tenth annual conference on Object-oriented programming systems, languages, and applications
Object-oriented metrics: measures of complexity
Object-oriented metrics: measures of complexity
Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Pattern-based reverse-engineering of design components
Proceedings of the 21st international conference on Software engineering
Pattern density and role modeling of an object transport service
ACM Computing Surveys (CSUR)
Finding refactorings via change metrics
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Object-Oriented Software Construction
Object-Oriented Software Construction
Design pattern implementation in Java and aspectJ
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Towards a Semantic Metrics Suite for Object-Oriented Design
TOOLS '00 Proceedings of the Technology of Object-Oriented Languages and Systems (TOOLS 34'00)
Design Recovery by Automated Search for Structural Design Patterns in Object-Oriented Software
WCRE '96 Proceedings of the 3rd Working Conference on Reverse Engineering (WCRE '96)
Automatic Design Pattern Detection
IWPC '03 Proceedings of the 11th IEEE International Workshop on Program Comprehension
Product metrics for object-oriented systems
ACM Computing Surveys (CSUR)
Mining Design Patterns from C++ Source Code
ICSM '03 Proceedings of the International Conference on Software Maintenance
Computing software metrics from design documents
ACM-SE 42 Proceedings of the 42nd annual Southeast regional conference
Refactoring to Patterns
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Modeling architectural patterns using architectural primitives
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Design fragments make using frameworks easier
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Design Pattern Detection Using Similarity Scoring
IEEE Transactions on Software Engineering
JUnit 3.8 documented using collaborations
ACM SIGSOFT Software Engineering Notes
Understanding design patterns density with aspects
SC'06 Proceedings of the 5th international conference on Software Composition
Transactions on Aspect-Oriented Software Development I
The beauty and the beast: separating design from algorithm
Proceedings of the 25th European conference on Object-oriented programming
Design decision topology model for pattern relationship analysis
Proceedings of the 1st Asian Conference on Pattern Languages of Programs
Hi-index | 0.00 |
Design pattern density is a metric that measures how much of an object-oriented design can be understood and represented as instances of design patterns. Expert developers have long believed that a high design pattern density implies a high maturity of the design under inspection. This paper presents a quantifiable and observable definition of this metric. The metric is illustrated and qualitatively validated using four real-world case studies. We present several hypotheses of the metric's meaning and their implications, including the one about design maturity. We propose that the design pattern density of a maturing framework has a fixed point and we show that if software design patterns make learning frameworks easier, a framework's design pattern density is a measure of how much easier it will become.