Finding Analysis Classes Analyze Use-cases and other artifacts to obtain Analysis classes, relationships, and behavior diagrams.
• Analyze Use-cases to obtain classes, their relationships, association, and interaction • This describes the “what’s in the system” that work together to obtain the use-case • This is called use-case realization • Classes should correspond to business entities and should clearly enunciate business intent !!! • Each class should have about 3 – 5 responsibilities
• • • Identify all interactions Keep classes of meaningful size Should not be a functoid Should not be all-purpose Minimize coupling Avoid deep inheritance
Noun-verb analysis • Look for noun and noun-phrases from your requirements and use case descriptions • These become classes • Look for verb and verb-phrases • These become responsibilities • Identify hidden classes - if possible • Clarify terms if not clear
CRC analysis • Classes, Responsibilities, Collaboration • Brainstorming with the user group from domain • Get ideas – write them down • Solicit responsibilities and collaborations • Analyze the notes from the session later
Other methods • Look for physical objects • Look for traditional paperwork or units in the business • Look for conceptual entities • Include these into the model • Use appropriate naming convention • We have the first cut