Com S 362 Lecture Notes for Sep 08 Domain Models Reading: Larman Chapter 9 Remember: Software Process Models, Requirements, Specification, Requirement Elicitation, Use Cases, Scenarios, Actors, Type of Actors Recap: Use cases: Scenario = Description of [Actor --fulfill--> Goal] Use Case = [1 or more Scenario] Three Kinds of Actors: Primary: One who uses the machine to fulfill goals Supporting Actor: Provides a service to machine so that the machine can fullfill Primary Actors' goals Offstage Actor: Has an interest in the behavior of the use case Today's Lecture: Transition to object-oriented analysis. Requirement analysis that we studied so far were general. Domain Model: When: Often constructed during object-oriented analysis Why: - Understandability: Analyst is not familiar with the domain. These models help to understand the concepts in the domain and also to document relationship between concepts. - Helps lower representational gap between domain and software What: A visual representation of conceptual classes or real-situation objects in a domain. Also, referred to as the visual dictionary of the noteworthy abstractions, domain vocabulary, and information content of the domain. Domain Models consists of: - Conceptual classes - Attributes of these conceptual classes - Association between these conceptual classes Conceptual Classes: An idea, thing or object in the domain. Often understood in terms of its symbol, intension, and extension. Symbol: word or images representing a conceptual class. Intension: the definition of a conceptual class. Extension: the set of examples to which the conceptual class applies. Finding Conceptual Classes: - Reuse or modify existing models - Use a category list - Identify noun phrases