Professional Documents
Culture Documents
Abstract Descriptions of Systems Whose Requirements Are Being Analysed
Abstract Descriptions of Systems Whose Requirements Are Being Analysed
Abstract descriptions of
systems whose requirements
are being analysed
rcsoyuantcm h
er Ms y m
asinytem
ance U
s
a
g
e
d
t
b
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 9
Process models
Process models show the overall process and the
processes that are supported by the system
Data flow models may be used to show the
processes and the flow of information from one
process to another
o
as
et D enl
i
v
o
t
de
r
A
e
ly
c
i
vep
t
r
yof De
l
i
v
e
r
y
n
o
tC
d h
l
ivec
r kd
S
u p e
n
t
c
.
ldatbaiser suF Su
p
l
ie
r
l
i
s
t
ipnlders sCh
os
u
eS
sp
t
m
ec
.
+
l
i
e
r
a
t n oO
t
i
f r d
e
c
aq
u
t
i
o
Pn
lm
ac
en I t
nsm
ta
l s
I
ins
t
a
l
r
u
ct
i
o
n
s
uplirBO
rd
len d
tfakrilme
os+ e
rsigCq
ui
p
o
rm
d nt e
q
u ipm e
I
an
ct
s
a
l
e
pt
i
o
n
c
e
hec
k d
and
ndoreformEA
d
e
q
u c
l
ivme
p
r Et
d
n
qu
i
p
m
d
e
t
ae
n
t
l
s
©Ian Sommerville 2000
q u
idatpbm
easnt
Software Engineering, 6th edition. Chapter 7 Slide 11
Behavioural models
Behavioural models are used to describe the
overall behaviour of a system
Two types of behavioural model are shown here
• Data processing models that show how data is processed as it
moves through the system
• State machine models that show the systems response to events
Both of these models are required for a
description of the system’s behaviour
m O d
m
V
a
ol
i
d
a
t
e
rS
o
r
di
g
n
e
d
f
o
rm Roo
e r
c
r
d S
di
g
n
e
f
o d
rm S
se
u
Apn
d d
jl
ut
i
e
so
r
t C
h
e
s
i
g
+
oc
k
d
n
o
t
f
i
c
aa
n
d
r
e
t
i
n
rtd
eailsorS av
idgnfeodrmiblagbe+a
dO
r
d
e
m
o
u
n
c
e
t
i
lt
s
O rfd
eilsB ufidlget
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 14
Data flow diagrams
DFDs model the system from a functional
perspective
Tracking and documenting how the data
associated with a process is helpful to develop an
overall understanding of the system
Data flow diagrams may also be used in showing
the data exchange between a system and other
systems in its environment
n V
da
l
i
d
e
s
g
n
rnacsnsedC D e
cdrhoesik si
g
n
cgnhk
eC
h
d
rdC
ae
sc
i
nk
g
d nd D
an es
i
g
n
l
y
erD
ae
ns
i
g
n
l
ys
gR
n ep oa r
tU
s
e
r
r
p
ot
Out
p
ogdenskrealtroncodedD
eatsbigane
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 16
State machine models
These model the behaviour of the system in
response to external and internal events
They show the system’s responses to stimuli so are
often used for modelling real-time systems
State machine models show system states as nodes
and events as arcs between these nodes. When an
event occurs, the system moves from one state to
another
Statecharts are an integral part of the UML
: te
a c k
ui
sn gO
p
e
O
Kr
a
t
i
on
d
oC
:
r
u
n
g
eo k
r
aT
i
t
o
rm
e
T
ufrntab
ldoA
e:ldeavirsm E
m
i
f
a
ut
e
r
l
pnltayD d
oD
o
:
b
u
fzn
5eT
i
m
e
o
r
o
n
s
c
.u
t
D
©Ian Sommerville 2000
isabled W o
p
er
naitng C
a
n
ce
l
Software Engineering, 6th edition. Chapter 7 Slide 22
Semantic data models
Used to describe the logical structure of data
processed by the system
Entity-relation-attribute model sets out the entities
in the system, the relationships between these
entities and the entity attributes
Widely used in database design. Can readily be
implemented using relational databases
No specific notation provided in the UML but
objects and associations can be used
lTPu b
iitlesrheditem T R
e
i
t
l
M
dc
o
r
d
e
u
mi
t
em
Au
tE
d
iPh
b
lISB
o
r
nk
ondate P
c
a
tB
iN Y
IseM
a
g
z
a
r
ui
n
e D
i
r
e
c
a
sF
i
l
m
t
o
r
f
e
b
ua
s
e V
e rsC
p
io
m
p
u
t
e
r
g
a
m
n
latfomr
P
RL
iN
aA
m
d
h
o
g
iD b
e
nrsa y us
te-srea(io)rn#er User class hierarchy
A Read
r
filtion S ItafM
team Bor wer
xs.nlsanS
D eparm
enphoneM a
jH
o
rm t
ude n
t
seabjrcs
Multiple inheritance
Rather than inheriting the attributes and services
from a single parent class, a system which
supports multiple inheritance allows object
classes to inherit from several super-classes
Can lead to semantic conflicts where
attributes/services with the same name in
different super-classes have different semantics
Makes class hierarchy reorganisation more
complex
u
tE
d
iPh
b
lISB
o
r
n
c
a
tB
iNk
ondateR V
S
p
D
uo
i
a
rc
e
r
k
t
i
oc
no
rdin
g
ecdgdate
©Ian Sommerville 2000
T a
l#pkeisngbok
Software Engineering, 6th edition. Chapter 7 Slide 34
Object aggregation
Aggregation model shows how classes which are
collections are composed of other classes
Similar to the part-of relationship in semantic
data models
C tral
eancp
Q u
o
rlaietsn
e ry
C
gceF
no o d
reartm e ien
aitsnr D frsigo m
ipn,saoy ln
ys
i l
fa
n g
ci
l a
t g e
s
a d
l tos facils
©Ian Sommerville 2000
c h e k ng I
mpo rt
/
e x po
r
t
Software Engineering, 6th edition. Chapter 7 Slide 40
Analysis workbench components
Diagram editors
Model analysis and checking tools
Repository and associated query language
Data dictionary
Report definition and generation tools
Forms definition tools
Import/export translators
Code generation tools