Sie sind auf Seite 1von 15

Domain Modeling

Diagrams from Larson, 2nd edition

CIS 320-06 1
Domain Modeling
❚ Way of understanding the domain
❚ Visual representation of conceptual classes
(idea, thing, or object)
❚ AKA Conceptual Models, Domain Object
Models, and Analysis Object Models
❚ Used in OO analysis to identify conceptual
classes
❚ Partial view, not comprehensive
❚ Represents real world conceptual classes
❚ Does not describe software classes
❚ Does not describe software responsibilities
CIS 320-06 2
Domain Model for Playing Dice
Player1 Rolls2 Die
name faceValue
1 2
Plays
1
DiceGame
1 Includes
CIS 320-06 3
POS Domain Model
concept
or domain Sales
LineItem Item
Records-sale-of
object quantity0..1 1
1..* *
association
Contained-in Stocked-in
1 1
Sale Store
attributes date
time 1 address
name
1 1
Houses
Paid-by 1..*
1 4
Captured-on Register
Payment 1
amount CIS 320-06 4
Conceptual Classes
❚ Visual representation of conceptual
classes (idea, thing, or object)
❚ Two Class Identification methods
1. Conceptual Class Category List
2. Noun Phrase Identification
❘ Analysis of Use Cases

CIS 320-06 5
Conceptual Class Category List
Conceptual Class Category Examples
physical or tangible objects Mailed invoice, receipt, store

transactions bid, payment

events bid, snipe…

organizations eBay, Provincial Government

CIS 320-06 6
Noun Phrase Identification
z Customer arrives at POS checkout with
goods and/or services to purchase.
z Cashier starts a new sale.
z Cashier enters item identifier.
z System records sale line item and presents
item description, price and running total.
z …

CIS 320-06 7
Possible Problems
❚ Possible duplication of classes by using different terms
❙ e.g., sales person vs. cashier
❚ Ambiguity of terms themselves
❚ Too many terms at once -> distracting
❙ Some conceptual classes can be ignored in early stages
❚ Needs to be used with Conceptual Class Categories

CIS 320-06 8
Creating the Model

1. Determine and list candidate conceptual


classes
2. Place them in a domain model
3. Create associations necessary to record
relationships
4. Add necessary attributes to fulfill
information requirements

CIS 320-06 9
Guidelines
❚ Use existing names
❚ Get rid of anything extraneous
❚ No absolutely correct way

CIS 320-06 10
CIS 320-06 11
CIS 320-06 12
CIS 320-06 13
CIS 320-06 14
CIS 320-06 15

Das könnte Ihnen auch gefallen