Object-oriented modeling and design
Object-oriented modeling and design
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
The pros and cons of adopting and applying design patterns in the real world
Communications of the ACM
The unified software development process
The unified software development process
A Discipline for Software Engineering
A Discipline for Software Engineering
Object-Oriented Software Construction
Object-Oriented Software Construction
The Java Language Specification
The Java Language Specification
Reusing Software: Issues and Research Directions
IEEE Transactions on Software Engineering
A Controlled Experiment in Maintenance Comparing Design Patterns to Simpler Solutions
IEEE Transactions on Software Engineering
Preliminary guidelines for empirical research in software engineering
IEEE Transactions on Software Engineering
OO Design Patterns, Design Structure, and Program Changes: An Industrial Case Study
ICSM '01 Proceedings of the IEEE International Conference on Software Maintenance (ICSM'01)
Design Patterns and Change Proneness: An Examination of Five Evolving Systems
METRICS '03 Proceedings of the 9th International Symposium on Software Metrics
Proactive Views on Concrete Aspects: A Pattern Documentation Approach for Software Evolution
COMPSAC '03 Proceedings of the 27th Annual International Conference on Computer Software and Applications
A UML-Based Pattern Specification Technique
IEEE Transactions on Software Engineering
Responsibilities and Rewards: Specifying Design Patterns
Proceedings of the 26th International Conference on Software Engineering
Enhancing class commutability in the deployment of design patterns
Information and Software Technology
An assessment of design patterns' influence on a Java-based e-commerce application
Journal of Theoretical and Applied Electronic Commerce Research
Human and program factors affecting the maintenance of programs with deployed design patterns
Information and Software Technology
Hi-index | 0.00 |
A design pattern documents a reference design for the solution to a recurring problem encountered in object-oriented software development. The fundamental theme of design patterns is to encapsulate the concepts that vary. Software practitioners generally take it for granted that achieving the pattern theme would lead to extensible software. Is such a conjecture legitimate? A direct validation of the conjecture is difficult because it requires an objective measurement of extensibility, which is still an open controversial concept. In this paper, we examine the conjecture indirectly by exploring if there is any relation between the pattern theme and the Open-Closed Principle, which has been advocated by many to achieve extensible object-oriented software. We conducted an experiment based on 98 postgraduate students in a software engineering course. The experiment suggested that the satisfaction of the pattern theme generally lead to the conformance to the Open-Closed principle. However, three exception cases were found. We look into these few exceptions and provide some analyses.