-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
1/49
Systems Analysis and Design in a Changing World, 6th Edition 1
Chapter 4
INTRODUCTION TO
SYSTEMS ANALYSIS AND
DESIGN:AN AGILE, ITERATIVE APPROACH
SATZINGE ! "AC#S$N ! %&D
C'A(TE 4
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
2/49
Domain Modeling
Introd)*tion to Systems
Analysis and Design+
An Agile, Itera*tie Approa*h
6th Ed
Sat-inger, "a*.son / %)rd
Chapter 4
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
3/49
Introd)*tion to Systems Analysis and Design, 6th Edition 0
Chapter 4 Outline
Things2 in the (ro3lem Domain Data entities
Domain *lassesThe Domain odel Class Diagram
The Entity5elationship Diagram
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
4/49
4
Learning Objectives E=plain ho< the *on*ept o; things2 in the pro3lem
domain also de;ine re>)irements
Identi;y and analy-e data entities and domain
*lasses needed in the system
ead, interpret, and *reate an entity5relationshipdiagram
ead, interpret, and *reate a domain model *lass
diagram
&nderstand the domain model *lass diagram ;or
the $ Consolidated Sales and ar.eting
System
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
5/49
?
Overview
Chapter 0 proided an oerie< o; identi;ying)se *ases to de;ine ;)n*tional re>)irements This *hapter ;o*)ses on another .ey *on*epts
;or de;ining re>)irements@ data entities or
domain *lasses In the $ Tradesho< System ;rom Chapter 1,
some domain *lasses are S)pplier, (rod)*t, andConta*t
In this *hapters opening *ase Waiters on Call,e=amples o; domain *lasses are esta)rants,en) items, C)stomers, $rders, Driers,
Addresses, o)tes, and (ayments
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
6/49
6
Things in the Problem Domain
(ro3lem domain@the spe*i;i* area Bor domaino; the )sers 3)siness need that is
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
7/49
Things in the Problem DomainTwo Techniques for dentif!ing them
%rainstorming Te*hni>)e &se a *he*.list o; all o; the )s)al types o; things
typi*ally ;o)nd and 3rainstorm to identi;y domain
*lasses o; ea*h type
No)n Te*hni>)e Identi;y all o; the no)ns that *ome )p
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
8/49
"rainstorming Technique Are there any tangi3le thingsF Are there any
organi-ational )nitsF Siteslo*ationsF Are there in*identsor eents that need to 3e re*ordedF
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
9/49
H
"rainstorming Technique#
$teps
1: Identi;y a )ser and a set o; )se *ases7: %rainstorm
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
10/49
18
The %oun Technique
A te*hni>)e to identi;y pro3lem domain *lassesBthings 3y ;inding, *lassi;ying, and re;ining alist o; no)ns that *ome )p in in dis*)ssions ordo*)ments
(op)lar te*hni>)e: Systemati*: Does end )p
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
11/49
11
Partial Listof %ouns
for &MO
'ith notes on
whether to
include as
domain class
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
12/49
17
The %oun Technique#
$teps
1: &sing the )se *ases, a*tors, and other in;ormationa3o)t the system@ in*l)ding inp)ts and o)tp)ts@identi;y all no)ns: or the $ CSS, the no)ns might in*l)de *)stomer, prod)*t item,
sale, *on;irmation, transa*tion, shipping, 3an., *hange re>)est,s)mmary report, management, transa*tion report, a**o)nting, 3a*.
order, 3a*. order noti;i*ation, ret)rn, ret)rn *on;irmationJ
7: &sing other in;ormation ;rom e=isting systems, *)rrentpro*ed)res, and *)rrent reports or ;orms, add items or*ategories o; in;ormation needed:
or the $ CSS, these might in*l)de pri*e, si-e, *olor, style,season, inentory >)antity, payment method, and shipping address:
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
13/49
10
The %oun Technique#
$teps (continued)
0: As this list o; no)ns 3)ilds, re;ine it: As. these>)estions a3o)t ea*h no)n to help yo) de*ide )e thing the system needs to .no< a3o)tF Is it inside the s*ope o; the system I am )estions to de*ide to e=*l)de it+ Is it really a synonym ;or some other thing I hae identi;iedF Is it really K)st an o)tp)t o; the system prod)*ed ;rom other
in;ormation I hae identi;iedF Is it really K)st an inp)t that res)lts in re*ording some other in;ormation
I hae identi;iedF As. these >)estions to resear*h it+ Is it li.ely to 3e a spe*i;i* pie*e o; in;ormation Battri3)te a3o)t some
other thing I hae identi;iedF Is it something I might need i; ass)mptions *hangeF
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
14/49
14
The %oun Technique#
$teps (continued)
4: Create a master list o; all no)ns identi;ied and thennote
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
15/49
1?
Details about Domain Classes
Attri3)te@ des*ri3es one pie*e o; in;ormationa3o)t ea*h instan*e o; the *lass C)stomer has ;irst name, last name, phone n)m3er
Identi;ier or .ey $ne attri3)te )ni>)ely identi;ies an instan*e o; the
*lass: e>)ired ;or data entities, optional ;or domain*lasses: C)stomer ID identi;ies a *)stomer
Compo)nd attri3)te T
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
16/49
16
*ttributes and +alues
Class is a type o; thing: $3Ke*t is a spe*i;i* instan*e o; the *lass:
Ea*h instan*e has its o
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
17/49
1
*ssociations *mong Things
Asso*iation@ a nat)rally o**)rring relationship3et
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
18/49
1
,ust to Clarif!-
Called association on *lass diagram in &9 )ltipli*ity is term ;or the n)m3er o; asso*iations 3et
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
19/49
1H
Minimum and Ma.imum Multiplicit!
Asso*iations hae minim)m and ma=im)m *onstraints minim)m is -ero, the asso*iation is optional
I; minim)m is at least one, the asso*iation is mandatory
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
20/49
78
T!pes of *ssociations
%inary Asso*iation Asso*iations 3et
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
21/49
71
$emantic %et
$hows instances andhow the! are lin/ed
0.ample shows
instances of three
classes
1uic/ qui2#
3ow man! associations are
there
'hat are the minimum andma.imum multiplicities in
each direction
'hat t!pe of associations are
the!
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
22/49
77
The Domain Model Class Diagram Class A *ategory o; *lassi;i*ation )sed to des*ri3e a *olle*tion
o; o3Ke*ts
Domain Class Classes that des*ri3e o3Ke*ts in the pro3lem domain
Class Diagram A &9 diagram that sho
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
23/49
70
Domain Class %otation
Domain *lass has no methods Class name is al
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
24/49
74
* $imple Domain Model Class
Diagram
Note+ This diagram mat*hes the semanti* net sho
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
25/49
7?
5ML %otation for Multiplicit!
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
26/49
76
Domain Model Class Diagramfor a ban/ with man! branches
Introd)*tion to Systems Analysis and Design, 6th Edition 7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
27/49
7
Domain Model Class Diagramfor course enrollment at a universit!
Where is ea*h st)dents grade remem3ered in this modelF Ea*h se*tion has many grades and ea*h grade is asso*iation
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
28/49
7
&efined Course 0nrollment Modelwith an *ssociation Class Course0nrollment
Asso*iation *lass@ an asso*iation that is treated as a *lass in a
many to many asso*iation 3e*a)se it has attri3)tes that need to3e remem3ered, s)*h as grade
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
29/49
7H
More Comple. ssues about Classes#6enerali2ation7$peciali2ation &elationships
Generali-ationSpe*iali-ation A hierar*hi*al relationship
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
30/49
08
6enerali2ation7$peciali2ationnheritance
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
31/49
01
6enerali2ation7$peciali2ationnheritance for &MO Three T!pes of $ales
A3stra*t *lass@ a *lass that allo< s)3*lasses to inherit
*hara*teristi*s 3)t neer gets instantiated: In Itali*s BSale a3oe
Con*rete *lass@ a *lass that *an hae instan*es
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
32/49
07
6enerali2ation7$peciali2ationnheritance for the "an/ with $pecial T!pes of *ccounts
A SaingsA**o)nt
has 4 attri3)tes
A Che*.ingA**o)nt
'as ? attri3)tes
Note+ the s)3*lasses
inherit the
asso*iations, too
Introd)*tion to Systems Analysis and Design, 6th Edition 7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
33/49
00
More Comple. ssues about Classes#'hole Part &elationships
Whole5part relationship@ a relationship 3et
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
34/49
04
'hole Part &elationshipsComputer and its Parts
Note+ this is
*omposition,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
35/49
0?
More on 5ML &elationships
There are a*t)ally three types o; relationships in*lass diagrams Asso*iation elationships
These are asso*iations dis*)ssed preio)sly, K)st li.e
ED relationships Whole (art elationships
$ne *lass is a *omponent or part o; another *lass
Generali-ationsSpe*iali-ation elationships
Inheritan*e
So, try not to *on;)se relationship
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
36/49
06
&MO C$M$ ProjectDomain Model Class Diagrams
There are seeral
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
37/49
0
&MO C$M$ ProjectDomain Model Class Diagrams
There are seeral
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
38/49
0
&MO C$M$
Project$ales $ubs!stem
Domain Model
Class Diagrams
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
39/49
0H
&MO C$M$
ProjectCustomer *ccount$ubs!stem Domain
Model Class
Diagram
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
40/49
48
&MO C$M$
ProjectComplete Domain
Model Class
Diagram
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
41/49
41
&MO C$M$ ProjectDomain Model Class Diagrams Gien the *omplete $ CSS Domain odel
Class Diagram and Sales and C)stomer A**o)nts)3system e=amples+ Try *ompleting the $rder )l;ilment S)3system Domain odel
Class Diagram
Try Completing the ar.eting S)3system Domain odel Class
Diagram
Try Completing the eporting S)3system Domain odel Class
Diagram
eie< the )se *ases ;rom Chapter 0 and de*ide )ired ;or ea*h s)3system Classes and asso*iations might 3e d)pli*ated in more than
one s)3system model
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
42/49
47
0ntit!8&elationship Diagrams
0&D An ED sho
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
43/49
40
0.ample of 0&D %otation
A simple ED
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
44/49
44
0&D Cardinalit! $!mbolsoften called the crows feet notation
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
45/49
4?
0.panded 0&D with *ttributes
Note+ This diagram mat*hes the semanti* net sho
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
46/49
46
*n 0&D for a "an/
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
47/49
4
$ummar! This *hapter is the se*ond o; three that ;o*)ses
on modeling ;)n*tional re>)irements as a part o;systems analysis
Things2 in the pro3lem domain are identi;ied and
modeled, *alled domain *lasses or data entities
T)es ;or identi;ying domain *lassesdataentities are the 3rainstorming te*hni>)e and the no)n
te*hni>)e
Domain *lasses hae attri3)tes and asso*iations
Asso*iations are nat)rally o**)rring relationshipsamong *lasses, and asso*iations hae minim)m and
ma=im)m m)ltipli*ity
7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
48/49
4
$ummar!
The &9 *lass diagram notation is )sed to *reate
a domain model *lass diagram ;or a system: The
domain model *lasses do not hae methods 3e*a)se
they are not yet so;t
-
8/17/2019 Systems analysis and design agile iterative approach chapter 4
49/49
4H
$ummar!
Entity5relationship diagrams BEDs sho< the
same in;ormation as a domain model *lass
diagram
EDs are pre;erred 3y data3ase analysts and are