You are on page 1of 43

Systemmodels

Abstractdescriptionsof
systemswhoserequirements
arebeinganalysed

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide1

Objectives

Toexplainwhythecontextofasystemshouldbe
modelledaspartoftheREprocess
Todescribebehaviouralmodelling,data
modellingandobjectmodelling
Tointroducesomeofthenotationsusedinthe
UnifiedModelingLanguage(UML)
ToshowhowCASEworkbenchessupport
systemmodelling

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide2

Topicscovered

Contextmodels
Behaviouralmodels
Datamodels
Objectmodels
CASEworkbenches

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide3

Systemmodelling

Systemmodellinghelpstheanalysttounderstand
thefunctionalityofthesystemandmodelsare
usedtocommunicatewithcustomers
Differentmodelspresentthesystemfrom
differentperspectives

Externalperspectiveshowingthesystemscontextor
environment
Behaviouralperspectiveshowingthebehaviourofthesystem
Structuralperspectiveshowingthesystemordataarchitecture

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide4

Structuredmethods

Structuredmethodsincorporatesystemmodelling
asaninherentpartofthemethod
Methodsdefineasetofmodels,aprocessfor
derivingthesemodelsandrulesandguidelines
thatshouldapplytothemodels
CASEtoolssupportsystemmodellingaspartofa
structuredmethod

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide5

Methodweaknesses

Theydonotmodelnonfunctionalsystem
requirements
Theydonotusuallyincludeinformationabout
whetheramethodisappropriateforagiven
problem
Themayproducetoomuchdocumentation
Thesystemmodelsaresometimestoodetailed
anddifficultforuserstounderstand

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide6

Modeltypes

Dataprocessingmodelshowinghowthedatais
processedatdifferentstages
Compositionmodelshowinghowentitiesare
composedofotherentities
Architecturalmodelshowingprincipalsubsystems
Classificationmodelshowinghowentitieshave
commoncharacteristics
Stimulus/responsemodelshowingthesystems
reactiontoevents

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide7

Contextmodels

Contextmodelsareusedtoillustratethe
boundariesofasystem
Socialandorganisationalconcernsmayaffectthe
decisiononwheretopositionsystemboundaries
Architecturalmodelsshowtheasystemandits
relationshipwithothersystems

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide8

S
e
c
u
r
i
t
y
s
y
m
racsyoaunectm
B
higA
A
c
o
u
n
t
d
a
t
b
a
s
e
u
t
o

e
l
r
s
y
m
rcsoyuantcm
B
h
U
s
a
g
e
er M
d
t
b
asinytem
ance

ThecontextofanATMsystem

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide9

Processmodels

Processmodelsshowtheoverallprocessandthe
processesthataresupportedbythesystem
Dataflowmodelsmaybeusedtoshowthe
processesandtheflowofinformationfromone
processtoanother

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide10

D
e
l
i
v
e
r
y
n
o
t
D
e
l
i
v
e
r
y
E
q
u
i
p
m
e
n
t
C
h
e
c
k
d
n
o
t
s
c
.
s
p
.
ieq
fruE
S
p
e
c
y
A
c
e
p
t
C
h
e
c
k
V
a
l
i
d
a
t
e
G
e
t

c
o
s
t
m
trqu
n
d
e
l
i
v
r
y

o
f
d
l
i
v
r
d
s
p
e
c
f
i
o
n
s
i
m
a
e
d
q
u
m
n
t
m
s
S
p
c
.

+
s
u
l
i
e
r
I
n
s
t
a
l
t
i
o
n
O
r
d
e
e
t
m
a
t
iS
p
m
e
n
t
i
r
u
c
s
n
o
t
i
f
c
a
t
i
o
n
S
u
p
l
i
e
r

l
i
s
t
s
c
.
P
l
a
c
e
ldatbaiser suF
u
p
ipnlders sC
h
o
s
e
I
n
s
t
a
l
e
q
u
i
p
m
n
t
uplirB
e
q
u
i
p
m
e
n
t
o
r
d
rd
O
d
e
tfakrilm
I
s
a
l
t
i
o
n
len
os+
rsigC
a
c
e
p
c
e
A
c
e
p
t
d
e
l
i
v
r
d
ndoreanfodrmqum
h
e
c
k
d
n
E
q
u
i
p
m
e
n
t
d
e
t
a
l
s
E
dqautipbm
asent

Equipmentprocurementprocess

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide11

