Download here
Transcript
Figure 10. CRC card outlook. ⋅ The component name is written across the top. The responsibilities are written in three groups. ⋅ First is a brief summary, or synopsis, of the responsibilities of the component, its role in the system. This should be a short phrase, or perhaps two. ⋅ Next, in a list down the left side of the card are the active responsibilities, with a line or arrow to the right, ending in the name of a required collaborator for that responsibility. An active responsibility starts with an active verb, such as "track", "compute" or "find". Avoid the word "manage" where possible, and the passive verb, "hold". ⋅ Last are the contact point responsibilities, the information the component mediates. Often these will come from the attributes in a data or business model. If there is some question whether a service belongs in the active or contact point responsibility section, choose arbitrarily with a slight inclination toward the contact point section. It really does not matter a great deal. In the end, all responsibilities will be treated equally. The purpose in having the sections is so that attention can be focused on the summary and active responsibilities, which are the primary vehicle for partitioning the system. The contact point responsibilities are needed for component specification, and to demonstrate how the components deliver the required function in a documented scenario. The session ⋅ Use a centrally visible and accessible table. ⋅ Have available a stack of blank CRC cards (see Figure, "CRC Card"). Place them on the table within reach of anyone or give everyone a set for themselves. ⋅ Before starting a session there needs to be some kinds of requirements for the systems. Weather they are implicitly or explicitly define the people participating in the group need to be familiar with them. A session also needs to focus on one part of the problem at a time. So a subset of the problem needs to be chosen to explore during the CRC card session. 1. Creating class The first step in modeling a system in the object-oriented paradigm is to identify the class in the problem domain. So this is the first step in a CRC card session. Using the problem statement or requirements document, identify the classes that are obvious in the subset of the problem that is going to be explored in this session. One useful tool is to find all of the nouns and verbs in the problem statement. The nouns are a good key to what class are in the system, and the verbs show what there responsibilities are going to be. 51