Start Back Next End
  
14
addition, the design provides implementation guidance for a story
as it is written, without any redundant features.
XP encourages the use of CRC cards for thinking about the
software in an object-oriented context. CRC (class-responsibility
collaborator) cards identify and organize the object-oriented
classes that are relevant to the current software increment. The
CRC cards are the only design work product produced as part of
the XP process.
If a difficult design problem is encountered as part of the
design of a story, it is recommended to do the Spike Solution—
immediate creation of an operational prototype of that portion of
the design, for evaluation. The goal is to lower risk when true
implementation starts and to validate the original estimates for
the story containing the design problem. In XP, it is encouraged
to do refactoring—a construction technique that is also a method
for design optimization. 
Refactoring is the process of changing a software system in
such a way that it does not alter the external behavior of the code
yet improves the internal structure. It is a disciplined way to clean
up code that minimizes the chances of introducing bugs. 
Because XP design uses virtually no notation and produces
few work products other than CRC cards and spike solutions,
design can, and should be modified continuously as construction
proceeds. Refactoring is supposed to control these modifications
by suggesting small design changes that “can radically improve
the design”. It should be noted, however, that the effort required
for refactoring can grow dramatically as the size of an application
grows. 
Word to PDF Converter | Word to HTML Converter