Professional Documents
Culture Documents
toad
Christian Kstner
Charlie Garrod
School of
Computer Science
Learning Goals
Ability to model concepts in a domain and their
relationships
15-214 Kstner
toad
2. Object-Oriented Design
3. Implementation
15-214 Kstner
toad
Object-Oriented Analysis
Find the concepts in the problem domain
toad
Problem
Space
Solution
Space
Domain Model
Object Model
Real-world concepts
System implementation
Requirements, Concepts
Classes, objects
Relationships among
concepts
Solving a problem
Computing a result
Building a vocabulary
Finding a solution
15-214 Kstner
toad
Running Example
15-214 Kstner
toad
Running Example
Point of sale (POS) or checkout is the place where a retail
transaction is completed. It is the point at which a customer
makes a payment to a merchant in exchange for goods or
services. At the point of sale the merchant would use any of a
range of possible methods to calculate the amount owing - such as
a manual system, weighing machines, scanners or an electronic
cash register. The merchant will usually provide hardware and
options for use by the customer to make payment. The merchant
will also normally issue a receipt for the transaction.
For small and medium-sized retailers, the POS will be customized
by retail industry as different industries have different needs. For
example, a grocery or candy store will need a scale at the point of
sale, while bars and restaurants will need to customize the item
sold when a customer has a special meal or drink request. The
modern point of sale will also include advanced functionalities to
cater to different verticals, such as inventory, CRM, financials,
warehousing, and so on, all built into the POS software. Prior to
the modern POS, all of these functions were done independently
and required the manual re-keying of information, which resulted
in a lot of errors.
http://en.wikipedia.org/wiki/Point_of_sale
15-214 Kstner
toad
toad
S a le s
Ite m
S to re
C a s h ie r
C u s to m e r
C ash
P ro d u c t
P ro d u c t
P aym ent
C a ta lo g
D e s c r ip tio n
L in e Ite m
15-214 Kstner
toad
S a le
Ledger
Conceptual Model
15-214 Kstner
toad
10
toad
11
Organize Concepts
Identify related elements
Model relationships through inheritance ("is a") or
associations ("related to")
15-214 Kstner
toad
12
Sale
store
vs.
Sale
Store
phoneNr
toad
13
Associations
Store
stocks
1
Item
toad
14
P ro d u c t
Ledger
P ro d u c t
D e s c r ip tio n
C a ta lo g
C o n ta in s
1
1 ..*
1
1
R e c o rd s -
0 ..1
U s e d -b y
a c c o u n ts S a le s
D e s c r ib e s
fo r
S to re
L in e Ite m
Ite m
S to c k s
1
1 ..*
1 ..*
1
C o n ta in e d - in
Logsc o m p le te d
S a le
H ouses
1 ..*
R e g is te r
C a p tu re d -o n
0 ..1
P a id - b y
1
C ashP aym ent
15-214 Kstner
Is -fo r
1
W o rk s -o n
1
C u s to m e r
C a s h ie r
toad
15
15-214 Kstner
toad
16
thats okay
start with a partial model, model what's needed
extend with additional information later
communicate changes clearly
otherwise danger of "analysis paralysis"
15-214 Kstner
toad
17
15-214 Kstner
toad
18
toad
19
Summary
Object-oriented analysis identifies relevant
concepts in the problem space
15-214 Kstner
toad
20