Domain Modelling
Domain model is a UML model that is drawn to understand the
important objects and their business context.
A domain is a collection of related concepts, relationships,
and workflows.
Eg : Science , Software
engineering , Statistics
Why Domain Model?
ü Gives a conceptual framework of the
things in the problem space
ü Helps you think – focus on semantics
ü Provides a glossary of terms – noun
based
ü It is a static view - meaning it
allows us convey time invariant business rules
ü Foundation for use case/workflow
modelling
ü Based on the defined structure, we
can describe the state of the problem domain at any time.
Figure 1 : Usage of a Domain Model |
Parts of a Domain Model
The Figure 2 Shows the main parts of a Domain model.
Figure 2 : Parts of a Domain Model |
Apart from these key features, a
domain model can also have,
o
Additional rules – complex rules that cannot be shown with symbology can be shown with
attached notes.
Wanna try out a domain model??
Follow these steps (figure 4)…..
Figure 4 : Domain Modelling Steps |
Concentrate more on just identifying domain classes in early steps !
Identify the domain classes?
An obvious way to identify domain classes is to
identify nouns and phrases in textual descriptions of a domain.
Consider a use case description as follows:-
1. Customer arrives
at a checkout with goods and/or services to purchase.
2. Cashier
starts a new sale.
3. Cashier
enters item identifier.
4. System records
the sale line item and presents the item description, price and running total.
Identifying Attributes??
A domain class sounds like an attribute if: -
1.
It
relies on an associated class for it’s identity – e.g. ‘order number’ class
associated to an ‘order’ class. The ‘order number’ sounds suspiciously like an
attribute of ‘order’.
2.
It
is a simple data type – e.g. ‘order number’ is a simple integer. Now it really
sounds like an attribute!
Comments
Post a Comment