|
… transforms the
diagram to show the effect of the refactoring, updates the focus set, and
diagrams this new focus set. The
focus set now includes the participants in the refactoring and its indirect
effects, which are program elements that may require further changes to
produce a valid program. Here,
moving horsepower to Engine causes getHorsepower() in Vehicle to refer to a
missing field, and in turn clients that depend on getHorsepower() may need
further change. (The likely
solution is to delegate getHorsepower() to the anEngine object, so clients
won’t have to change.)
|