Toward effective deployment of design patterns for software extension: a case study
Proceedings of the 2006 international workshop on Software quality
Work experience versus refactoring to design patterns: a controlled experiment
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
Do rules and patterns affect design maintainability?
Journal of Computer Science and Technology
Hi-index | 0.00 |
A design pattern provides a structure to manage a designaspect by allowing the aspect to be changed withoutsoftware redesign. For example, the Command patternallows a software design to be easily reconfigured toreplace a receiver of a command request or issue a newcommand request. To prepare for everlasting demands indiverse requirement changes, multiple design patterns aretypically deployed to manage various design aspects of asoftware program. However, this can complicate theunderlying program structure, resulting in difficulties ofsucceeding program revisions to preserve effectivemanagement of aspects. In particular, when design aspectscut across each other, realizing changes in one aspectlikely revokes the management of other aspects. Toaddress this problem, we propose a documentationapproach to govern program revisions. In the approach, adesign aspect is associated with a set of proactive views.Each view specifies how an implementation of the aspectis organized so that other aspects can be managed at thesame time. The views capture the class relationships thatmust be kept to preserve effective management of aspects.The approach is illustrated using a pattern-based hotelmanagement system.