Design Patterns in Software Maintenance: An Experiment Replication at University of Alabama

Author(s):  
Aziz Nanthaamornphong ◽  
Jeffrey C. Carver
Author(s):  
Perdita Stevens

In software design, patterns—that is, structured, named descriptions of good solutions to common problems in context—have become a popular way of recording and transferring problem-solving expertise. The aim of this chapter is to describe how patterns can help in the field of software maintenance. There are two main uses of patterns in software maintenance. The first is to consider the introduction of a design pattern to an existing design. The second approach is to consider patterns for the maintenance process itself. For example, reengineering patterns describe solutions to common problems in the reengineering of a system, considering issues such as how to split the necessary changes into risk-minimizing steps. We discuss the advantages, pitfalls and practicalities of using patterns in both of these ways.


Author(s):  
Will Thompson

Native XML databases provide no exception to the problem that data may not be easily contained by any single data storage idiom. Many-to-many relationships, in particular, present a unique problem for documents, as strategies for joining across documents are a potential minefield of software maintenance and performance problems. Automatic denormalization shifts the responsibilty for managing relationships to write-time, making an explicit trade-off for simplicity and speed at runtime. This paper discusses existing strategies for managing relationships across documents and explores design patterns and use cases for performing automatic denormalization and their trade-offs.


1972 ◽  
Vol 36 (2) ◽  
pp. 6-14 ◽  
Author(s):  
H Bethart ◽  
SP McDaniel ◽  
KS Goller ◽  
WJ Pelton

Sign in / Sign up

Export Citation Format

Share Document