Slide 27 of 44
The second step is to look for "natural homes" for these contract-based collections of functionality and them migrate them there.
In our example, we would gather operations related to catalogs and migrate them from the LIBRARY class and move them to the CATALOG class as shown.
We would do the same with operations and attributes related to items, moving them to the ITEM class. This both simplifies the LIBRARY class, and makes the ITEM and CATALOG classes more than simple encapsulated data tables. The result is a better OO design.