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