Behaviouralmodels

Behaviouralmodelsareusedtodescribethe
overallbehaviourofasystem
Twotypesofbehaviouralmodelareshownhere

Dataprocessingmodelsthatshowhowdataisprocessedasit
movesthroughthesystem
Statemachinemodelsthatshowthesystemsresponsetoevents

Bothofthesemodelsarerequiredfora
descriptionofthesystemsbehaviour

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide12

Dataprocessingmodels

Dataflowdiagramsareusedtomodelthe
systemsdataprocessing
Theseshowtheprocessingstepsasdataflows
throughasystem
Intrinsicpartofmanyanalysismethods
Simpleandintuitivenotationthatcustomerscan
understand
Showendtoendprocessingofdata

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide13

C
h
e
c
k
d

a
n
d
C
o
m
p
l
e
t
d
S
i
g
n
e
d
S
i
g
n
e
d
S
e
n
d

t
o
s
i
g
n
o
r
e
r
d

f
o
r
m
o
r
d

f
o
r
m
o
r
d

f
o
r
m
s
u
p
l
i
e
r
+

rodrebtad
O
einlfsokr+
o
t
f
i
c
a
t
i
n
C
o
m
p
l
e
t
V
a
l
i
d
a
t
e
R
e
c
r
d
e

f
o
r
m
o
r
o
r
d
m O
A
d
j
u
s
t
av
iblagbe+
rtd
eailsorS
idgn
efodrm
O
r
d
e
a
m
o
u
n
t

c
d
e
t
i
l
s
O
rfd
eilsB
ufidlget
OrderprocessingDFD

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide14

Dataflowdiagrams

DFDsmodelthesystemfromafunctional
perspective
Trackinganddocumentinghowthedata
associatedwithaprocessishelpfultodevelopan
overallunderstandingofthesystem
Dataflowdiagramsmayalsobeusedinshowing
thedataexchangebetweenasystemandother
systemsinitsenvironment

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide15

Idnepsu
tignR
V
a
l
i
d
C
h
e
c
k
d
D
e
s
i
g
n
U
s
e
r
d
e
s
g
n
d
s
i
g
n
a
n
l
y
s
r
p
o
t
sedD
D
ifed
e
g
n
D
e
s
i
g
n
D
e
s
i
g
n
R
e
p
o
r
t
tdatsiebgo
rnacsnsedC
cdrhoesik
gcnh
rdC
k
e
a
n
l
y
e
r
g
n
a
a
n
d
O
u
t
p
ogdenskrealtroncodedD
eatsbigane
CASEtoolsetDFD

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide16

Statemachinemodels

Thesemodelthebehaviourofthesystemin
responsetoexternalandinternalevents
Theyshowthesystemsresponsestostimulisoare
oftenusedformodellingrealtimesystems
Statemachinemodelsshowsystemstatesasnodes
andeventsasarcsbetweenthesenodes.Whenan
eventoccurs,thesystemmovesfromonestateto
another
StatechartsareanintegralpartoftheUML

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide17

F
uw
lerd
p
o
F
u
l

p
o
w
e
r
o
:
s
e
t

=
6
0
T
i
m
e
r
iH
tadlof:dm
W
a
n
g
N
u
m
b
e
r
s
p
l
a
y
O
p
e
r
a
t
i
o
n
S
e
t

i
m
e
F
u
l
e
d
o
:

e
p
o
w
e
r
d
o
:
g
n
u
b
r
v
x
i
s
t
H
a
l
f
p
o
w
e
r
D
o
r
pow
er d
C
a
n
c
e
l
c
l
s
e
d
T
i
m
e
r
D
o
r
S
t
a
r
p
e
n
D
o
r
W
a
i
t
n
g
lo:=
H
a
fs3et0pow
erD
E
n
a
b
l
e
d
p
e
n
d
o
:

d
s
p
l
a
y
d
o
:

d
i
s
p
a
y
D
o
r
m
e
'
R
'
c
l
s
e
d
ido:'W
sdabp
ltinedgy'

Microwaveovenmodel

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide18

Microwaveovenstatedescription

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide19

Microwaveovenstimuli

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide20

Statecharts

Allowthedecompositionofamodelintosub
models(seefollowingslide)
Abriefdescriptionoftheactionsisincluded
followingthedoineachstate
Canbecomplementedbytablesdescribingthe
statesandthestimuli

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide21

