|
… 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.)
|