Week 3 Flashcards
(37 cards)
Domain Model May Show
concepts (objects), associations between concepts, attributes of concepts, rarely polymorphism
illustrates concept and static structure
Concept Definition
Base Building block: idea, thing, or object
3 Conceptual Class Strategies
- Conceptual Class Category List
- Noun Phrase Identification
- CRC - class responsibility collaborator cards
When to add attributes to conceptual class
Those for which the requirements suggest or imply a need to remember information
Should be pre data or simple attributes
Association Definition
Relationship between concepts that indicates some meaningful and interesting connection
Association Two Types
Association: Relating two classes
Generalization: Specialization of a class
Association: 4 Attributes
name
role
multiplicity
aggregation (shown with a diamond at the whole end)
Class Responsibility Collaborator Card: 3 Sections
Class Name
Responsibilities
Collaborators
CRC: Class represents:
collection of similar objects
CRC: responsibility is:
something a class knows or does
CRC: collaborator is:
another class that a class interacts with
CRC: what is class able to change?
values of things it knows, unable to change values of what other classes know
CRC: Collaborations:
A request for information or a request to do something
Two reasons to use CRC
- Conceptual Modeling
- Improve your Domain Model
Class Diagram show’s systems:
Classes
Attributes
Operations
Relationships
Objects have: (2 things)
states
behaviors
Class description
Description of a set of objects that share the same attributes, operations, relationships, and semantics
What is required in a class box in UML class diagram?
name is only thing required
Attribute Description
Names property of a class that describes the object being modeled
Operations Description
Describe the class behavior
Responsibility Definition
Contract or Obligation of a class to perform a particular service
3 kinds of UML Relationships
Dependencies
Generalizations
Associations
Dependency Definition
Indicates a semantic relationship between 2 or more elements
Generalization Definition
Connects subclass to superclass (inheritance)