O
p
e
r
a
t
i
o
n
T
i
m
e
C
h
e
c
k
i
n
g
C
o
k
O
K
d
o
:

d
o
:

r
u
n
s
t
a
u
s
g
e
r
a
t
o
r
E
m
i
t
e
r
T
ufrntabdloA
e:ldeavirsm
T
i
m
e
o
u
t
f
a
u
l
D
o
n
e
d
o
:

b
u
z
r

o
n
pnltayD
f
5
s
c
.
o
r
C
a
n
c
e
l
p
e
n
D
isabled W
aitng

Microwaveovenoperation

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide22

Semanticdatamodels

Usedtodescribethelogicalstructureofdata
processedbythesystem
Entityrelationattributemodelsetsouttheentities
inthesystem,therelationshipsbetweenthese
entitiesandtheentityattributes
Widelyusedindatabasedesign.Canreadilybe
implementedusingrelationaldatabases
NospecificnotationprovidedintheUMLbut
objectsandassociationscanbeused

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide23

D
e
s
i
g
n
n
a
m
1
1
d
c
r
p
t
o
C

e
M
a
i
s

a
h
a
s

l
i
n
k
s
hasnodensN
1
n
n
1
o
d
e
L
i
n
k
h
a
s

l
i
n
k
s
n
a
m
a
m
e
t
y
p
t
y
p
1
2
l
i
n
k
s
1
1
haslbelsnntiecL
h
a
s

l
b
e
l
s
axom
beln

Softwaredesignsemanticmodel

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide24

Datadictionaries

Datadictionariesarelistsofallofthenamesused
inthesystemmodels.Descriptionsoftheentities,
relationshipsandattributesarealsoincluded
Advantages

Supportnamemanagementandavoidduplication
Storeoforganisationalknowledgelinkinganalysis,designand
implementation

ManyCASEworkbenchessupportdata
dictionaries

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide25

Datadictionaryentries

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide26

Objectmodels

Objectmodelsdescribethesystemintermsof
objectclasses
Anobjectclassisanabstractionoverasetof
objectswithcommonattributesandtheservices
(operations)providedbyeachobject
Variousobjectmodelsmaybeproduced

Inheritancemodels
Aggregationmodels
Interactionmodels

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide27

Objectmodels

Naturalwaysofreflectingtherealworldentities
manipulatedbythesystem
Moreabstractentitiesaremoredifficulttomodel
usingthisapproach
Objectclassidentificationisrecognisedasa
difficultprocessrequiringadeepunderstandingof
theapplicationdomain
Objectclassesreflectingdomainentitiesare
reusableacrosssystems

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide28

Inheritancemodels

Organisethedomainobjectclassesintoahierarchy
Classesatthetopofthehierarchyreflectthe
commonfeaturesofallclasses
Objectclassesinherittheirattributesandservices
fromoneormoresuperclasses.thesemaythenbe
specialisedasnecessary
Classhierarchydesignisadifficultprocessif
duplicationindifferentbranchesistobeavoided

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide29

TheUnifiedModelingLanguage

Devisedbythedevelopersofwidelyusedobject
orientedanalysisanddesignmethods
Hasbecomeaneffectivestandardforobjectoriented
modelling
Notation

Objectclassesarerectangleswiththenameatthetop,attributesinthe
middlesectionandoperationsinthebottomsection
Relationshipsbetweenobjectclasses(knownasassociations)are
shownaslineslinkingobjects
Inheritanceisreferredtoasgeneralisationandisshownupwards
ratherthandownwardsinahierarchy

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide30

iC
L
b
r
a
y

i
t
e
m
tN
aT
lA
o
g
u
e
n
cS
A
iC
tytoacapm
q
qteusbligreuo(f)cudoaptbieesr
u
s
o
D
i
s
p
o
s

I
u
e
(
)
R
t
r
n
lT
iitlesrheditem T
P
u
b
R
e
c
o
r
d
e

i
t
e
m
i
t
l
M
d
u
m
C
o
m
p
u
t
e
r
B
o
k
F
i
l
m
M
a
g
z
i
n
e
p
r
g
a
m
D
i
r
e
c
t
o
r
tE
A
u
h
r
Y
e
a
r
a

f
e
a
s
e
V
e
r
s
i
n
iP
d
n
I
s
u
latfom
lIS
tB
b
iN
c
a
ondate sbuP
Libraryclasshierarchy

iN
L
b
r
a
y

u
s
e
r
aA
m
e
d
s
P
h
o
n
iD
R
tesrea(io
g
)r#
n
R
e
a
d
r
B
o
r
w
e
r
ItafM
team
A
filtion S
xs.nlsanS
t
u
d
e
n
t
D
eparm
enphoneM
am
joersabjrcs
H
Userclasshierarchy

Multipleinheritance

Ratherthaninheritingtheattributesandservices
fromasingleparentclass,asystemwhich
supportsmultipleinheritanceallowsobject
classestoinheritfromseveralsuperclasses
Canleadtosemanticconflictswhere
attributes/serviceswiththesamenamein
differentsuperclasseshavedifferentsemantics
Makesclasshierarchyreorganisationmore
complex

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide33

B
o
k
V
o
i
c
e

r
c
o
r
d
i
n
g
tE
A
u
h
r
S
p
a
k
iP
d
n
D
u
r
t
i
o
n
lIS
tB
b
iN
c
a
ondateR
ecdgdate
l#pkeisngbok
T
a

Multipleinheritance

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide34

Objectaggregation

Aggregationmodelshowshowclasseswhichare
collectionsarecomposedofotherclasses
Similartothepartofrelationshipinsemantic
datamodels

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide35

N
tC
S
u
d
y
p
a
c
k
tIneatucoirle
rY
o
s
e
m
b
excotusreT
L
iapdeost.ape
V
lideslidesT
O
H
P
sC
iredtgnm
A
entS
n
E
x
e
r
c
i
s
e
S
o
l
u
t
i
o
n
s
eixatgrm
#D
P
rosblm
ptonT
D

Objectaggregation

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide36

Objectbehaviourmodelling

Abehaviouralmodelshowstheinteractions
betweenobjectstoproducesomeparticular
systembehaviourthatisspecifiedasausecase
Sequencediagrams(orcollaborationdiagrams)in
theUMLareusedtomodelinteractionbetween
objects

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide37

L
i
b
1
:
E
c
a
t
:
:
L
i
b
r
a
y

I
t
e
m
N
e
t
S
r
v
e
C
l
o
g
:L
ibrayU
seL
roD
k
u
p
iA
scIeuppetllaiycenIsuelicen
C
o
m
p
r
e
s
D
eliver

Issueofelectronicitems

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide38

CASEworkbenches

Acoherentsetoftoolsthatisdesignedtosupport
relatedsoftwareprocessactivitiessuchas
analysis,designortesting
Analysisanddesignworkbenchessupportsystem
modellingduringbothrequirementsengineering
andsystemdesign
Theseworkbenchesmaysupportaspecificdesign
methodormayprovidesupportforacreating
severaldifferenttypesofsystemmodel

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide39

tiagruocm
tlsreidng gfR
eancp
rlaietsn
o
tdiconry dS
D
a
C
e
n
t
r
a
l
Q
u
e
r
y
C
o
d
e
ien
frsigo
ipn,saoy
m
n
l
a
n
g
a
g
e
gceF
no
reartm
aitsnr D
f
c
i
l
t
s
l
y
s
i
I
m
p
o
r
t
/
e
x
p
o
r
t
a
d
c
h
e
k
n
g
l tos facils

Ananalysisanddesignworkbench

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide40

Analysisworkbenchcomponents

Diagrameditors
Modelanalysisandcheckingtools
Repositoryandassociatedquerylanguage
Datadictionary
Reportdefinitionandgenerationtools
Formsdefinitiontools
Import/exporttranslators
Codegenerationtools

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide41

Keypoints

Amodelisanabstractsystemview.Complementary
typesofmodelprovidedifferentsysteminformation
Contextmodelsshowthepositionofasysteminits
environmentwithothersystemsandprocesses
Dataflowmodelsmaybeusedtomodelthedata
processinginasystem
Statemachinemodelsmodelthesystemsbehaviour
inresponsetointernalorexternalevents

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide42

Keypoints

Semanticdatamodelsdescribethelogicalstructure
ofdatawhichisimportedtoorexportedbythe
systems
Objectmodelsdescribelogicalsystementities,
theirclassificationandaggregation
Objectmodelsdescribethelogicalsystementities
andtheirclassificationandaggregation
CASEworkbenchessupportthedevelopmentof
systemmodels

IanSommerville2000

SoftwareEngineering,6thedition.Chapter7

Slide43

You might also like