Software
Software
pter7 ■ Des
ignandi
mpl
ement
ati
on
product
shavebeenpla
tfor
m produc
tsrat
herthanappl
ic
a t
ionsyst
ems.Therea
rea
li
mi t
ednumberofde
velope
rswhomi ghtb
eint
e r
est
edinspeci
ali
zedappl
ica
ti
onsys
-
te
ms .Assuch,maki
ngas oft
waresyst
em ope
ns our
cedo e
sn otguar
ant
eecommu-
ni
tyinvolv
ement.
7
.4.
1 Opens
our
cel
ice
nsi
ng
Althoughaf u
nda mentalpri
ncipleofo pen-s
our c
ede velo pmentisthats ourcecode
shouldbef ree
lya vai
lable,t
hisdo esnotme a
nt hatanyo nec a
ndoa stheywi shwi t
h
thatcode.Legally,t
hede vel
operoft hec ode(ei
therac ompa n
yora nindivi d
ual)sti
ll
own sthec ode.The yca nplacer est
ric
tionsonho witi sus edbyinc l
udi nglegall
y
bindingc ondit
ionsina nope ns ources oft
wa r
el ic
ense( St
.La u
ren t
,2004 )
.So me
opens ourcedeve l
oper
sbe li
evetha tifanop ensourcec ompon entisu s
e dtode vel
op
ane ws ystem,thent h
a tsys
tems houlda ls
ob eo pens o urc
e.Othersa rewi ll
ingto
all
owt heircodet obeus edwithoutt hi
sr est
ri
ction.Thede vel
opeds ystemsma ybe
propriet
aryands oldasc l
osedsou rcesystems.
Mo stopenso ur
celicense
sa red eri
vedf r
omoneo fthr eegener
almo dels:
1. TheGNUGe ner
alPubli
cLicens
e(GPL)
.Thi
sisaso-c
all
ed‘r
eci
procal
’li
cense
t
hat,si
mpl
is
ti
cal
ly,meanstha
tifyouus
eopensour
cesoft
wareth
atisli
cense
d
undert
heGPLli
cense,t
henyoumu s
tmaket
hatsof
twar
eopensourc
e.
2. TheGNULe s
serGe neralPubl
icLicense(LGPL) .Th
isi
sav ari
antoft
heGPL
l
ice
nsewhereyouc anwr it
ec o
mp onentstha
tlinktoope
ns ourc
ecodewit
hout
hav
ingtopubli
shthes ourceofth
e s
ec omponents.Howeve
r,ifyoucha
ngethe
l
ice
nsedcomponent,theny oumustpublis
hthisasopensou
rce.
3. TheBe rkleySta
nda r
dDi st
ributi
on(BSD)Li cense.Thisisanon- r
ecipr
ocal
l
icense
, whichmeansyoua r
enotobligedtorepublis
ha nychangesormo di
fi
ca-
t
ionsma detoopensourcecode.Youcanincl
ud et
hec odeinpropri
eta
rysyste
ms
t
hata r
es ol
d.Ifyouus eopens our
cecompone nts,youmus tacknowledgethe
or
iginalcre
atoro
fthec ode
.
Licensingi ss
uesa reimp or t
a nt be causei fyouus eo p
en-sourcesoft
wareasp artof
aso ft
wa rep roduct
,thenyouma ybeob ligedb yt h
et e
rmsoft helice
nsetoma key our
ownpr oduc topens ource.I fy oua ret ryingt os e
llyours oft
wa r
e,youma ywi sht o
keepi tse cret.Thisme anst hatyo uma ywi shtoa voidus i
ngGPL- l
icen
sedope n
sources oft
wa r
einitsde ve l
opme nt.
Ifyoua r ebuil
dings oftwa ret ha trunso na nope nsourc
epl atf
orm,suchasLi nux,
thenlicense sarenotapr o blem.Ho we ve r
, assoona syous tar
tincl
udingopens ource
compone ntsi nyours oftwa rey oune edt os etupproc e
ssesa nddatabase
st oke ep
tr
ackofwha t’sbee
nu seda ndt h eirl i
cens ec ondit
ions.Bay e
rsdorf
er(2007)sugge s
ts
thatcompa niesmana gingpr ojec tst hatus eope nsources h
ould:
1. Es
tabl
is
has y
ste
mf ormai
nta
iningi
nformat
ionabo
utope
nsour
cecompone
nts
t
hatar
ed o
wnloa
dedandused.Youhavetokeepacop
yofth
elic
ens
eforeach
Chapt
er7 ■ Keypoi
nts 201
c
ompone
nttha
twasval
idatth
etimethecomponentwasused.Li
cens
esma
y
c
han
gesoyounee
dtoknowthecond
iti
onst
hatyouhaveagr
eedto.
2
. Bea war
eofthediff
ere
nttype
sofli
censesandunder
sta
ndho wacomponen
tis
li
cense
dbeforei
tisuse
d.Youmaydecidetouseacomponenti
nonesyst
embut
notinanot
herbe
causeyouplant
ousethesesys
temsindif
fer
entways
.
3
. Beawa
reofe v
olut
ionpathwa
ysforc
ompone
nts.Younee
dtokno
wabi ta
bout
t
heopensourcepr
ojectwherec
ompone
ntsaredevel
opedt
ounder
sta
ndhow
t
heymightc
hangeinfutu
re.
4
. Educatepeopleaboutopensour
ce.It’
snotenought
ohaveproc
edur
esinpl
ace
t
oe nsur
ec ompli
ancewi t
hli
cens
ec ondi
ti
ons.Youal
sone
edtoeduc
atede
vel
op-
er
sa boutopensourc
ea ndopensourcel
ice
nsing.
5
. Haveaudit
ingsyst
emsinpla
ce.Devel
opers
,und e
rtightde
adl
ines
,mightbe
te
mpte
dt obrea
ktheter
msofali
cens
e.Ifpos
sibl
e,youshoul
dhavesof
twar
ein
pl
acet
od et
ectandst
opthi
s.
6
. Par
ti
cip
a t
eint
heopensour
cecommuni
ty
.Ifyoure
lyonopensourceprod
ucts
,
youshoul
dpar
ti
cip
atei
nthecommuni
tyandhel
psuppor
tthe
irdev
elopment.
Theb usi
nessmode lofsoftwareischanging.Iti
sb ecomingincr
easi
nglydif
fi
cult
t
obui l
dab usines
sbys el
lingspecia
lizedsoftwaresystems.Ma nycompanie
sp r
efe
r
t
oma ketheirsoft
wareopens ourceandthens el
lsupportandconsul
tanc
ytosoft
wa r
e
u
sers.Thistrendisl
ikel
yt oa cc
eler
ate,withincr
e a
singuseo fopensourc
esoft
wa r
e
a
ndwi thmor eandmor esoft
wa reavai
lableinthisform.
KEY POI
NTS
■ Sof
twa
rede
signandi
mpl
ement
ati
onar
eint
erl
eav
eda
cti
vi
ti
es.
Thel
evel
ofdet
ail
int
hedes
ign
dependsonthet
ypeofs
yst
embei
ngde
vel
opeda
ndwhet
hery
ouar
eus
ingapl
an-
dri
venor
agi
leapproac
h.
■ Thepr
oce
ssofobj
ect
-or
ient
eddes
igni
ncl
udesa
cti
vi
ti
est
odes
ignt
hes
yst
emar
chi
tec
tur
e,
i
dent
if
yobjec
tsi
nt hesys
tem,des
cri
bet
hedes
ignus
ingdi
ff
erentobj
ectmodel
s,anddoc
ument
t
hecomponenti
nterf
aces
.
■ Ar
angeofdi
ff
erentmodel
sma
ybepr
oduc
eddur
inganobj
ect
-or
ient
eddes
ignpr
oces
s.T
hes
e
i
ncl
udest
ati
cmodel
s(c
lassmodel
s,gener
ali
zat
ionmode
ls,
ass
oci
ati
onmodel
s)anddy
nami
c
model
s(s
equenc
emodels
, s
tat
emachinemodel
s )
.
■ Componenti
nter
fac
esmus
tbedef
inedpr
eci
sel
ysot
hatot
herobj
ect
sca
nus
ethem.AUML
i
nter
fac
est
ereot
ypemaybeus
edt
odef
inei
nter
fac
es.
■ Whendev
elopi
ngs
oft
war
e,y
ous
houl
dal
way
scons
ide
rthepos
sibi
li
tyofr
eus
ingex
ist
ing
s
oft
war
e,ei
thera
scomponent
s,s
erv
ices
,orc
ompl
etes
yst
ems
.
202 Cha
pter7 ■ Des
ignandi
mpl
ement
ati
on
■ Conf
igur
ati
onmanagementi
sthepr
oces
sofmanagi
ngc
hangest
oane
vol
vi
ngs
oft
war
esy
stem.
I
tises
sent
ial
whenat
eam ofpeopl
ear
ecooper
ati
ngt
odev
elops
oft
war
e.
■ Mos
tsof
twar
edev
elopmenti
shos
t-t
argetdev
elopme
nt.
Youus
eanI
DEonahos
tmac
hinet
o
de
vel
opt
hes
oft
war
e,whi
chi
str
ans
fer
redt
oat
argetmac
hinef
orex
ecut
ion.
■ Opens
our
cede
vel
opme
nti
nvol
vesmaki
ngt
hes
our
cec
odeofas
yst
empubl
ic
lyav
ail
abl
e.T
his
me
anst
hatmanypeopl
ecanpr
opos
echa
ngesandi
mpr
ove
ment
stot
hes
oft
war
e.
FURTHER READI
NG
Desi
gnPatt
erns:El
ement sofReusableObject
-or
ientedSof
twar
e.Thi
sist
heori
ginals
oftwar
e
pat
ter
nshandbookthatintroduc
eds oft
warepatter
nstoawidecommunit
y.(
E.Gamma, R.Hel
m,
R.J
ohnsonandJ.Vl
iss
ides ,Addi
son-Wesley
,1995.)
ApplyingUMLandPat terns:AnIntroducti
ontoObjec
t-ori
entedAnalysi
sandDesigna
ndIter
ati
ve
Development,3rdedit
ion. Lar
ma nwrite
sc l
ear
lyonobject-
orienteddes
ignand,a
swellas
dis
cus si
ngtheuseoftheUML .Thisisagoodintr
oductiontous i
ngpatt
ernsi
nthedesi
gnproce
ss.
(C.Larman,
Pre nt
iceHall
, 2004.)
ProducingOpenSourceSof
twar
e:Howt oRunaSuccessfulFr
eeSoft
wareProject
.Hi
sbookisa
comprehensiv
eguidetothebac
kgroundtoopensourcesoft
ware,l
ice
nsingis
s ue
s,andthe
pract
icali
ti
esofr
unninganopensourc
ede v
elopmentprojec
t.(
K.Fogel
,O’Rei
llyMediaI
nc.
,2008.
)
F
urt
herr
eadingons
oft
war
ereus
eiss
ugges
tedi
nCha
pter1
6andonc
onf
igur
ati
onmana
gement
i
nChapt
er25.
EXERCI
SES
7.
1.Usingthestr
uctur
ednota
tionshowninFi
gur
e7.
3,speci
fyt
heweat
herstat
ionusecas
esf
or
Reportst
atusandReconf
igure.
Youshoul
dmakereas
onabl
eass
umptionsaboutt
he
funct
ional
it
ythati
srequi
redhere.
7.
2.Assumethatt
heMHC-PMSisbei
ngdevel
opedusi
nganobjec
t-or
ient
edappr
oac
h.Dr
awaus
e
cas
ediagramshowi
ngatl
eastsi
xpos
sibl
eusecasesf
ort
hissyst
em.
7.
3.Us i
ngt heUMLgr aphi
calnotat
ionf orobjec
tclass
es,designthef
oll
owi
ngobj
ectc
lasses
,
identi
fyingattri
butesandope r
a t
ions .Useyourownexper i
encet
odeci
deont
heattr
ibutes
andoper a
tionsthatshouldbea ssociate
dwi t
htheseobjects.
■ at
elephone
■ apr
int
erf
oraper
sona
lcomput
er
■ aper
sonal
ster
eos
yst
em
■ abankac
count
■ al
ibr
aryc
ata
log
Cha
pter7 ■ Ref
erenc
es 203
7.
4.Usi
ngtheweathers
tat
ionobj
ect
sident
if
iedi
nFi
gur
e7.6asas t
art
ingpoi
nt,i
dent
if
yfurt
her
obj
ect
sthatmaybeusedinthi
ssyst
em.Desi
gnani
nheri
tanc
ehierar
chyf
ortheobj
ectstha
t
youhavei
dent
ifi
ed.
7.
5.Developthedes
ignoft
heweatherstati
ontos
howtheint
erac
tionbe twee
nt hedat
acoll
ect
ion
subsyst
emandt hei
nst
rument
st ha
tc ol
lec
tweat
herdat
a.Uses equencediagr
amstoshow
thi
sinter
acti
on.
7.
6.I
dent
if
yposs
ibl
eobj
ect
sinthefol
lowi
ngsys
temsanddevel
opanobje
ct-
ori
ent
eddes
ignf
or
t
hem.Youmaymakean
yreasonablea
ssumpti
onsabout
thesy
stemswhender
ivi
ngt
hedesi
gn.
■ Agr
oupdi
aryandt
imemanagements
yst
emi
sint
endedt
osuppor
tthet
imet
abl
ingof
me et
ingsandappoi ntmentsacr
ossagroupofco-workers
. Whenanappoint
menti stobe
ma dethatinvolvesanumberofpeople,t
hesyste
mf i
ndsac ommonsloti
neachoft heir
diari
esa nda r
rangestheappoi
ntmentfort
hatti
me.Ifnoc ommons l
otsar
eav a
ilable,i
t
inter
actswi t
htheus ert
orearr
angehisorherper
sonal di
arytomakeroom f
orthe
appointme nt.
■ Af
il
li
ngs
tat
ion(
gass
tat
ion)i
stobes
etupf
orf
ull
yaut
omat
edoper
ati
on.
Dri
ver
s
swipetheircreditcardthroughar eaderconnectedt ot
hepump;t heca r
disverif
iedby
communi cat
ionwi thac reditcompanyc omputer
,andaf uell
imitisestabli
shed.Thedr i
ver
ma ythentaket hefuelrequired.Whenf ueldel
iveryiscompleteandt hepumphos eis
retur
nedt oit
shol ster
,thedr i
ver’
screditcar
da c
c ounti
sdebi t
edwi ththec ostofthefuel
taken.Thecreditcardisr et
urnedafterdebiti
ng.Ifthecardisinvali
d,thepumpr eturnsit
beforefueli
sdi spensed.
7.
7.Dr
awas equencediagr
amshowi
ngtheint
erac
ti
onsofobj
ect
sinagr
oupdi
arys
yst
emwhena
gr
oupofpeoplearearr
angi
ngameeti
ng.
7.
8.Dr
awaUMLs t
atedi
agr
ams
howi
ngt
hepos
sibl
est
atec
hangesi
nei
thert
hegr
oupdi
aryort
he
f
il
li
ngs
tat
ionsys
tem.
7.
9.Usi
ngexamples
,expl
ainwhyconf
igur
ati
onmanagementi
simpor
tantwhenat
eam ofpeopl
e
ar
edevel
opingasoft
warepr
oduct
.
7.
10.As ma l
lcompanyhasdevelopedaspeci
alizedproductthati
tc onf
igur esspeci
al
lyfore
ach
customer.Newcustomersusuall
yhavespec i
fi
crequi
rement stobei ncorporat
edintot
hei
r
system,andtheypayforthesetobedeveloped.Thecompa nyhasanoppor t
unit
ytobidf
oranew
contract
,whichwouldmor et
handoubleitscustomerbas e.
T henewc ust
o meral
sowishe
sto
haves omeinvol
vementintheconfi
gur
ationo ft
hes y
stem. Expla
inwhy ,i
nthesecir
cumst
ance
s,i
t
mightbeagoodi deaforthecompanyown ingthesoft
wa retoma kei topensource.
REFERENCES
Abbot
t,R.
(1983)
.‘Pr
ogr
amDes
ignbyI
nfor
malE
ngl
is
hDes
cri
pti
ons
’.Comm.
ACM,
26(
11)
,882–
94.
Alex
ander
,C.,Is
hikawa,
S.andSi
lver
stein,M.(1
977
).APat
ter
nLanguage:
Towns
,Bui
ldi
ng,
Constr
uct
ion.Oxfor
d:Oxf
ordUni
vers
ityPress
.
Bay
ers
dorf
er,
M.(
2007)
.‘Managi
ngaPr
oje
ctwi
thOpenSour
ceComponent
s’.
ACM I
nter
act
ions
,
14(
6),
33–4.
204 Cha
pter7 ■ Des
ignandi
mpl
ement
ati
on
Bec
k,K.andCunni ngham,W.(1
989).‘
ALabor
ator
yforT
eachi
ngObj
ect-
Orient
edThinki
ng’
.Pr
oc .
OOPSLA’
89( ConferenceonObj
ect
-ori
ent
edProgr
amming,Syst
ems
,LanguagesandAppli
cat
ions)
,
ACMPress.1
– 6.
Bel
lagi
o,D.E.andMil
li
gan,T.J
.(2005)
.Soft
war
eConfi
gurat
ionManagementSt
rat
egiesandI
BM
Rat
ionalCl
ear
c as
e:APra
cti
calIntr
oduct
ion.
Bost
on:Pear
sonEducat
ion(
IBM Pr
ess)
.
Busc
hmann,
F.,
Henney,
K.andSchmi
dt,D.
C.(
2007a)
.Pat
ter
n-or
iente
dSoft
wareAr
chi
tec
tur
e
Vol
ume4:APatt
ernL
anguagef
orDis
tri
but
edComputi
ng.
NewY ork:J
ohnWil
ey&Sons.
Busc
hmann,
F.,
Henney,
K.andSchmidt
,D.C.(2007b)
.Patt
ern-
ori
entedSof
twar
eAr
chi
tec
tur
e
Vol
ume5:OnPatt
ernsa
ndPatt
ernLanguages
. NewYork:J
ohnWiley&Sons.
Buschmann,F
.,Meuni
er,
R.,Rohner
t,H.andSommer
lad,P.(
1996).Pat
ter
n-or
ient
edSof
twar
e
Arc
hitec
tur
eVolume1:ASystemofPatt
erns.
NewYor
k:JohnWi l
ey&Sons .
Ca
rls
on,
D.(
2005)
.Ec
li
pseDi
sti
ll
ed.
Bos
ton:Addi
son-
Wes
ley
.
Cl
ayber
g,E.
andRubel
,D.
(2006)
.Ec
li
pse:Bui
ldi
ngComme
rci
al-
Qua
lit
yPl
ug-
Ins
.Bos
ton:Addi
son
Wesl
ey.
Coa
d,P
.andY
our
don,
E.(
1990)
.Obj
ect
-or
ient
edAnal
ysi
s.Engl
ewoodCl
if
fs,
NJ:Pr
ent
ic
eHal
l.
Gamma,E.
,Helm,R.
,Johnson,R.andVl
is
sides,
J.(
1995)
.Desi
gnPat
ter
ns:El
ement
sofReus
abl
e
Obj
ect
-Ori
ent
edSoft
wa re.
Rea di
ng,Mass.
:Addi
son-Wes
ley
.
Harel
,D.(1987).‘
Stat
echar
ts:AVi
sual
For
mal
is
mforCompl
exSy
stems
’.Sc
i.Comput
.Pr
ogr
ammi
ng,
8(3),231
–7 4.
Ki
rcher
,M.andJai
n,P
.(2004)
.Pat
tern-
Ori
ente
dSof
twareAr
chi
tec
tur
eVol
ume3:Pa
tte
rnsf
or
Re
sourceManagement.NewYor
k:JohnWil
ey&Sons.
Ma
ssol
,V.(
2003)
.JUni
tinAc
tion.
Greenwi
ch,CT
:Ma
nni
ngPubl
ic
ati
ons
.
Pi
lato,C.,Coll
ins-
Sus
sman,B.
andFit
zpat
ri
ck,
B.(
2008)
.Ver
sionCont
rolwi
thSubv
ers
ion.
Sebastopol,Cali
f.
:O’
Rei
ll
yMediaI
nc.
Ra
ymond, E.S.(
2001)
.TheCathedral
andtheBazaar:Mus
ingsonLi
nuxa
ndOpe
nSour
cebyan
Ac
cident
alRevol
uti
onary.
Sebastopol.
Cal
if
.:O’
Reil
lyMedia,I
nc.
Schmidt
,D.,St
al,M.
,Rohnert
,H.andBusc
hmann,F
.(2000).Pa
tter
n-Ori
ent
edSof
twar
eArchi
tec
tur
e
Volume2:Patt
ernsf
orConcur
rentandNet
wor
kedObjects
.NewY ork:J
ohnWil
ey&Sons.
Shlaer
,S.andMellor
,S.(1
988).
Objec
t-Or
ient
edSy
ste
msAnal
ysi
s:Mode
lingt
heWor
ldi
nDat
a.
EnglewoodCli
ff
s,NJ:Your
donPres
s.
St
.Laure
nt,A.(
2004)
.Under
standi
ngOpenSour
ceandF
reeSof
twar
eLi
cens
ing.
Sebas
topol
,Ca
lif
.:
O’
Reil
lyMediaI
nc.
Wirf
s-Br
ock
,R.,Wi
lkers
on,B.andWei
ner
,L.
(1990)
.Des
igni
ngObj
ect
-Or
ient
edSof
twar
e.
Engl
ewoodCli
ff
s,NJ:Pr
enti
ceHall
.
8
Sof
twar
etes
ting
Obj
ect
ive
s
T
heobj
ect
iveoft
hischapt
eristoi
ntr
oduc
esoft
wa r
etesti
ngand
s
oft
war
etesti
ngproc
esses.Whenyouhav
ereadthechapter
,youwi
ll
:
■ under
standt
hestagesoft
esti
ngf
rom t
est
ing,
dur
ingdev
elopment
toac
ceptanc
etes
tingbysyst
emcust
omers;
■ havebeeni
ntr
oduc
edt
otechni
quest
hathel
pyouchoos
etes
t
cas
esthata
regear
edt
odis
c ov
eri
ngpr
ogramdef
ect
s;
■ under
standtest
-f
irs
tdevel
opment
,whereyoudes
ignt
est
sbef
ore
wri
ti
ngc odeandrunthes
etest
sautomat
ical
ly
;
■ knowthei
mport
a ntdi
ff
erenc
esbet
weenc
omponent,
syst
em,
andre
leas
etes
tingandbeawareofus
ert
est
ingpr
ocess
esand
tec
hni
ques.
Cont
ent
s
8.
1Developmenttesti
ng
8.
2Tes
t-dri
vendevelopment
8.
3Rel
eas etes
ting
8.
4Usertest
ing
206 Cha
pter8 ■ Sof
twar
etes
ting
Testingisint
endedtoshowt ha
tap rogr
amd oeswha ti
tisi
ntendedtodoa ndtodi
s-
cove rpro
gram def
ectsbefor
eitisputint
ous e
.Wh e
nyout estsoft
ware,youexecu
te
apr ogramusingart
if
ici
aldata.
Youc hecktheres
ult
softhetestrunfo
re r
rors
,anom-
ali
es ,ori
nfor
ma t
ionabouttheprogram’snon-f
unct
ionalat
tr
ibutes
.
Thet e
sti
ngprocesshastwodisti
nctgoals
:
1. Tode monstr
atetothed ev
e l
operandthec ust
ome rthatthes of
twaremeetsit
s
re
q ui
rements
.Forcus t
oms oft
wa r
e,thi
sme ansthatther
es houldbeatlea
stone
te
s tf
oreveryrequi
rementinther equi
rementsdocume nt
.Forge neri
csoft
wa r
e
product
s,itmeansthatth
ereshouldbet es
tsforallofthes yst
emfeatur
es,pl
us
comb i
nati
onsofthesefea
tures
,thatwillbeincor
po r
ate
di nt h
eproductr
eleas
e.
2. Todi scoversi
tuat
ionsinwhichthebeha
viorofthesoft
wareisi
nc or
rect,unde
-
sir
a bl
e,o rdoesnotc onfor
mt oit
sspeci
fic
ati
on.Thesea r
eac onsequenceof
softwarede f
ects
.De f
e c
ttest
ingi
sconcer
nedwi t
hrooti
ngoutun des
irablesys
-
tem behaviorsuchassystemcras
hes,
unwa n
tedint
erac
tion
swithothersyste
ms ,
incorr
ectc omputat
ions,anddat
acorr
upt
ion.
Thef i
rstg oall eadstov a l
id ati
ont es t
ing,whe rey oue xpe ctthes ystemt op erform
correc t
lyus ingag ivens etoft estc as
e sth atr eflectthes yste m’se xpec t
e dus e.The
secondgoa ll eadst ode fectt esting,whe ret het estc asesa rede s i
gne dt oe xpos e
defec ts
.Thet estc asesi nde fe ctte s
tingc anbede liberatelyobs curea ndne ednot
ref
le ctho wt hes y st
emi snor ma llyus ed.Ofc ourse ,therei sn ode f
initebound ary
betwe ent he set woa pproa che stot es
ting.Dur ingv al
idationt esting,yo uwi l
lf ind
defec t
si nthes y stem;dur i
ngde fec tte
s ti
ng ,someoft h
et estswi lls howt hatt hepr o-
gramme et
si tsr equireme nts.
Thedi agra ms howni nFi g ure8. 1ma yhe lpt oe xplai
nt hedi f
f er
enc esbe twe en
valida t
iont estinga ndde f
ec tte s
ting.Thi nkoft hes y
s t
em be ingt est
e da sabl a ck
box.Th es ystema cceptsinput sfrom s omei nputs e tIa ndge ne ratesout p utsi na n
outpu tsetO. So meoft heout putswi l
lbee rron eous .Th esea ret heou tputsi ns etOe
thata rege nera t
e dbyt hes yste mi nr espons et oi np utsint h es etI e.Thep r i
orityi n
defec ttest
ingi st of indthos ei nput sint hes etI ebe cause thes ere vealp roble m s w i
th
thes ystem. Va lidationte st
ingi n volvest esti
ngwi t
hc orr
e ctinput st hata r
eout sideI .
e
The ses ti
mul a t
et h esyste mt og ene rat
et hee xpe ctedc orrectou tput s
.
Te st
ingc annotde mo nstratet ha tthes of twa rei sf reeofde fec t
sort ha titwi l
l
beha vea ss pecifiedi ne veryc ir
cums t
a nce.I tisa lwa yspo ssiblet hatat e sttha ty ou
haveo ve r
looke dc oulddi sc ove rf urtherp r obl emswi t
ht hes ys t
em.AsEds ger
Dijks t
ra,ane arl
yc ontri
b ut
ort ot hede v elopme nt ofso f
twa ree ng ineering, eloque ntly
sta
te d(Di j
k strae ta l
.,1972) :
T
est
ingc
ano
nlys
howt
hepr
ese
nceofe
rror
s,n
ott
hei
rabs
enc
e
Tes
ti
ngispa
rto
fab r
oad
erpro
cessofs
oft
wareve
ri
fi
c at
ionandv
ali
dat
ion(
V&V) .
Ve
rif
ic
ati
onandval
ida
ti
onarenott
hesamethi
ng,al
thoughtheya
reoft
enconf
use
d.
Chapt
er8 ■ Sof
twar
etes
ti
ng 207
I
nputTes
tDat
a I
e I
nputsCausi
ng
Anomalous
Behavi
or
Sy
stem
Fi
gure8.1 An Out
putTes
tRes
ult
s Oe Out
putsWhichRev
eal
i
nput-
outputmodel t
hePresenc
eof
ofpr
ogram tes
ti
ng Def
ect
s
Bar
ryBoehm,api
one
erofs
oft
war
een
gin
eer
ing,s
ucc
inc
tl
yex
pre
sse
dthed
iff
ere
nce
be
twee
nthem(Boe
hm,19
79):
■ ‘
Val
ida
ti
on:Ar
ewebu
ildi
ngt
her
igh
tpr
oduc
t?’
■ ‘
Ver
if
ica
ti
on:Ar
eweb
uil
din
gthep
rodu
ctr
ight
?’
Verifi
cationa ndv ali
da tionp roc esse sa rec once rnedwi t
hc he ckin gtha tsoftwa r
e
beingd evelope dme etsit
ss pecif
ica ti
o na n dd e
liverst hefunct
ion ali
tye xpe ct
e db ythe
peoplep ayingf orthes oftwa re.The s eche c ki
ngpr oc essesst
artass oona sr equ i
reme nt
s
becomea vail
ab l
ea ndc o
nt i
n uet hroug ha llstagesoft h edevel
opme ntp roc
e ss.
Thea imofv erifi
c ati
oni st oc hec ktha tthes oft
wa reme et
sitss ta
te dfun cti
on aland
non-functionalr equireme nts .Valida t
ion, ho wev er
, isamor eg eneral process. Thea i
m
ofv a
lidati
oni st oe nsu r
et ha tthes oftwa reme etsth ec ust
omer’se xpe cta
tions .Itgoes
beyonds impl yc heck ingc onf orma nc ewi ththes pec ifi
cati
ontod e mo nstr
a ti
n gthatthe
soft
wa red oeswha tt hec ustome re xpe ct
si ttodo.Va li
d a
ti
oni se ssentialb ecause,as
Idiscus s
edi nCha pt er4 ,req uireme n t
ss pecif
ication sdono ta lwaysr e
fle ctther ea
l
wisheso rne edso fs ystemc us t
ome rsandu sers.
Theu ltima tegoa lofv e ri
ficationa ndv ali
dationp roces
sesi stoe st
a blishc onfi
-
dencet hatthes o f
twa res ys t
e mi s‘ fi
tf orp urpo se’.Thi sme a
nst ha tthes ystem mus t
bego ode noug hf oritsint ende dus e .Th el ev
e lofre qu i
redconfide ncede pe ndsont he
syste
m’ spur p ose,thee xp ectati
onsoft h es ystem us ers,andt hec ur r
entma r
ke t
ing
envir
o nme ntfort hes yste m:
1
. Softwarepur poseThemorecrit
ic
althes of
twa r
e,themoreimporta
nttha
titis
rel
iable.Fore x
ample,t
heleve
lofconfide
ncer equi
redforsof
twa
reusedtocon-
tro
las afety-cr
iti
cals
yste
mi smuc hhigherthanthatrequir
edforaprot
otype
thathasbee ndevel
opedtodemonst
ratenewpr oducti
deas.
2
. Use
rexpect
ati
onsBec
auseofthei
rexp
eri
enc
eswi
thbuggy,
unr
eli
ablesof
twar
e,
manyuse
rshavelowexpect
ation
sofsof
twar
equal
it
y.Theyar
en otsur
pri
sed
whent
heirsof
twar
efail
s.Whe nanewsyst
emisi
nsta
ll
ed,us
ersma ytol
era
te
208 Cha
pter8 ■ Sof
twar
etes
ting
I
nspec
tions
Requir
ements Sof
tware UMLDes
ign Dat
abas
e
Pr
ogr
am
Spec
if
icat
ion Ar
chi
tect
ure Model
s Sc
hemas
Sys
tem
T
est
ing
Prot
oty
pe
f
ail
ure
sbecausethebe ne
fit
sofus eoutwe i
ghthecost
soffa
ilurere
cover
y.
Fi
gur
e8.2 Ins
pec
ti
ons
andt
est
ing I
nthes
esit
uat
ions
,y oumayno tneedtodevot
easmu c
hti
metotest
ingt
hesof
t-
war
e.However
,assoftwar
ema ture
s,use
rsexpec
titt
obecomemo r
erel
iab
leso
moret
hor
oughtes
tingoflat
erve r
sio
nsma yberequ
ire
d.
3. Mar ket
inge n
vironmentWh enas yste
mi sma rkete
d,t h
es ellersofthes yst
em
mu sttak
eintoa ccou
ntc ompet
ingprodu ct
s,thepric
et hatcustomersarewi l
li
ng
topa yforasys t
em,a ndtherequi
reds cheduleforde l
iver
ingt hatsyste
m.I na
comp eti
ti
veenvironme n
t,asof
twarecompa nyma yde ci
det oreleas
eapr o
gram
beforeithasbe enfull
ytest
eda nddeb uggedb ecausetheywa ntt
obet hefi
rst
int
ot hema r
ket.Ifasoft
wa r
eproductisveryc heap,user
sma yb ewil
lingtotol-
era
teal owerlevelofrel
iabi
li
ty.
1. Duringtest
ing,e r
ror
sc a
nma sk( h
ide)othererrors
.Whe nane rrorlea
dsto
unexpect
edout put
s,youcanne verbesureiflat
eroutputanoma li
esa r
edu et
o
ane we r
rorora resi
dee f
fectsoftheor i
ginalerror
.Be causeinspect
ionisa
st
aticprocess,youdon’tha vetobec oncernedwi t
hi nter
a c
tionsbe t
we e
n
err
ors.Consequentl
y,asi
ngleinspecti
onsessi
onc andiscoverma nyerror
sina
syst
em.
Chapt
er8 ■ Sof
twar
etes
ti
ng 209
T
estpl
anni
ng
Testpl anni
ngisconcernedwithscheduli
ngandr esourci
ngalloftheac t
ivi
tiesinthetesti
ngpr oc
ess.I
tinvol
ves
definingthetest
ingprocess
,taki
ngintoacc ountt
hepeopl eandt hetimeav ai
labl
e.Usuall
y,atestpl
anwi l
lbe
created,whichdefi
neswhati stobet es
ted,thepredic
tedtesti
ngs chedule,andhow t est
swi l
lberecorded.F
or
cri
ticalsyst
ems,thetestpl
anmayal soincludedetai
lsoftheteststober unont hesoftware.
ht
tp:
//www.
Sof
twar
eEngi
neer
ing-
9.c
om/
Web/
Tes
ting/
Planni
ng.
html
2
.Incompl et
evers
ionsofasyst
emc anbei
nspect
edwi thoutaddit
ionalcos
ts.If
aprogr
a misincomple
te,t
henyouneedtodevel
ops pecia
lize
dt estha
rnesse
s
t
otestthepar
tsthata
reavai
labl
e.Thi
sobvi
ouslyaddst othesyst
em devel
op-
mentcosts
.
3
. Aswe llass e
archingforpr o
gram defe
cts,aninspe
cti
onc anals
oc onsi
der
broaderqual
ityattr
ibut
e sofap r
ogra
m,s uchascomplianc
ewi t
hs t
andar
ds,
port
abil
it
y,andma intai
nabil
it
y.Youcanl o
okf o
rinef
fic
ienc
ies,i
nappro
pri
ate
al
gorit
hms ,
andp oorprogrammingst
ylethatc
ouldmakethesyst
emd i
ff
icul
tto
ma i
nta
inandup dat
e.
Progra mi ns pe ctionsa rea nol di de aa ndt he reha veb eens ever alstud iesa nd
expe r
ime nt st ha tha vede mon stratedt hati nspe cti
onsa r
emor ee ffec t
ivef orde f
e c
t
dis
c overyt hanp rogr a mt esting.Fa ga n(198 6)re portedt hatmor et ha n60% oft he
err
or sinapr ogr amc anbede t
e ctedus i
ngi nforma lpr ogrami nspe ction s.Int he
Cleanroo mpr oc e ss(Pr o we ll etal.,1999 )
,itisc laime dt hatmo retha n90% o fd efect
s
canbedi s c ove redi npr og rami nsp ecti
ons .
Howe ve r,ins pe ctionsc a nnotr ep laces oftwa ret esting.Inspe ctionsa renotgoo d
f
ordi sco ve ringde fe ctst ha ta risebe c auseofune xpe ctedinter a
c ti
onsb e t
we endi f
-
ferentpa rtsofapr ogr a m,t imi ngpr oble ms ,orpr obl emswi ths ys t
em per for-
ma nce.Fur the rmor e ,e spe cia l
lyi ns ma l
lc ompa nieso rde velopme ntgr oup s ,i
tc an
bedi ff
icul ta nde xpe ns iv et oputt oge theras epa ratei nspectiont eama sa l
lpot en-
t
ialme mb erso fthet ea m ma ya lsobes of t
wa rede ve lopers.Idi scu ssre viewsa nd
i
ns pecti
onsi nmor ede tailinCha pter24( Qua li
tyMa nage me nt).Aut o ma teds tati
c
analysis,whe ret hes our c et extofapr ogr ami sa utoma t
icall
ya na lyz edt odi scover
anoma l
ie s,i se xpla ine di nCha pter15.I nt hisc ha pte r
,If oc usont es t
inga nd
t
e s
tingpr oc ess es.
Figure8 .3isa na bs t
r actmode loft he‘ t
radi t
iona l’testi
ngpr oc ess,a sus edinpl an-
dri
ve nde ve l
opme nt.Te stc a sesa res pe ci
fic at
ionsoft heinput st ot het esta ndt he
expe ct
edout putf rom t hes ys tem( t
het e s
tr esults),p l
usas tat
eme ntofwha tisbe ing
t
e s
ted.Te s td ataa ret h ei np utst hath avebe ende v i
se dt otestas ys t
e m.Te s tda t
ac an
some ti
me sbege ne r
a teda uto ma t
ic al
ly, buta utoma ticte stcasege nera ti
oni simpo ssi
-
ble,aspe o plewhoun de r
s tandwha tthes yste mi ssu ppos edtod omus tbei nvolve dto
specifythee x pe ctedt e str esults.Ho we ve r
,t este xec utionc anbea utoma t
e d.The
expe ct
edr e sultsa rea ut oma ticallyc ompa r
e dwi t
ht hepr e
dictedr esultss othe reisno
needf orap e rsont ol o okf ore rrorsa nda no ma liesint het estrun.
210 Cha
pter8 ■ Sof
twar
etes
ting
Tes
t Tes
t Test Test
Cases Dat
a Resul
ts Repor
ts
Desi
gnTest Pr
epareTes
t RunProgram Compar
eResul
ts
Cases Dat
a wi
thTestData toTes
tCas
es
Typi
cal
ly
,ac
omme
rci
als
oft
war
esys
temha
stogot
hro
ught
hre
est
age
soft
est
ing:
Fi
gur e8.3 Amodel
ofthesoftwar
etes
ti
ng
process 1. Developmentt
est
ing,wher
ethesyst
emist
est
eddur
ingdeve
lopmentt
odis
cover
bugsa n
dd e
fect
s.Syste
m des
ign
e r
sandpr
ogrammersar
elikel
ytobein
volv
ed
i
nt h
et es
ti
ngprocess
.
2. Rel
easete
sti
ng,whereas e
par
a t
ete s
ti
ngteamt e
stsacomple
teve
rsi
onofthe
sy
ste
m befor
eitisr
eleas
edtousers.Theaim ofr
elea
setes
ti
ngist
ochec
kthat
t
hesyst
em meetst
herequi
rementsofsyst
ems t
akehol
der
s.
3. Usertesti
ng,whe reus er
sorpo te
ntia
lu s
ersofasyst
e mtestthesyst
emi ntheir
owne nvir
onme nt.Fors oft
wa r
eproducts
,the‘us
er’ma ybea nint
ernalmarket-
inggroupwhode cidei fthesoftwarecanbema r
keted,releas
ed,ands old.
Acceptancete
stingisonet ypeofus e
rtest
ingwherethecustomerfor
ma ll
ytests
asyst
emt odecidei fitshouldbeaccept
edf r
omthesystems uppl
ieroriff
urther
deve
lopme nti
sr equired.
Inpract
ice,thetesti
ngp rocessus ua l
lyi nvolvesami xtureofma nua landa uto-
ma te
dte s
ti
ng.I nma nualt e
s t
ing,ate sterrunst hepr ogram wi thsomet estdataa nd
compa r
esther esul
tstothe i
re xpect
atio ns.The yn oteandr epo r
tdiscrepanc ie
stot he
programd evel
ope r
s.Ina utoma te
dt esting,thet est
sa reenco dedinapr ogramt hatis
rune ac
ht i
met hesyst
e m un derdeve lopme ntistobet est
e d.Thisisu s
ua ll
yf a
s t
er
thanma nualtesti
ng,espec i
allywhe ni tinvol vesregress
iont esti
ng—r e- r
unningpr e
-
vioustest
stoc heckthatc hangestothepr ogr am havenoti ntroducedne wb ugs.
Theu s
eofa ut
oma t
edt esti
n ghasi nc r
ease dc on
s i
d e
rablyov erthepa stfe wyea rs.
Ho wever,tes
tingc anneve rb ecompl etelya utoma t
e dasa utoma tedte s
tsc ano nly
checkthatapro gr
amdo e
swha titi
ss up posedt odo .Iti
spr acti
call
yimp os si
bletou se
automatedtest
ingt otests y
s t
emst hatde pendonho wt hingsl ook( e.
g .
,agr a
phic a
l
userint
erfa
ce),ortotestthatapr ogramdoe sn othaveunwa ntedsideeffects.
8.
1 Devel
opmentt
est
ing
Deve
lopmentte
sti
ngincl
udesal
ltest
ingacti
vit
iest
hatarecar
rie
dou tbythet
eam
de
velopi
ngthesyst
em.Thetest
erofthesoftwarei
susuall
ythep r
ogra
mme rwho
de
velopedt
hatsof
tware
,alt
houghthisisnotalwaysth
ec as
e.Somed eve
lopment
pr
ocesse
suseprogrammer/
tes
terpai
r s(
Cusama noandSelby,1998)whereeach
8.
1 ■ Dev
elopmentt
est
ing 211
Debuggi
ng
Debuggingist
hepr ocessoffi
xinger r
orsandpr oblemsthathavebeendiscov
eredbyt es
ti
ng.Usinginf
ormat
ion
fr
om theprogr
am tests,debuggersus ethei
rknowl edgeoftheprogramminglanguageandtheintended
outc
omeoft hetesttolocateandr epairtheprogram err
or.Thi
sprocessi
soft
ens upport
edbyinteract
ive
debuggi
ngtoolsthatprovideextr
ai nf
ormat i
onaboutpr ogram ex
ecuti
on.
ht
tp:
//www.
Sof
twar
eEngi
neer
ing-
9.c
om/
Web/
Tes
ting/
Debuggi
ng.
html
p
rogramme rhasa nassoci
at
edtest
erwhode vel
opstes
tsandas
sist
swit
ht hetest
ing
p
rocess.Forc r
it
icalsyst
ems,amoref or
ma lproc
essmaybeus e
d,withas epar
a t
e
t
est
inggroupwi thi
nthedevel
opmentteam.Theyarere
spons
ibl
eforde
velopingtest
s
a
ndma intai
ningdetai
ledrecor
dsofte
stresul
ts.
Duringdevelopment,t
esti
ngmayb ecarr
iedoutatt
hreel
evel
sofgra
nu l
arit
y:
1
. Uni
ttes
ti
ng,wherei
ndi
vidua
lprogra
m unitsorobj
ectc
las
sesa
ret
est
ed.Uni
t
t
est
ings
houldf
ocusont
esti
ngth
ef unc
tion
alit
yofobj
ect
sormet
hod
s.
2
. Compo nentt
est
ing,wher
eseve
rali
ndi
v i
dualuni
tsar
eint
egr
atedtoc
reat
ecom-
posi
tec omponents.Compone
nttest
ingshouldfocusontes
tingcompone
nt
int
erf
aces.
3
. Syst
emt es
ti
ng,wheresomeoral
lofth
ecomponen
tsinas
yst
emar
eint
egr
ate
d
andthesys
temistes
tedasawhol
e.Sys
temt
est
ingsho
uldf
ocu
sont
est
ingc
om-
ponenti
nter
act
ions
.
Dev
elopmentt
est
ingispri
maril
yad efe
cttes
tin
gp r
oces
s,wheretheai
mo fte
sti
ng
i
stodi
scov
erbugsi
nt h
es o
ftwar
e.Iti
sther
efor
eusuall
yint
erl
eave
dwi t
hdebuggi
ng—
t
hepr
ocessofl
ocat
ingp r
oblemswiththecodeandchangi
ngtheprogr
amtofixthe
se
p
robl
ems.
8.
1.
1 Uni
ttes
ting
Unittesti
ngi stheprocessoftes
tingprogra
mc omponents,s
uchasmethodso robj
e c
t
cl
asses.Individualfunctio
nsorme t
hodsa r
et hesi
mpl es
ttypeofcompone nt.Your
t
est
ss hou l
dbec a
ll
st otheserouti
neswithd if
fer
entinputpar
ameter
s.Youc anuse
t
hea pproache stotestcasedesi
gndi s
cussedinSe ct
ion8.1.
2,todes
ignthef unct
ion
orme t
h odtests.
Whe nyoua rete
sti
ngobj ec
tc l
asse
s,yous houl
dde s
ignyourtes
tstoprovidecov-
er
ageo fa l
loft hefeatur
esoftheobject.Thisme a
nsthatyoushoul
d:
•t
esta
llop
era
ti
onsa
ssoc
iat
edwi
tht
heobj
ect
;
•s
eta
ndc
hec
kthev
alu
eofa
lla
tt
ri
but
esa
ssoc
iat
edwi
tht
heo
bje
ct;
• puttheobje
cti
ntoa
llpos
sibl
esta
tes
.Thi
sme
anst
hatyous
houl
dsi
mul
at
eal
l
even
tsthatc
aus
east
atec
hange.
212 Cha
pter8 ■ Sof
twar
etes
ting
Weat
her
Stat
ion
i
dent
if
ier
repor t
Weat her ()
repor t
Status()
power Sav
e( instrument
s)
remot eCont rol(commands)
reconf i
gure( commands )
restart(i
nstrument s)
F
igure8.
4 T heweather shut down( instruments
)
s
tat
ionobj
ecti
nter
fac
e
Co nside r
,fore xa mp l
e, thewe at
he rstat
iono bjectfromt hee xamplet hatIdi scussed
i
nCh a pter7. Th ei nterf
aceo fthisob jecti
ss howni nFi gu r
e8.4.Ithasas ingleattribute
,
wh ichi sitside ntifier.
Th isisac on stantthatiss etwh e nthewe atherstat
ioni sinstall
ed.
Yo uth ereforeo n l
yne e
dat es
ttha tc hecksifi th asbe enp roperl
ys etup .Yo un eedt o
definet es
t case sf ora l
loftheme th odsa ss
oc iat
edwi t
ht heo bjectsuchasr eport
We at
he r
,
reportStatus, etc. Ideall
y,yo usho ul
dt e
stme tho dsini solati
onb ut,
ins omec as
e s,some
testse que ncesa r
ene cessa ry
.Fore xa mple ,tot estt heme tho dthats hutsdo wnt he
we athersta t
ioni nstrumen ts( s
hutd own ),youn ee dtoh av eexecutedther esta
rtme t
hod .
Ge ne r
a li
za tionori nhe rita
nc ema kesobj ectc l
asst esti
ngmo recomp li
cated.You
can ’
ts impl yt es tanope rationint hec lasswhe reiti sde fi
neda nda ss
umet ha titwi l
l
wo rka se xpe c tedi nt hes u bcl
a ssest hatinhe rittheope ra
tion.Th eope rati
o nt hatis
inheritedma yma kea ssumpt i
onsa bouto thero perationsa nda t
trib
ute s.The sema y
no tbev a
lidi ns omes ubc lassest h
a tinherittheo peration.Yout hereforeha vet ote s
t
theinhe ritedo pe ratio
ni na lloft hec ontextswh e r
ei tisus e
d.
Tot e s
tt hes tateso fth ewe athers tat
ion,youus eas tat
emo de l
,suc ha stheon e
sho wni nFi gur e7. 8i nthepr ev i
ousc hap ter.Us ingt hi
smode l,youc ani dentify
seque nc e
sofs ta tetransitionstha tha vet obet e s
teda ndde fi
nee ven tseque ncest o
forcet hes etra n sit
ions.I np r
inciple,yous houl dt este veryp ossi
bles tatetrans i
ti
o n
seque nc e,a lthoughi npr a ct
icet hi sma ybet ooe xpens i
ve.Exa mpl esofs tate
seque nc e
st ha ts ho uldbet e st
edi nt hewe a
the rs t
ationi nclude:
down→ Runni
Shut ng→ Shut
down
Confi
guri →
ng Runni ng→ Tes
tng→ T
i rans
mit
tng→ Runni
i ng
Running→ Col
lec
tng→ Runni
i ng→ Summari
zing→ T
rans
mit
tng→ Runni
i ng
Wh enev erpossi
ble,yous houldautomateuni ttest
ing
.Ina utoma t
edunittest
ing,
youma keus eofat es
ta utoma t
ionframework( sucha sJ
Unit)towr it
eandr unyou r
programt e s
ts.Unitte
s t
ingf r
ame worksprovideg ener
ictes
tc l
as s
esthatyoue xte
n d
toc r
eat
es pecif
ictes
tc ases.Theyc anthenru nallofthetes
tst hatyouhaveimpl e-
me nte
da ndr eport
,oft
e nthroughs o
meGUI ,o nthesucces
sorf ail
ureofthetes
ts.An
entir
etests uit
ec a
nof tenb eruninaf ewsec ondss oiti
spossibletoexecuteallthe
test
seve r
yt imeyouma keac hanget otheprog r
am.
Ana utoma tedtes
th asthreepart
s:
1. A s
etuppar
t,whereyouinit
ial
izet
hes
yst
em wi
tht
het
estc
ase
,na
mel
ythe
i
nputsan
dexpec
tedoutput
s.
8.
1 ■ Dev
elopmentt
est
ing 213
2
. Ac
allpa
rt,whe
reyo
uca
llt
heob
jec
torme
thodt
obet
est
ed.
3
. Anassert
ionpartwher
eyouc o
mpareth
eres
ultofthecal
lwitht
heexpe
cted
r
esul
t.Iftheasse
rti
oneva
lua
testot
rue
,thet
esthasbee
ns uc
cess
ful
;iff
als
e,
t
henithasfai
led
.
Some t
imest heobj e
c tthatyo ua r
et estinghasd ependenci
esonot herobj ectstha
t
mayn othaveb e
e nwr it
tenorwhi chs lowdo wnt hetest
ingprocessifthe yareus e
d.
Forexample,ifyou rob jectcallsad atab ase
,thisma yinvolveas l
ows etuppr oce
ss
bef
oreitcanbeus ed.I nt hesec a
s e
s ,y ouma yde c i
detou semoc kob je c
ts.Mo ck
obj
ectsareobjectswi tht hes amei nterfacea sthee xt
ernalobjec
tsbe ingus edt h
at
si
mulateit
sfun c
tiona l
it
y .The r
efore,amoc kobjectsimulat
ingada t
a basema yhave
onl
yaf ewda tait
e mstha ta r
eor ganizedi na narray.Theycanthereforebea c ces
sed
qui
ckly,wit
houtt heov erh ea
dso fc al
lingada tabas
ea ndacc e
ssi
ngdi sks.Simi la
rly
,
mockobjectscanbeus edt os i
mul atea bnorma lope r
ati
onorr ar
ee v
e nts.Fore xam-
ple
,ifyours yst
e mi sin tendedt ota kea c t
iona tcert
aintimesofda y,yourmo ck
obj
ectcansimplyr eturnt hosetimes,irre s
pec t
iveoftheactualcl
ockt ime .
8.
1.
2 Choos
inguni
ttes
tcas
es
Tes
ti
ngisexpens
iveandti
meconsumi
ng,s
oiti
simport
antt
hat
youc
hoo
see
ffe
cti
ve
uni
tte
stca
ses.Effe
cti
vene
ss,
inth
isca
se,mean
stwothi
ngs:
1
. Thet
estc
ase
sshoul
dshowtha
t,whe
nuse
dase
xpe
cte
d,t
hec
ompon
ent
tha
tyo
u
ar
ete
sti
ngdoeswhati
tiss
uppos
edt
odo.
2
.Ift
her
ear
ede
fec
tsi
nth
eco
mpone
nt,
the
ses
hou
ldber
eve
ale
dbyt
estc
ase
s.
Yo ushouldtheref
or ewr it
etwoki ndso ftestcas
e .Thef ir
stoftheseshouldreflect
n
orma lope rat
iono fapr ograma nds houlds how t hatthec ompon entworks .For
e
xa mple,ifyoua rete st
ingac ompone ntthatc r
eate sandi nit
ia
liz
e sane w patient
r
ecord,thenyourt es
tc ases houldshowt hatther e
c orde xis
tsinada tabas
ea ndt hat
i
tsfie
ldsha vebeens etass pecifi
ed.Theot he rki
ndo ftestcaseshou l
dbeba sedon
t
esti
nge xperi
e n
ceofwhe recommo np roblemsa ri
s e.Itshou l
dusea bnormalin puts
t
oc heckthatthesearepr operl
ypr oce
s se
da n ddon otc r
as hthecomp onent
.
Idiscusstwop ossibles t
rate
gieshereth atcanbee ff
ectiv
ei nhelpingyouc hoos e
t
estcases.Thesea r
e:
1
. Part
it
iont
est
ing,whe
reyouide
n t
if
ygr o
upsofi
nput
stha
thavec
ommonc ha
rac
-
te
ris
ti
csandshoul
dbeproce
ssedinthesameway
.Youshoul
dchoos
ete
stsf
rom
wit
hineachofthe
segrou
ps.
2
. Gui
del
ine
-ba
sedte
sti
ng,whereyouusetes
ti
nggu i
del
ine
stochoosetes
tca
ses
.
The
segui
del
ine
sref
lec
tpre
viousexpe
rie
nceoftheki
ndsofe
rror
sthatpr
ogr
am-
mer
soft
enmakewhendevel
op i
ngcomponent
s.
214 Cha
pter8 ■ Sof
twar
etes
ting
I
nputEqui
val
enc
ePar
ti
ti
ons Out
putPar
ti
ti
ons
Sy
stem
Cor
rec
t
Output
s
Fi
gure8.
5 Equi
val
enc
e
par
ti
ti
oni
ng Pos
sibl
eInput
s Pos
sibl
eOut
put
s
3 11
4 7 10
L
esst
han4 Bet
ween4and10 Mor
ethan10
NumberofI
nputVal
ues
9999 100000
10000 50000 99999
L
esst
han10000 Bet
ween10000and99999 Mor
ethan99999
Fi
gure8.
6 Equi
val
enc
e
par
ti
ti
ons I
nputVal
ues
Youi dent i
fypa rt
it
ionsbyus ingthepr og r
ams p ecificati
onorus erdoc ume nta t
io n
andf rom e xpe r
ie ncewhe r
eyoupr edic tthec lasseso finpu tva l
uet ha tarel ike lyt o
detec te rrors.Fore xa mpl e,sa yapr ogr a ms pec i
f i
c at
ions t
a test hatt hepr o gra m
accept s4t o8i nput swhi cha ref ive-
di giti ntege r
sgr e at
e rthan10 ,00 0.Youus et his
inf
or ma tiont oi de nt
ifythei npu tpa r
titionsa ndpo ssibletestinp utv alue s
.The sea re
showni nFi gure8 .6.
Wh enyo uus et hespe ci
ficationofas ys temt oide ntif
ye quiv alenc epa r
titi
ons , this
isca l
led‘ bla ck-boxt esti
ng’. He re,youd on’ tne eda nykno wl edgeo fho wt hes ys t
e m
wor ks.Ho we ve r,itma ybehe lpfultos upple me ntt hebl ack-bo xt e stswi th‘ whi te-
boxt esting’ ,wh e reyoul ooka tthec odeoft hepr o gramt ofindot he rp ossiblet est s
.
Fore xa mp le,you rcodema yi nc l
udee xc eptionst oha ndleinc orrecti npu ts.Youc a n
uset hiskn owl edget oi d e
ntify‘ e x
ce ptionp artit
ions ’—di ffe
r entr an ge swh e ret he
samee xc eptionha ndl
ings houl dbea ppl ied.
Equi va lenc epa r
ti
tioningi sa ne ffec t
iv ea ppr oa cht ot estingbe c aus eithe l ps
accou ntf ore rrorsthatpr ogramme rsof tenma k ewhe npr oc essingin put sa tthee dge s
ofpa rtit
ions .Youc ana lsous et es t
inggui de li
ne stohe lpc hoos et e stc a ses.
Guide linese ncaps ul
atekno wl edgeofwha tkin dsoft estcas e
sa r
ee ffec t
ivef ord is-
cove r
inge rrors.Fore xa mple, whe nyoua retes ti
ngpr ogramswi t
hs e que nce s,arra ys,
orlists,gui deline sthatcouldhe lprev eald e f
ec t
si nclud e:
1. Tests
oftwar
ewi thse
quencest
hatha
veonlyas in
glev a
lue.Pr
ogra
mme rsnat
u-
ral
lyt
hinkofsequenc
esasma d
eupofsev
era lv
aluesandsometi
mesthe
ye mbed
thi
sassumpti
oni nthei
rprogr
ams.Consequentl
y,ifpresent
edwithasingl
e-
val
uesequence
, apro
gram maynotwor
kp roper
ly.
2. Usedi
ff
ere
ntsequenc
esofd if
fer
entsi
zesi ndif
fer
entte
sts
.Thi
sd e
creas
esthe
ch
ance
sthataprogr
am withdefec
tswillacci
denta
llypr
oduceacorr
ectout
put
be
caus
eofsomea c
cident
alchar
acte
ris
ti
c softh
einput.
3. Deri
vetes
tssot
hatthefi
rst
,middl
e,andl
astel
eme nt
softheseque
ncea
re
ac
cess
ed.Thi
sap
proa
c hi
srevea
lspr
obl
emsatpa
rti
ti
onbound
a r
ies
.
216 Cha
pter8 ■ Sof
twar
etes
ting
Pat
htes
ting
Pathtesti
ngi
satest
ings t
rat
egythataimstoexer
cis
eev er
yi ndependentexec
utionpaththroughacomponent
orprogram.I
fever
yindependentpat hi
sexecut
ed,thenallstat
ementsi nt
hecomponentmus thavebeen
executedatl
eas
tonce.Allcondit
ionals
tat
ementsaretest
edf orbothtrueandfals
ec as
es.Inanobject
-or
ient
ed
developmentpr
ocess,pat
ht es
ti
ngmaybeus edwhent es
tingthemet hodsassoci
atedwithobjec
ts.
ht
tp:
//www.
Sof
twar
eEngi
neer
ing-
9.c
om/
Web/
Tes
ting/
Pat
hTest
.ht
ml
Whit
ta
ker’
sbook(20
02)i
ncl
ude
sma nyexa
mplesofgui
deli
nest
hatca
nbeus
ed
i
ntes
tcasede
sign
.Someoft
hemostge
nera
lguide
li
nest
hathesugg
est
sare:
■ Choo
sei
nput
sth
atf
orc
eth
esys
temt
oge
ner
atea
lle
rrorme
ssa
ges
;
■ De
signi
nput
sth
atc
aus
ein
putb
uff
erst
oov
erf
low;
■ Re
pea
tth
esa
mei
npu
tors
eri
esofi
nput
snume
roust
ime
s;
■ For
cei
nva
li
dout
put
stob
ege
ner
ate
d;
■ For
cec
omp
uta
ti
onr
esul
tst
obet
ool
argeort
oos
mal
l.
Asyouga i
ne xperie
ncewit
htes
ti
ng,youca
ndeve
lopyourowngui
del
ine
sabout
ho
wt ochooseeffec
tivete
stca
ses
.Igivemor
eexa
mp l
esoftes
ti
nggui
del
ine
sinthe
ne
xtsec
tionofthischapte
r.
8.
1.
3 Componentt
est
ing
Softwa recomp one ntsa reo fte
nc ompos it
ecompon ent
st hata r
ema deu pofs e vera
l
int
e ract
ingob ject
s.Fore xa mpl e
,i nt hewe a
thers t
ati
ons ystem,t her econf i
gur at
ion
compon entincludesobj ectsthatde a lwi t
he acha spectofther e
c onfi
gur ation.You
acce ssthefunc ti
ona l
it
yoft heseo bj ectsthr
oug hthede finedc ompone nti nte rf
ac e.
Testingc ompo sit
ec ompon ent
ss ho uldt here
foref ocusons ho wingt hatt hec ompo-
nenti nter
facebe havesa ccordingt oi tsspeci
ficati
on.Youc ana ssumet h atun ittest
s
ont heindividualobj ectswi thinthec ompo nentha vebeenc ompl eted.
Figure8.7i l
lustr
atest hei deaofc ompo nentinterf
acetesti
ng. As sumet h atc omp o-
nentsA,B,a ndCh avebe eni nt
e gra t
edt ocreateal ar
gerc ompo n entors ubs ystem.
Thet estcasesa r
enota pp li
edt othei nd i
v i
dualco mpone n
tsb utrathertot hei nte r
face
ofthec omp osit
ec ompo ne n
tc r
e a
te db yc ombiningth e
sec omp onen t
s. I
nterfac ee rr
ors
i
nt hec ompos i
teco mpon entma yn otbede t
ectablebyt est
ingt hei ndi
vid ualo bje
c t
s
beca usetheseerrorsresul tfromint erac t
ionsbetwe e
nt heob j
ec t
sint hec omp on ent.
The rearedi f
ferenttype sofi nt erfacebe t
we enpr ogramc ompone ntsa nd,c onse-
quen tl
y,diff
e re
nttype so finterfacee r
rorthatcano ccur:
1. Paramet
erinte
rfa
c e
sThe s
ea r
eint
erf
acesi
nwhic
hdataors
ome t
imesf
unc
tio
n
ref
eren
cesa r
epassedfrom onecomponentt
oanot
her
.Methodsinanob
ject
haveapara
me t
erinte
rfa
ce.
8.
1 ■ Dev
elopmentt
est
ing 217
T
estCas
es
A B
C
Figure8.
7 I
nter
face
test
ing
2. Share
dme mo r
yinterfacesTheseareint
erf
acesinwhichabloc
ko fme mor
yis
shar
edbe t
weenc ompo nent
s.Da t
aisp l
acedinthememorybyones ubsys
tem
andretr
ieve
df r
om the r
eb yothersub-s
ystems.Thi
stypeofint
erf
aceisoft
en
usedine mbeddeds yste
ms ,whe r
es ens
orscreat
eda t
athati
sretri
evedand
proc
essedbyothersystemc omponents
.
3. Procedur
alint
erf
acesThesea r
eint
erf
ace
sinwh i
chonec
omponente
ncaps
u-
l
atesas e
tofprocedur
esthatcanbecal
le
dbyot h
erco
mpone
nts
.Object
sand
re
usablecompone
ntshavethisf
ormofint
erf
ace
.
4. Messagepas si
ngin t
erfacesThe s
ea reinte
rfa
cesinwhichonecomp onent
r
equest
sas ervi
cefr
oma nothe
rc o
mp onentbypassi
ngamess
agetoi
t.Aretur
n
mess
a gein
c l
udest
her esul
tsofexecut
ingtheser
vic
e.Someobj
ect
-or
ien
tedsys
-
t
emsha vethi
sform ofinte
rface
,asd ocli
ent–
serv
ersys
tems
.
I
nte
rfa
ceerr
orsar
eoneofthemostcommonfor
mso
fer
rori
ncompl
exs
yst
ems
(
Lut
z,1993)
.Thesee
rror
sfa
lli
ntot
hreecl
ass
es:
■ I
nte
rfa
cemi s
useAc a
ll
ingcomponentcall
ssomeotherc
ompo
nenta
ndmakesan
e
rro
rintheuseofi
tsi
nter
fac
e.Thi
stypeofe r
rori
scommonwit
hpar
ame
teri
nter
-
f
aces
,whe r
epa r
ameter
sma ybeofthewr ongtypeorbepa
ssedi
nth
ewr ong
o
rder
,orthewrongnumberofpar
ame t
ersmaybep as
sed
.
■ I
nterfa
cemi sunder
s t
andi
ngA c alli
ngcompon entmisun der
standsthespecif
ica
-
t
ionoft heinte
rfaceofthec a
l l
edcomp onentandma ke sassumptionsaboutit
s
beh
a vi
or.Thec al
ledcomp onentdoesnotbehavea sexp e
ctedwhicht he
nc aus
es
unexpecte
dbe haviorinthec all
ingcompo nent.Fore xample,abi nar
ys ear
ch
methodma ybec alledwithapa ramet
ert h
a ti
sa nun order
eda rr
ay.Thes ear
ch
wouldthenfail
.
■ Ti
mingerr
orsThe
seoccurinre
al-t
imesys
temsthatuseashar
edmemoryora
mess
age
-pass
ingi
nte
rfa
ce.Theproduc
erofdat
aa ndthec
onsumerofda
tamay
218 Cha
pter8 ■ Sof
twar
etes
ting
oper
ateatdi
ffe
rents
peeds.Unl
esspar
ti
cula
rc a
reista
keni nt
hei
nter
fac
edesi
gn,
thecons
ume rcanaccessout
-of
-dat
einformati
onbe ca
us et
heproduc
erofthe
inf
ormat
ionhasnotupdate
dtheshar
edint
erfa
ceinfor
mation.
Testi
ngf ori nterfaced efe ct
sisdi ff
icultbe c
a uses omei nte
r f
acefa ultsma yonl y
ma nifestthems elvesund erunus ualc onditi
on s.Fore xampl e,saya no bjec
timp l
e-
me ntsaque uea saf ix ed-l
e ngthda t
as tr
ucture.Ac alli
ngobj e ctmaya ssumet hatthe
que uei simple me nteda sa ni nf
init
eda tastruct
ur eandma ynot checkforqu e
ueov e r
-
flowwhe na nitemi se ntere d.Thiscond it
ionc a non lybede t
ec t
eddur ingt e
stingby
de signingt es
tc asestha tforc ethequ euetoov erflowa ndc a usethato verflowtoc or-
rup ttheobj ectbe haviori ns omede tectablewa y.
Af urtherpro blem ma ya r
isebe c
a useo finteracti
on sb e twe e
nf aultsind if
f er
ent
modu leso robjects.Fa ult
sino neobjectma yo nlyb ede te
c tedwh ensomeot herob j
ect
be hav esina nune xpe ctedwa y.Fore xamp le,a no bjectma yc al
lan oth e
robj ectto
rec ei
v esomes ervicea nda s sumetha tthere s
po nseisc o
r r
e ct.Ifthec all
e dserviceis
faul t
yi nsomewa y,ther et
u rnedv a
luema yb eva l
idb ut i
nc orrect.Thisisn otimme di-
atelyde tectedb utonl ybe come so bvi
ou swhe ns omel aterc omput at
iongoe swr ong.
Someg eneralgu idelinesf orint
e r
facete st
inga re:
1. Examinet
hecodetobetes
tedandexpli
citl
ylis
teachca
llt
oane xt
erna
lc ompo-
nent
.Desi
gnas etoft
est
sinwh i
chthev al
uesofthepa
ramet
erstotheexter
nal
componen
tsar
ea ttheext
remeendsoft hei
rrang
es.Thes
eextremevaluesare
mostli
kel
ytorevea
lint
erf
acei
nconsis
tencie
s.
2. Wherepoi
nte
rsarepas
seda
cros
sani
nte
rfa
ce,
alwa
yst
estt
hei
nte
rfa
cewi
thn
ull
poi
nte
rpar
ame t
ers.
3. Whe r
eac ompo nen
tiscal
ledthr
oughaprocedur
ali
nter
fac
e,desi
gntes
tst
hat
del
iber
ate
lyc a
us et
hecomponenttof
ail
.Dif
feri
ngfai
lur
eassumpt
ion
sareone
oft
hemos tcommons pe
cif
icat
ionmis
under
sta
nd i
ngs
.
4. Usestr
esste
sti
ngi nme s
sagepa
ssingsyst
ems.Thi
sme a
nstha
tyoushoul
d
de
signte
stst
hatgener
atemanymoreme s
sage
stha
narel
ikel
ytoocc
uri
nprac
-
t
ice
.Thisisa
ne f
fect
iv
ewa yofr
eveali
ngti
mingpr
obl
ems.
5. Wheresevera
lc ompone
ntsint
era
ctthroughshar
edme mor
y,desi
gnt
est
sthat
va
rytheorderinwh i
cht
hesecomponentsareac
ti
vat
ed.The
setes
tsma
yreveal
i
mp l
ici
tassumpt i
onsmadebytheprogr a
mme rabo
uttheorde
rinwhic
ht he
s
hareddat
aisp r
odu c
edandcons
umed.
Inspe
cti
onsa ndre viewsc a
ns ome t
imesbemorecosteff
ecti
vethantest
ingfor
dis
cover
inginterf
acee r
ror
s.Inspecti
onscanconce
ntra
teonc omponentint
erf
aces
andquesti
onsa boutt heassumedi nte
rfac
ebehavi
ora s
kedduringtheinspec
tion
proce
ss.Astronglytype dl
angu a
ges uchasJav
aall
owsma nyinter
faceer
rorst
obe
tr
appedbythec ompi l
e r
.Sta
t i
canalyzers(
seeChapt
er15)candetectawiderange
ofint
erf
aceerrors
.
8.
1 ■ Dev
elopmentt
est
ing 219
I
ncr
ement
ali
ntegr
ati
onandt
est
ing
Sys
tem test
ingi
nvolvesintegr
ati
ngdif
ferentcomponent sthentest
ingt
hei nt
egrat
edsyst
em thaty
ouha v
ec r
eat
ed.
Youshouldalwaysus eani nc
rementalapproachtointegr
a t
ionandtes
ting(i
.e.
,youshoul
dintegr
ateacomponent
,
t
estthesyst
em, i
ntegrateanotherc
omponent ,t
estagain,
ands oon).Thismeanstha
tifprobl
emsoc c
ur,i
ti
sproba
bly
duetointer
acti
onswi ththemos tr
ecentlyi
ntegrat
edc omponent.
I
ncr
ementali
ntegr
ati
onandt
esti
ngisf
undament
altoagi
l
emet
hodss
uchasXP
,wher
eregr
ess
iont
est
s(s
eeSec
ti
on
8.
2)ar
eruneveryti
meanewi nc
rementi
sint
egr
ated.
ht
tp:
//www.
Sof
twar
eEngi
neer
ing-
9.com/
Web/
Test
ing/
Int
egr
ati
on.
html
8.
1.
4 Sy
ste
mtes
ting
Syst
emt es
tingduringdevelopmentinvol
vesi
ntegr
ati
ngcomponentstoc r
eat
eav er
-
si
onofthes yst
ema ndthent e
sti
ngtheint
egrat
edsyst
em.Syst
emt est
ingchecksthat
componentsa r
ecompa t
ible
,inter
actcorr
ect
lyandtr
ansf
ertheri
ghtda t
aa tt
heright
t
imea cr
osst hei
rinte
rfa
c e
s.Itobvious
lyoverl
apswithc
ompone ntte
s t
ingbutther
e
aret
woi mpo rt
antdif
fer
ence s
:
1
. Durin
gs ys
temtes
ting,reus
abl
ecomponent
sthathavebee
nsepa
rat
elydev
el-
opedandoff
-t
he-
shelfsys
temsmaybeint
egr
ate
dwi t
hn e
wlyde
vel
opedcompo-
nent
s.Thecompl
etesyste
mi st
hent
est
ed.
2
. Compo nentsdevel
opedbydif
fer
enttea
m me mber
sorgroupsmaybeint
egr
ate
d
atthi
sstage.Syst
emt es
ti
ngisacoll
ecti
verat
hert
hanani ndi
vid
ualpr
oces
s.I
n
somec ompa ni
es,sys
temtest
ingma yinvol
veasepar
atetest
ingte
am wit
hno
i
n v
olveme ntfr
om des
igner
sandprogra
mme rs.
Weat
her
I
nfor
mati
onSyst
em
Sat
Comms Weat
her
Stat
ion Comms
li
nk Weat
her
Dat
a
r
eques
t(r
epor
t)
ac
knowl
edge
r
epor
tWeat
her
()
ac
knowl
edge get
(summar
y) s
ummar
ise()
s
end(
Repor
t)
ac
knowl
edge
r
epl
y(r
epor
t)
ac
knowl
edge
Sat
Comms :
reques
t→ Weat
her
Stat
ion:
repor
tWeat
her→ Comms
li
nk:
Get
(summar
y)
→ Weather
Dat
a:summar
ize
Thes
eque
ncedia
gra
mhe l
psyoudes
ignt
hesp
ecif
ictes
tcase
stha
tyoun
eeda
sit
s
howswhati
nput
sarer
equ
iredandwha
tout
put
sarecre
ated:
1
. Ani nputofar e
questf
orareportshoul
dhaveanassoc
iate
dackno
wledgment
.
Ar epor
ts houl
dultimat
elyberetur
nedfro
mt here
qu e
st.Duri
ngtes
ti
ng,you
shouldcreatesumma r
izeddat
at hatca
nbeus edtocheckthatt
herepor
tis
corr
ectl
yo rga
nized
.
2. Ani nputrequestforarep
orttoWe a
therStat
ionresul
tsinasumma r
ize
dr epor
t
beingge nerat
e d.Youcantestthi
sini solat
ionbyc reat
ingraw dat
ac orr
e-
spondingtothes ummarythatyouhavepreparedforthete
stofSat
Commsa nd
checkingthattheWe at
her
Stati
onobjec
tc orr
ectl
yp r
oducesthi
ssumma r
y.This
ra
wda tai
sa l
sou sedt
otestt
heWe at
herDa t
aobject
.
8.
2■ T
est
-dr
ivendev
elopment 221
Ofcou r
se ,Ihavesimp l
ifiedt hes eque ncedi agraminFi gure8.8s othati
tdoesn ot
showe xception s
.Ac omp leteus ec ase/scena ri
ot es
tmus talsotaket heseint
oa ccount
ande nsur
et hatob j
ectscorrectlyh a
nd lee xce pt
ions.
Formos tsys t
ems,itisdifficul tt
ok nowho wmuc hsystemt estingise ss
ent
iala nd
whe nyo usho uldtos t
opt esting .Ex ha u
s t
ivet est
ing,wheree v er
ypo ssi
bleprogram
executi
ons equ enceistested,i simp os si
ble .Tes t
ing,t
herefore,ha stob ebasedona
subsetofpos sibletestcases.I de al
ly,s oftwa r
ec ompa nie
ss hou l
dha vepolici
esf or
choosingthiss ubset
.The sep oliciesmi ghtbeb a se
do ngen eralte
s ti
ngpo li
cie
s,s uch
asa pol icyt hata l
lpr ogr ams t
a teme ntss houldb ee xe cuteda tleastonc e
.
Alternat
ivel
y ,theyma ybeba sedone xpe r
ien c
eo fsyst
e mus agea ndf ocusontesting
t
hef eat
u r
esoft heopera
tiona ls ystem.Fore xamp l
e:
1
. Al
lsys
temf
unc
ti
onst
hata
rea
cce
sse
dth
roug
hme
nuss
houl
dbet
est
ed.
2
. Combi
nati
onso
ff unc
tio
ns(e.
g.,t
extf
orma
tti
ng)t
hata
rea
cce
sse
dthr
ought
he
sa
meme numustbetes
ted.
3
. Wher
euserinputi
spr
ovi
ded,a
llf
unc
ti
onsmus
tbet
est
edwi
thbot
hcor
rec
tan
d
i
ncor
rec
tinput
.
Itisclearfrome xpe ri
encewi thma jorsoftwarepr oduct
ss ucha swordpr o ce s
so r
s
orspreadshee t
stha tsimilargui delinesa renor ma l
lyu se
dd uri
ngpr oduc tte st
ing.
Wh enf eat
uresoft hes oft
wa r
ea reus edini s
o la
tion,theyn ormallywork.Pr oblems
ar
ise,asWh i
ttaker(2002)e xplains,wh enc ombi nati
on soflesscommon l
yus e dfea-
t
uresha venotbe e ntestedtoge t
h er.Hegi vesthee xamp l
eofh ow,inac ommo nly
usedwor dp rocessor,usingf ootnote swi t
hamul ti
columnl ayoutc a
us esinc or r
e c
t
l
ayouto fthetext.
Aut oma t
eds yst
e mt est
ingisus uallymor edi f
ficul
tthana ut
oma tedunitorc ompo-
nenttest
ing.Aut oma tedunitt e
s t
ingr eli
e sonpr e di
cti
ngt heo utp
utsthene nc oding
t
hesepr edicti
onsi napr ogram.Thepr edictioni sthenc ompa redwi t
ht her esult
.
Howe ver,thep oi
ntofi mpleme nti
ngas yste
m ma ybet oge ne r
ateoutputst h atare
l
argeo rcannotbee a si
lypredicted.Youma yb eabletoe xaminea noutputa ndc heck
i
tscredibil
it
ywi t
ho utnecessari
lyb einga bletoc reat
ei ti
na dvance.
8.
2Test
-dr
ivendevel
opment
Test
-dri
vende velopment(TDD)i sa na ppr
oachtopr ogra
m de v
elopmentinwhi c
h
youinter
le a
vet esti
nga ndcodede velopme nt(Beck,2002;J ef
fri
esandMe lnik,
2007).Essenti
all
y ,youdevel
opt hec odeincrementall
y,alongwithatestforthat
inc
rement.Youd on’tmoveont othene xtin c
rementuntilthecodethatyouha ve
devel
opedp assesitstes
t.Tes
t-dr
ivende vel
opme ntwa sint
roducedaspartofagile
methodssucha sExtremeProgrammi ng.Howe ver
,itcanalsobeusedinplan-
dri
v e
n
devel
opme ntprocesses
.
222 Cha
pter8 ■ Sof
twar
etes
ting
I
dent
if
yNew Pas
s
F
unct
ional
it
y
F
ail I
mplement
Wr
it
eTes
t RunTes
t F
uncti
onal
it
yand
Ref
act
or
Fi
gure8.9 Tes
t-dr
iven
devel
opment
Thefunda
me nt
alTDD p
roc
essi
ssho
wni
nFi
gur
e8.
9.Thes
tepsi
nthepr
oce
ss
a
reasfol
lows:
1. Youstar
tbyident
if
yin
gtheinc
rementoffunc
tional
it
ythati
sre
quir
ed.Thi
s
shoul
dnorma
llybesmal
lan
dimplement
abl
einaf ewli
nesofc
ode.
2. Youwrit
eat estf
ort
hisf
unct
iona
li
tyandi
mpl
ementthi
sasa
nautoma
tedtes
t.
Thi
sme ansthatt
hete
stcanbeexec
ute
dandwil
lrepo
rtwhe
the
rornotithas
pas
sedorfai
led.
3. Youthenru nthetes
t,alo
ngwithallothert
eststhathavebeenimple
mented.
Ini
ti
all
y,youh avenotimple
mente
dt hefunct
ionali
tysothenewtestwil
lfa
il.
Thisi
sd e
liber
ateasits
howstha
tthetestadd
ss omethi
ngtothete
stset
.
4. Youthenimplementthefunct
ional
it
yandre
-runt
hetes
t.Thi
sma yinv
olve
r
efa
ctor
ingexi
st
ingcodetoimprovei
tanda
ddnewcodet
owhat’
sal
readyt
here
.
5. Onc
ea l
lte
stsr
uns
ucc
ess
ful
ly,
youmov
eont
oimpl
eme
nti
ngt
hen
extc
hunkof
f
unct
iona
li
ty.
Ana utoma t
e dtestinge n vi
ronme nt,s uc ha st heJUn ite nvir
on me ntt hatsupports
Javapr ogr a
mt e st
ing( Ma s
sola ndHu sted,200 3),isessent i
alf orTDD.Ast hecode
i
sd e velopedinv erys ma llincreme nts, youha vet obea blet orune v erytestea c
htime
t
ha tyoua ddfunc t
iona l
ityorr efactort hepr ogram. The refore,thet e stsaree mbe d
de d
i
nas eparat
ep rogramt ha trunst het es t
sa ndi n vokesthes ystemt ha tisbe i
ngt es
ted.
Us i
ngt hi
sa pproach ,i
tispos s
ibletor unh undr e dsofse paratete stsi naf ews econds.
As t
ronga rgume ntfo rtest-
drivend evelo pme ntisthatithe lpsp rog r
amme rsclari
fy
t
he irideasofwh atac odes egme ntisa c t
ua ll
ys up posedtod o.Towr i t
eat e s
t,youn eed
t
oun derst
andwha ti sin te
n ded,a st hisu nde rstandingma kesi te a si
e rtowr it
et he
r
e qui re
dc ode.Ofc ourse ,i
fyouh avei nc ompl e t
ekn owl edg eo run derstanding,then
t
es t
-d ri
vende velopme ntwo n’thelp.I fyo udo n’tk nowe noug htowr it
et hetests
,y ou
wo n’td evel
opt her equiredc ode.Fore xa mpl e,ifyo urcompu t
ationi n volvesd i
vis
ion,
yous houldchec kthaty oua renot divid ingt henu mbersbyz ero.I fy ouf orgettowr i
te
ates tforthi
s ,t
hent hec odet oche ckwi llne verb eincl
ud edi nt hep rog ram.
Aswe l
la sbe t
terpr ob l
em unde rstandi ng,ot herbe nef i
tsoft est-drivende velop-
me nta re:
1. Codecove
rageInpri
nci
ple,e
verycodes
egme
nttha
tyouwrit
eshouldhav
eat
l
easton
eassoci
ate
dtes
t.Ther
efor
e,youc
anbeco
nfi
dentt
hatal
lofthecod
ein
8.
2■ T
est
-dr
ivendev
elopment 223
t
hesy
stem hasa
ctual
lybee
ne xec
ute
d.Codeist
est
eda
siti
swr
it
te
nsode
fec
ts
a
redi
scove
r e
dearl
yinthedevel
opmentp
roce
ss.
2
. Regres
sio
ntesti
ngAt e
stsui
teisdeve
lop
edinc
rementa
ll
yasapr
ogr
amisde
vel
-
oped.Youcana l
waysrunre
gressi
ontes
tst
ochecktha
tcha
nge
stoth
eprog
ram
hav
en otint
roduce
dnewbug s.
3
. Simpli
fi
eddebuggi
ngWh enatestfai
ls,i
tshouldbeobvi
ouswh eretheproble
m
li
es.Thenewlywri
tt
encodeneedstobec heckedandmodi
fi
ed. Youdon otneed
tousedebuggi
ngtool
stolocat
et heproblem.Report
softheus eoftest
-dri
ven
devel
opmentsugge
stt
hatiti
shardlye ve
rnecessa
rytous
eana utoma t
edd e
bug-
gerinte
st-
dri
vendevel
opment(Ma rt
in,2007).
4
. Sys
temdocu
mentat
ionThet
est
sthe
ms e
lve
sactasafor
mo fdocumen
tat
iontha
t
des
cri
bewhatt
hecodeshou
ldbedoin
g.Readi
ngthete
stscanmakeite
asie
rto
under
st
andt
hecode.
Oneoft hemos ti mpo rta ntbe nefitsoft est-dr ivend evelopme nti st ha titre duc es
t
hec os t
so fr eg ressiont esting. Re gres si
ont estingi n volve srunni ngt e stse tstha th ave
succe ssfullye x ecut eda fterc ha nge sh a vebe enma det oas yste m.Ther egr essiont es
t
chec kst hatthe sec ha ngesha venoti ntroduc edne wb ugsi ntot hes ys tema ndt ha tthe
newc od einte rac tsa se xpe c tedwi tht hee xistingc ode .Re gr ess i
ont estingi sve ry
expe ns i
vea ndof teni mp rac ticalwhe nas y stemi sma nua l
lyt e sted,a st hec ostsi n
t
imea nde ffor tarev e ryhi gh. Ins uchs i
tuations ,youh avetot rya ndc h oos ethemos t
r
e l
e va nttestst or e-runa ndi ti se asyt omi ssimp orta nttests.
Howe ver,a utoma tedt esting ,whi chi sfunda me nt altot est-fi
rs tde ve lopme nt, dra-
ma tica l
lyr e duc e st hec ost sofr egre ssi
ont est i
ng.Exi stingt est sma yber e -run
quickl ya ndc he aply. Afterma kingac hanget oas yste mi nte st-fi
r stde v elopme nt,a l
l
existingt estsmus tr uns ucc ess full
ybe forea nyf ur therf unc tiona l
ityi sa dde d.Asa
prog ramme r, yo uc anbec on fide nttha tthene wf unc tionalityt hatyo uha vea dd e dha s
notc a usedorr evea l
e dp robl e mswi the xist
ingc o de .
Te st-dri
ve nde v elopme nti so fmos tus ei nne ws oftwa rede v elo pme n twh e ret he
f
unc tiona l
it
yi se it
he ri mpl e me ntedi nne wc odeorbyu singwe ll-t
e steds t
a nda rd
l
ibra ries.Ifyoua rer e usingl a rgec odec ompo ne ntsorl egac ys ys temst he nyoune ed
t
owr itetestsf ort he ses yste msa sawhol e.Te st-dr i
vend ev elopme ntma ya lsobe
i
ne ffec t
ivewi thmul ti-threa de ds ys t
e ms .Thedi ffere ntth r
ea dsma ybei nte r
leav eda t
diff
e rentt i
me si ndi ffe r
entt e struns ,a nds oma ypr oduc ed iffe r
e ntr esul ts.
Ifyouus et est-drive nde v e l
o pme nt ,yous tillne e das ys t
e mt estingp roc esst ov al
-
i
da tet hes yste m;t hati s
,t oc he ckth atitme etsther e quireme ntso fa l
lo fthes ys tem
st
a keh olders.Sys t
e mt est
in ga lsot estspe rf
o rma nce ,reliability,a ndc he c kstha tt he
system doe snotdot hingst ha tits houl dn’td o,s uc ha spr od uceu nwa nt edo ut p uts
,
etc.Andr e
a( 2007 )s ugge st sho wt estingtool sc anbee xte nde dt oi nte grates ome
aspec tso fsy stemt estingwi thTDD.
Te st-dri
v ende velopme ntha spr ov edt ob eas uc c e
ss f
ula pp roa chf ors ma lla nd
me diu m- si
ze dp roject s.Ge ne rally,pr ogramme r swhoh av ea dop te dt hisa pp roac ha re
happywi thi ta n df indi tamor ep roduc ti
vewa yt ode v el
ops of twa re( Je f
friesa nd
224 Cha
pter8 ■ Sof
twar
etes
ting
Me lni
k,2007).I
ns o
met r
ial
s,ithasbe
enshowntolea
dtoimpr
ovedcodequa
li
ty;i
n
others
,theresul
tshavebeeninconcl
usi
ve.Howe
v e
r,th
erei
snoevide
ncetha
tTDD
le
a dstopoore
rq ua
lit
ycode.
3 Rel
8. easet
est
ing
Rele as
et esti
ngisthepr oces
softestingapa rti
cul
arr el
easeofas yst
emt hatis
int
e ndedforuseouts
ideofthedevel
opme nttea
m. Normall
y,thesystemrele
aseisfor
custome r
sa nduser
s.Inac omplexp r
oject,ho
we ver
,therel
easec ouldbeforother
tea
mst hataredeve
lopingrela
tedsyst
ems .Forsoft
wareproducts,therel
easecould
bef orproductmanagementwhot he
npr eparei
tforsal
e .
Therea r
et woimportantdi
sti
nct
ionsbe twe
enr el
easetes
tin
ga nds yst
emt e
sting
duringthede vel
opmentprocess
:
1. Asepa
rat
ete
amthathasnotbe
eni
nvol
vedi
nthes
yst
emde
vel
opme
nts
hou
ldbe
r
esp
onsib
lef
orr
ele
a s
etest
ing.
2
. Syst
emt e
sti
ngb ythedevelopmentt
eams houl
dfocusondi
scover
ingbugsinthe
sys
tem(defec
ttest
ing).
Th eobje
cti
veofrele
asete
sti
ngist
ocheckthatt
hesyst
em
meetsi
tsreq
uire
me ntsandisgoodenoughforext
ernal
use(v
ali
dat
iontest
ing
).
8.
3.1 Requi
rement
s-bas
edt
est
ing
Age ner
alpri
nc ipleofgoodr equir
ementse ngi
neeri
ngpract
iceisthatrequir
eme nt
s
shouldbet estable;thatis,therequir
eme ntshouldbewr i
tt
ens othatat es
tca nbe
desi
g nedfortha tr
e quir
eme nt.Ateste
rc a
nt hencheckt
hattherequire
me nthasbeen
sat
isfie
d.Re quireme nts
-basedtest
ing,t
herefore,
isasyst
ematicapproachtotes
tc a
se
designwhe r
eyouc onsi
d ere a
chr equire
me ntandd eri
veas etoft est
sf orit.
Requ ir
eme n
ts-ba s
e dtest
ingi svali
dati
onr at
herthandefe
cttest
ing—yo ua retryi
ng
tode monstr
atet hatthesystemh asproperl
yi mple
me nt
edit
sre q
uirements.
8.
3 ■ Rel
eas
etes
ting 225
Forexa
mple
,consi
derr
ela
tedr
equi
reme
ntsfort
heMHC-PMS(i
ntr
oduc
edi
n
Chapt
er1)
,whi
chareco
nce
rnedwi
thch
ecki
ngfordr
uga
lle
rgi
es:
I
fapa t
ienti
skn owntobea l
ler
gictoanypart
icul
armedicati
on,t
henprescr
ip-
t
ionofthatme dica
tionshal
lresul
tinawar ni
ngme s
sagebe i
ngissue
dtot he
s
y s
temuser
.
Ifaprescri
be rchoos
estoignoreanalle
rgywa r
ning,the
ys h
allprov
idea
r
easonwhyt hi
sha sbeenignor
ed .
Tochec
kifthes
ere
qui
reme
ntsh
avebe
ens
ati
sf
ied,
youma
yne
edt
ode
vel
ops
ev-
e
ralr
ela
tedte
sts
:
1
. Setupapa
ti
entr
eco
rdwit
hnoknownall
erg
ies
. Pr
esc
rib
eme di
cat
ionf
ora
ll
e r
-
gie
stha
tar
eknowntoe
xis
t.Che
cktha
tawa r
ningmessagei
snoti
ssue
dbythe
syst
em.
2
. Se
tupapat
ie
ntre
cordwit
haknownal
le
rgy
.Pre
scr
ibethemedi
cat
iontot
hatt
he
pa
ti
enti
sal
le
rgi
cto,an
dchec
kthatt
hewar
nin
gisiss
ue dbyt
hesyst
em.
3
. Setupapati
entre
cor
dinwhi
chal
ler
gie
stotwoormoredru
gsa r
erec
orde
d.
Pr
escr
ibebot
hofthes
edr
ugss
epa
rat
elyandc
heckt
hatt
hecorr
ectwar
ningf
or
ea
chd r
ugisi
ssue
d.
4
. Pr
escr
ibet
wodru
gst
hatt
hepa
ti
enti
sal
ler
gict
o.Ch
eckt
hatt
wowa
rni
ngsa
re
co
rre
ctl
yis
sue
d.
5
. Pre
scri
beadrugtha
tis
suesawarni
ngandoverr
ulet
hatwarni
ng.Che
ckthatt
he
sys
temrequ
irest
heuse
rtopro
videinf
orma
tionexpl
ai
ningwhythewarn
ingwas
over
rul
ed.
Youcanseefr
om thi
sthatt
est
ingarequi
rementdo e
snotme a
njustwrit
ingas i
n-
g
letes
t.Younormall
yhavetowrit
esever
alte
ststoensuret
hatyouhavecoverageof
t
herequi
rement
.Yous h
oul
da l
soma i
nta
intr
aceabil
ityre
cor
dsofyourrequire
me nts
-
b
asedtes
ti
ng,wh i
chli
nkthetes
tst
othespeci
ficrequir
ement
sthatar
ebe i
ngt e
sted.
8.
3.2 Sc
enar
iot
est
ing
Scenariot esti
ngi sana pproachtorel
easetest
ingwhe reyoud evis
etypica
lscenari
os
ofu sea ndus ethe setode vel
optestcasesforthesystem.A s c
enari
oisas to
rythat
descri
b esonewa yi nwhi chthesystem mightbeu s
e d
.Sc enari
osshouldbereal
ist
ic
andr eals ys
tem us ersshouldbea bl
etorelat
et oth
em.I fy ouhaveusedscenar
iosas
partofther equireme ntsengineer
ingprocess(desc
ribedinCha pte
r4),the
nyouma y
bea bletor eusethe s
ea stest
ingscenari
os.
Inas hortpape rons cenari
ote s
ti
ng,Ka ner(2003)s uggest
sthatas c
enari
ot es
t
shouldbeana r
rativestorythatiscredi
bleandf ai
rlyc omplex.Itshoul
dmot i
vate
st
ak ehold e
rs;thatis,th
e yshouldrel
atetothescenar
ioa ndbeli
evethati
tisimport
ant
226 Cha
pter8 ■ Sof
twar
etes
ting
tha
tthes ys
tem pass
esthetes
t.Heals
os ug
ge s
tsthati
tshouldbeeas
ytoe v
alu
ate.
Fi
gure8.10 Ausage
sc
enari
of ort
he Ift
hereareproble
mswi tht
hesyst
em,the
nther e
leas
etest
ingteamsho
uldrec
ogniz
e
MHC-PMS them.Asa nexampleofapos si
blescenari
of r
om theMHC- PMS,Figur
e8.10
descr
ibesonewa ythatt
hesyst
emma ybeusedonahomev is
it.
Ittes
tsanumbe roffeat
ure
softheMHC- PMS:
1. Au
the
nti
cat
ionb
ylog
gin
gont
othes
yst
em.
2. Do
wnl
oad
inga
ndup
loa
dingofs
pec
ifi
edpa
ti
entr
ecor
dst
oal
apt
op.
3. Ho
mevi
si
tsc
hedu
ling.
4. Enc
ryp
tiona
ndd
ecr
ypt
ionofpa
ti
entr
ecor
dsonamobi
lede
vic
e.
5. Re
cor
dre
tri
eva
lan
dmo
dif
ica
tion
.
6. Li
nkswi
tht
hed
rugsda
taba
set
hatma
int
ai
nss
ide
-ef
fec
tinf
orma
tion
.
7. Thes
yst
emf
orc
allpr
omp
ting.
Ifyoua r
ear eleaset e
st er
,your unthr ought hisscenario,playi
n gther oleo f
Ka tea ndobs ervingho wt hes ystem beha vesi nresponset odi f
fer
entinput s.As
‘Ka te’,youmayma kede li
be r
a t
emi stake s,suc ha sinputtingthewr ongke y
phras etode coder ecords.Thi sc hecksther esponseoft hes ystemtoe rr
or s
.Yo u
shoul dc a
re full
ynot ea nypr oblemst hatarise,inc l
udingpe r
fo r
ma nceproblems .If
as ystemi stoos l
ow,t hiswi llc hangethewa yt hatitisus ed.Fore xampl e,ifit
takest ool ongt oe ncryptar ec
or d,the
nus erswhoa reshortoft i
mema ys ki
pt hi
s
stage.I ftheyt he nloset heirlaptop,anuna uthor i
zedpe rs
onc oul
dt henviewt he
patientr e
c ords.
Wh e nyouus eas cenari
o- baseda p
proach,y oua renormall
yt est
ingsever
alreq ui
re-
me ntswi t
hinth es a
mes cenar i
o.Th ere
fore
,a swe llaschecki
ngi ndi
v i
dua
l re
quireme nt
s,
youa rea l
soc hec ki
ngth atcombi nati
onsofr equireme n
tsdono tcauseproble
ms .
8.
3 ■ Rel
eas
etes
ting 227
8.
3.3 Per
for
manc
etes
ting
Onc eas ystemha sbe enc ompl etelyintegrate d,i
ti sp os sibletote stfore me rgen tprop-
ert
ies,suc ha sp e rf
or ma ncea ndr eli
a bil
ity.Pe rforma nc et estsh a vetobed esigne dto
ensureth atthes y stemc anpr ocessi t
si ntend edloa d.Thi sus ua ll
yi nv ol
v esrunn inga
seri
esoft estswhe reyoui ncrea seth eloa dun tilthes ystem pe rf
or ma ncebe come s
unacceptabl e.
Aswi thot hert ype soft esting,pe rf
or ma nc et e stingi sc onc erne dbot hwi th
demon stratingt ha tthes ys t
emme et
si tsreq uireme nt sa nddi sco ve r
ingp r
obl emsa nd
defectsi nt hes ys tem.Tot es twhe therpe rforma ncer equi reme ntsa rebe ing
achieved,youma yha vet oc ons t
ruc tano pe r
ationa lpr ofile.Anope r
a ti
ona lpr ofil
e
(seeCha p t
e r1 5)i sas etofteststh atreflectt h
ea ctua lmi xo fwor kt hatwi l
lbeha n-
dledbyt hes ys t
em.The refore,if90 %o fthet rans ac tionsi nas ystema reoft ypeA;
5% oft yp eB;a n dt her ema inderoft ypesC,D,a ndE,t henyouh a vet ode signt he
operati
on alpr of
i l
es ot hatthev astma jorityoft e st
sa reoft ypeA.Ot herwi se,you
willnotge ta nac cur atetesto ftheop erat
iona lpe rfor ma nc eoft hes ystem.
Thisa ppr oach,o fc ourse,isnotne ce s
sa ril
yt hebe stappr oa chf ord efectt esti
ng.
Exp eri
enc eha ss ho wnt hata ne ffecti
vewa yt odi sc ov erde fe ctsist ode s
ig nt est
s
aroundt hel imi t
so ft hes ystem. Inpe rforma ncete s
ting , t
h isme anss tr
es s
ingt hes ys-
t
e m byma kingde ma ndst hata r
eou tsi
det hede signl imi tsoft hes oftwa re
.Th isis
knowna s‘ stresst esting’.Fore xa mp le,sayyoua r
et estingat ransac t
ionpr o cessing
systemt ha tisde signe dt oproc essu pt o30 0tra nsa ctionsp e rs econd.Yous t
a r
tb y
t
e s
tingthi ss ystem wi thf e
we rtha n3 00t rans a
c t
ion spe rs econ d.Yout h engr adu al
ly
i
nc re
a s
et h el oado nt hes ystem be yon d30 0trans ac t
io nspe rs econdu ntilitiswe l
l
beyondt h ema ximum d es
ignl oadoft hes yst
e ma ndt hes yste mf a i
ls.Th ist ypeof
t
e s
tingh ast wof unc ti
ons :
1
.I ttes
tsthef ail
urebehavi
orofthesys
tem.Ci r
cumsta
nc esmaya ri
sethr
ougha n
unexpectedc ombinat
ionofevent
swheretheloadplacedonthes y
steme xce
e ds
thema ximu ma nti
ci
patedloa
d.Inthes
ecircumsta
nce s
,iti
simp ort
antthatsys-
temfailureshouldnotcausedat
acorr
upti
onorun exp
e ct
edlossofuserservi
ce s
.
Stres
st es
tingc hec
kst ha
toverl
oadi
ngthesy s
temc ausesi
tto‘ f
ail
-sof
t’rather
thancollapseunderit
sload.
2
.I tst
res
sesthesyst
ema ndma yc
a us
ed efe
ctst
ocometoligh
tthatwoul
dnotn or
-
ma l
lybediscove
red.Al
thoughitcanbea r
guedt
hatth
esedefe
ctsar
eunli
k el
yto
causesyst
emf ai
lure
sinnor ma
lus age,t
heremaybeu nus
ualcombinat
ionsof
normalci
rcums t
ancest
hatthes
tres
st e
sti
ngrepl
ica
tes
.
St
resste
sti
ngi spart
icula
rlyrele
vanttodist
ri
but
eds yst
emsbasedonan et
workof
p
rocess
ors.The s
es yst
emsof tenexhibitse
veredegradat
ionwhentheyareheavily
l
oaded.Thene tworkbe come sswamp edwithcoordinat
iondatat
hatthediff
erent
p
rocess
esmus texchange.Th eproces
sesbecomes l
owe randsl
owerastheywaitfor
t
herequir
edda tafr
om ot herproces
ses.Str
esste
sti
nghe lpsyoudis
coverwhent he
d
egradat
ionbeginss othatyouc anaddc heckst
ot hesystemtorej
ecttr
ansac
tions
b
eyondthispoint.
228 Cha
pter8 ■ Sof
twar
etes
ting
8.
4 Usert
est
ing
1. Al
phate
s t
ing
,whereuse
rsofthesof
twar
ewor
kwi
tht
hed
eve
lopme
ntt
eamt
o
t
estt
hesof
twarea
tthedeve
lop
e r
’ssi
te
.
2. Bet
at e
sti
ng,wher
earel
eas
eofth
es of
twa
rei
smadea
vai
labl
etouse
rstoal
low
t
hemt oexperi
menta
ndtorai
seprobl
emsth
att
heydi
sco
verwiththesy
ste
m
de
veloper
s.
3. Acce
ptan
cet
est
ing,wher
ecust
omerst
estasys
temtode
cidewhe
the
rornoti
tis
r
eadytobea
ccept
edfrom t
hesys
temdevel
oper
sanddeplo
yedi
nthecus
tomer
en
vir
onment
.
Ina l
phatesti
ng ,us ersandde v e
lo perswor ktoge t
hertot e s
tas ystema sitisbe ing
deve l
oped.Th isme anst hattheus ersc anide nt
ifyp r
ob lemsa ndi ssue sthata renot
readil
ya pparenttot hed evelopme ntt e
sti
n gte a
m.De velope rsc anon lyr e a
llywor k
fro
mt herequireme ntsb uttheseof te ndon otre f
lectotherf actorstha taffectthepr ac-
ti
calu seofthes oft
wa re.Us ersc ant heref
orepr ovideinfor ma ti
o nabo utpr acti
c ethat
helpswi t
ht hede s
igno fmor er e al
istictests
.
Alphat est
ingi sof tenus edwhe nd eve l
opings oftwa repro duc t
st ha tares olda s
shrink-wrappeds ystems .Us e r
soft he s
epr oduc t
sma ybewi llingt oge ti nvolve din
thea l
phat est
ingpr oc essbe caus eth isgivesthe me arl
yi nforma tio
na bou tnews ys-
temf eatur
esth att
he yc ane xp loit.Italsoreduc estheriskt hatuna nticipa t
edc ha nges
tothes oft
wa r
ewi llha vedi srupt i
vee f
fect
sont hei
rb usine ss.Ho we ver,a l
phat es t
ing
ma ya ls
obeu sedwhe nc ustoms oftwa reisbeingde velop ed.Agi leme thod s
,s ucha s
XP ,advo ca
teus eri nvolv e
me n tint hed evelopme ntpr oc essa ndt hatus er
ss h ould
playak eyr ol
ei nde signingt estsfort hes yst
e m.
Be t
atesti
ngt ake spla cewhe na ne arl
y,some t
imesu nfini
s hed,r el
e aseo fas oft
-
war esy s
temi sma dea v ai
lablet oc ust
ome rsa ndus ersf ore valuation.Be tates ter
s
8.
4 ■ Us
ert
est
ing 229
ma ybeas elect
edgr oupofc ustome rswhoa ree arlya doptersoft hes ystem.
Fi
gure8.11 The
ac
ceptancet
est
ing Alternatively,t
hes oft
wa rema ybema d epubli
c l
ya vaila
blef oru sebya nyonewhoi s
pr
ocess interes
tedi ni t
.Be tate st
ingi smos tl
yu sedfors of t
wa repr oductsthata r
eus edin
ma nydi fferentenvironme nts( asoppos edtoc ustom s yst
e mswhi cha r
ege nerall
y
usedi nade f
inede nvir
o nme nt)
.Itisimpos si
bleforpr oduc tde vel
ope r
stok nowa nd
replicat
ea l
lthee nvironme n t
sinwhi chthes oft
wa rewi l
lbeus ed.Be tatesti
ngi s
thereforee ssent
ialtodi scoverinteract
ionp r
oblemsbe twe ent hes oft
wa r
ea ndf ea-
turesoft hee nvi
ronme ntwh e r
ei ti
sus ed.Betatestingisa l
s oaf ormofma rketi
ng—
custome rslearnabo uttheirsystema ndwha titcandof orthe m.
Ac ceptancetestingi sani nherentpa r
tofc ust
om s yst
emsd e
velopme nt.Itta
k es
placea f
te rrel
easete s
ting.Itinvolvesac ust
ome rfor mallytestingas yst
emt ode cid
e
wh ethero rnotitshouldbea cceptedfromt hesystemde velop e
r.Ac cept
anceimp lies
thatpayme ntshouldbema deforthesys t
em.
Therea r
es i
xs tagesi nthea ccepta
nc etest
ingpr oce
ss,a ss howni nFigure8. 11.
The yare:
1. De f
ineac ceptancecrite
riaThisst
ages hould,i
deal
ly,tak
epl acee a
rlyinthe
processbeforet hecontractf
orthes yst
emi ssi
gned.Thea cceptancecri
ter
ia
shouldbepa r
to ft
hes yst
emc ont
ractandbea gre
edbetweenthec ust
o merand
thedeveloper.Inpract
ice,however
,itcanbedi f
fi
cul
ttodefinecri
teri
as oear
ly
intheprocess.De t
ail
edrequir
ementsma ynotbeavai
lablea
ndt her
ema ybesig-
nif
icantrequire
me ntschangeduri
ngthede v
elopmentproce
ss.
2. Planac cept
ancetest
ingThi sinvol
vesde c
idingont heresources,ti
me ,and
budgetforacce
ptancetest
inga n
de st
abli
shingat es
ti
ngs c
he dule
.Thea c c
ep-
tanc
et e
stpla
nshouldals
odi s
cussthere
quiredcovera
geofther eq
uirementsand
theorderi
nwh i
chsystemfeatur
esa r
etes
ted.Itshoul
ddefi
ner i
skstothetest
ing
proce
s s
,suchassyst
emc rashesandinadequateperf
ormance,anddi s
cussho w
thes
er i
skscanbemiti
gated.
3. Deriveacceptancetes
tsOnc ea cceptancec rit
e r
iahavebe ene sta
blis
hed,test
s
havetobede si
gnedtoc he
ckwhe t
herornotas yst
emi sacc eptable.Accepta
nce
te
stsshoulda i
mt otestboththef unctionala ndno n-
functiona lcharacte
ris
tic
s
(e.
g.,
p e
rformance)ofthesyst
em. The ys hould,idea
lly
, providec omp l
etecover
-
ageofthesystemrequir
eme nt
s. I
npr actice,i
tisdiff
icultt
oe s t
ab l
ishcompletel
y
obje
ctiv
ea ccepta
ncecrit
eria
.The reiso ftens copefora r
gu me ntaboutwh ether
ornotatestshowsthatac r
it
erionh asde fi
nit
e l
yb eenme t.
230 Cha
pter8 ■ Sof
twar
etes
ting
4. Runac ce
ptancetest
sTheagr eedacce
ptanc
etest
sa r
ee xecut
edont hesystem.
Ide
all
y,thi
ss houl
dtakepla
c eintheactu
alenvi
ronmentwhe rethesyst
em wi l
l
beused,bu tt
hisma ybedisrupti
veandimpract
ical
.The r
efore
,aus ertes
ting
envi
ronmentma yh a
vetobes etuptorunthes
etests
.Itisdif
fic
ulttoautomate
t
hisprocessaspartoft
heac cepta
ncetes
tsmayinvolvetes
tingtheint
eract
ions
bet
wee nend-use
rsandthesystem.Sometra
ini
ngo fend-
usersma yberequir
ed.
5
. Negotiat
ete
stresult
sItisver
yunli
kel
ythatall
ofthedefi
neda c
c e
ptancete
stswil
l
passandthattherewillbenoprobl
emswi t
ht hesyst
em.Ifthisisthecase
,then
accepta
ncetesti
ngisc omplet
eandthesystemc anbehandedov er.Morec om-
mon ly
,somepr oble
mswi llbedis
cover
ed.Ins uchcase
s,th
ede v e
loperandthe
cust
ome rhavetonegotiat
etodeci
deifth
es yst
e misgoodenoug htobep utin
to
use.Theymus tal
soag r
eeonthedeve
loper
’srespons
etoidenti
fie
dp robl
ems.
6. Re j
ect
/acceptsys
temThisst
ageinvolvesame etingbetweenthede velopers
andthec u
stomertode
cid
eonwhe th
e rornotthesyste
ms houldbea c
cepted.If
t
hes yste
mi snotgoodenoughforus e
,thenf u
rtherdevel
opme ntisrequire
d
t
of ixtheident
if
iedpr
obl
ems.Oncec omplete
,thea ccept
ancetest
ingpha seis
r
e peat
ed.
Ina gileme t
h ods ,
s ucha sXP ,a cc epta ncet estingha sar at
h erdifferentme aning . In
principle,i tshare sthen otiont hatus erss hou ldd eci
dewh e t
he rornott hes ys temi s
acce ptable.Ho we ver,inXP ,theus e rispa rtoft hed ev el
opme ntteam( i.
e.,h eors he
isa na lphat e s
te r)andpr ov i
de st hes ystemr equi reme ntsint ermsofus e rstor ie s
.
Heors hei salsor esp ons i
bl ef orde finingt h et ests,whi chde cidewhe therornott he
dev elope ds o
ftwa res uppo r tstheus ers tor y.Th et est
sa reauto ma te
da ndde velo pme nt
doe snotp roceedunt ilthes t
orya cc ept anc ete st
sh avepa s
sed.The reis,the refore ,n o
sepa r
a t
ea cceptanc ete s
tinga ctivity.
AsIha vedis cus s
e di nCh apt er3 ,onep robl emwi thu serinvolv e
me ntise ns uring
thattheu serwhoi sembe dd edi nt hede v el
o pme ntteami sa‘ typ i
c al
’us erwi t
hge n-
eralk no wledgeo fh owt h es yste mwi llbeu sed. Itcanbedi ffi
culttof inds uchau se r
,
ands ot h ea cc eptanc et e stsma ya c tuallyn otbeat r
uer eflecti
onofpr a ctice.
Fur t
he rmor e,ther e quireme ntf ora utoma tedt estingse verel
yl imitst hef l
exi bili
tyof
testi
ngi nt era
c t
ives ys tems .Fors uc hs ystems , acceptan cetestingma yr equiregr oups
ofe nd-u serstous ethes ystema sifi twa spa rtoft h e
ire veryda ywo rk.
Youmi ghtthi nkt hata c cept anc et e sti
ngi sac lear-cutc ontractuali s
sue .Ifas ys-
tem do e sn otpa ssi t
sa c cept anc et ests ,theni tsho uldn otbea ccepteda ndpa yme nt
shou ldnotbema de.Ho we v er
,t h er ea lit
yi smor ec ompl ex .Cus tome rswa ntt ou se
thes oftwa r
ea ss oo na st he yc anbe c aus eoft hebe nefi
tsofi t
si mme diatede ploy -
me nt.The yma yha v eboughtne w ha rdwa re,t raineds taff,a ndc han ge dt he i
r
proc esses .The yma ybewi l
lingt oa cc eptt hes of t
wa re,irrespec t
iveofp roble ms ,
bec auset hec ostsofnotus ingt hes of twa rea reg reaterth ant hec o st
sofwor king
aroundt hepr oblems .The refor e,t heout comeofne go ti
ationsma ybec ondi tiona l
acce ptanc eoft hes ys tem.Th ec u stome rma ya c ceptthes ys t
ems ot hatde ployme nt
canbe gin.Th es ystem pr o vide ra gr eest or epa irur g
entpr oble msa n dd eliverane w
versiont ot hec ustome ra squi c klya spos si
bl e.
Chapt
er8 ■ F
urt
herr
eadi
ng 231
KEY POI
NTS
■ T
est
ingc
anonl
yshowt
hepr
ese
nceofe
rror
sinapr
ogr
am.I
tcannotde
mons
tra
tet
hatt
her
ear
e
nor
emai
ningf
aul
ts.
■ Dev
elopmentt
est
ingi
sther
espons
ibi
li
tyoft
hes
oft
war
edev
elopmentt
eam.
Asepar
atet
eam
shouldberes
pons
ibl
efort
est
ingasys
tembeforei
tisr
elea
sedtocust
omers
.Intheusert
est
ing
process
,cust
omer
sorsyst
emuserspr
ovi
detestdat
aandcheckthatt
est
saresucc
ess
ful.
■ Dev
elopmentt
est
ingi
ncl
udesuni
tte
sti
ng,
inwhi
chy
out
esti
ndi
vi
dual
obj
ect
sandmet
hods
;
c
omponentt
est
ing,
inwhi
chyoutes
trel
atedgr
oupsofobj
ect
s;ands
yst
emt
est
ing,i
nwhi
ch
y
outes
tpart
ial
orcompl
etes
ystems.
■ Whe
ntes
tings
oft
war
e,y
ous
houl
dtr
yto‘
bre
ak’
thes
oft
war
ebyus
ingex
per
ienc
eandgui
del
ine
s
t
ochoos
ety
pesoft
estc
asest
hatha
vebee
nef
fec
ti
vei
ndi
scov
eri
ngdef
ect
sinot
hers
yst
ems
.
■ Whe
rev
erpos
sibl
e,y
ous
houl
dwr
it
eaut
omat
edt
est
s.Thet
est
sar
eembeddedi
napr
ogr
amt
hat
c
anber
une
ver
yti
meac
hangei
sma
det
oas
yst
em.
■ T
est
-f
ir
stdev
elopmenti
sanappr
oac
htodev
elopmentwhe
ret
est
sar
ewr
it
tenbef
oret
hec
odet
o
beteste
d.Smal
lcodec
hangesar
emadeandt
hec
odei
sref
act
oredunt
ilal
ltes
tsex
ecut
e
suc
c es
sful
ly
.
■ Sc
enar
iot
est
ingi
sus
efulbec
aus
eitr
epl
ic
atest
hepr
act
ica
lus
eoft
hes
yst
em.I
tinv
olv
es
i
nvent
ingat
ypi
calus
ages
cena
rioandus
ingt
hist
oder
ivet
estc
ases
.
■ Ac
cept
anc
etes
tingi
saus
ert
est
ingpr
oces
swher
etheai
mist
odec
idei
fthes
oft
war
eisgood
enought
obedepl
oyedandus
edi
nit
soper
ati
onal
env
ironment
.
FURTHER READI
NG
‘
Howt odesignprac
ticalt
estcases’
.Ahow-t
oa rt
ic
leont estc
asedesignbyanauthorfr
oma
J
apanesecompanyt hathasav er
ygoodreput
ationfordeli
ver
ingsof
twa r
ewithver
yfewf a
ult
s.
(
T.Yamaura,IEEESoft
ware,15(6)
,November1998.)ht
tp://
dx.doi
.or
g/10.1
109/52.
730835.
HowtoBreakSoftware:APract
icalGui
det oTesti
ng.Thi
sisapracti
cal
,rathert
hantheor
eti
cal
,book
onsof
twaretes
tinginwhichthea ut
horpresentsasetofexperi
ence-
basedguideli
nesondesi
gning
tes
tst
hatareli
ke l
ytobeeffect
iv
ei ndi
scoveringsys
temfaults
.(J.
A.Whi t
taker
,Addis
on-
Wes l
ey,
2002.
)
‘Soft
war
eT es
tingandVeri
fi
cati
on’
.Thi
sspecia
lissueoftheIBMSys
temsJ
ournali
ncl
udesanumber
ofpaper
sont esti
ng,i
ncl
udingagoodgeneralover
vie
w, paper
sont
estmet
ri
cs,andtes
t
automat
ion.(I
BMSy st
emsJournal
,41(
1),
January2002.)
‘Test
-dr
ivendevel
opment’.
Thisspeci
alis
sueontes
t-dr
ive
ndev
elopmenti
ncl
udesagoodge ner
al
overv
iewof TDDaswel
lasex per
ienc
epape r
sonhowTDDhasbeenusedfordi
ff
erentt
ypesof
soft
ware.(I
EEESoft
ware,24(3)May/June2007.
)
232 Cha
pter8 ■ Sof
twar
etes
ting
EXERCI
SES
8.
1.Expl
a i
nwhyiti
snotne
cessar
yforapr
ogr
amt
obec
ompl
etel
yfr
eeofdef
ect
sbef
orei
tis
deli
veredt
oit
scust
omers
.
8.
2.Ex
pla
inwhyt
est
ingc
anonl
yde
tec
tthepr
esenc
eofer
ror
s,nott
hei
rabs
enc
e.
8.
3.Somepeoplear
guethatdevelopersshoul
dnotbeinv
olv
edint
est
ingt
hei
rownc odebutthat
al
ltesti
ngs
houldbetherespons i
bil
it
yofasepar
atet
eam.Gi
vear
gument
sforandagains
t
te
stingbyt
hedevel
opersthems elv
es.
8.
4.Youhavebeenaskedtot estamethodc
alle
d‘ c
atWhi
teSpace’i
na‘ Par
agraph’obj
ectt
hat,
wit
hintheparagr
aph,repla
c ess
equenc
esof bl
ankchara
cterswit
has inglebl
ankcharac
ter
.
I
dentif
ytest
ingpart
it
ionsforthi
se x
ampleandderi
veas etoft
estsforthe‘c
atWhit
eSpace’
method.
8.
5.Whati
sregr
ess
iont
esti
ng?Expl
ainhowtheus
eofaut
omat
edt
est
sandat
est
ingf
ramewor
k
suc
hasJUni
tsi
mpli
fi
esregr
essi
ontest
ing.
8.
6.TheMHC-PMSi scons
truct
edbyada pt
inganoff-
the
-shel
finf
ormati
onsyst
em.Whatdoy
ou
thi
nkarethedif
fer
encesbetweentest
ingsuc
has yst
emandt est
ingsof
twar
ethati
s
devel
opedusinganobjec
t-ori
ent
edlanguagesuchasJav
a?
8.
7.Wri
teascenar
iot
hatc
oul
dbeus
edt
ohel
pdes
ignt
est
sfort
hewi
lder
nes
swea
thers
tat
ion
sy
stem.
8.
8.Whatdoyouunder
standbyt
het
erm‘
str
esst
est
ing’
?Sugges
thowy
oumi
ghts
tres
ste
stt
he
MHC-PMS.
8.
9.Whatar
ethebenefi
tsofi
nvol
vinguse
rsi
nreleas
etes
tinga
tane
arl
yst
agei
nthet
est
ing
pr
ocess
?Arether
edisadv
antagesi
nuseri
nvolv
ement?
8.
10.Acommonappr oac
htosyst
emt esti
ngistotestt
hes y
stemunt
ilt
hetest
ingbudgetis
ex
haustedandthendel
iv
erthes y
stemtoc ust
ome r
s.Disc
usst
heethi
csofthi
sapproach
f
orsys
temst ha
taredel
iv
eredtoex t
ernal
cus t
omers.
REFERENCES
Andrea,J.(
2007)
.‘Env
isi
oni
ngt
heNex
tGener
ati
onofF
unc
tional
Tes
tingT
ool
s’
.IEEESof
twar
e,24
(3)
,58– 65.
Be
ck,
K.(
2002)
.Tes
tDr
ivenDev
elopme
nt:ByEx
ampl
e.Bos
ton:Addi
son-
Wes
ley
.
Be
zier
,B.
(1990)
.Sof
twar
eTe
sti
ngT
echni
ques
,2ndedi
ti
on.
NewY
ork:V
anNos
trandRhei
nhol
d.
Boehm,B.W.(
1979)
.‘Sof
twar
ee ngi
neeri
ng;R&DT rendsanddefens
eneeds
.’I
nResear
ch
Dir
ect
ionsi
nSoft
wareTec
hnology.Wegner
,P.(
ed.
).Cambridge,
Mas s.
:MI
TPress
.1–
9.
Cus
amano,
M.andSel
by,
R.W.
(1998)
.Mi
cros
oftSe
cre
ts.
NewY
ork:Si
monandShus
ter
.
Cha
pter8 ■ Ref
erenc
es 233
Di
jks
tra,
E.W.
,Dahl
,O.J
.andHoa
re,C.
A.R.(
1972)
.St
ruc
tur
edPr
ogr
ammi
ng.
London:Ac
ademi
c
Pr
ess.
F
agan,M.E.
(1986)
.‘Adv
anc
esi
nSof
twar
eIns
pec
tions
’.I
EEET
rans
.onSof
twa
reEng.
,SE-
12(
7),
7
44–51.
J
eff
ri
es,
R.andMel
nik,
G.(
2007)
.‘TDD:TheAr
tofF
ear
les
sPr
ogr
ammi
ng’
.IEEESof
twar
e,24,
24–
30.
Kaner,
C.(
2003).‘Thepowerof‘WhatI
f...
’andni
newaystofuelyouri
magi
nat
ion:Cem Kaneron
sc
e nar
iot
est
ing’.
SoftwareTes
tingandQual
it
yEngi
neer
ing,5(5),
16–22.
Lut
z,R.R.
(1993).
‘Anal
y z
ingSoft
war
eRequi
rement
sEr
ror
sinSaf
ety
-Cr
it
ical
EmbeddedSy
stems
’.
RE’
93,SanDiego,Cal
if
.:IEEE.
Mar
ti
n,R.
C.(
2007)
.‘Pr
ofe
ssi
onal
is
mandT
est
-Dr
iv
enDev
elopment
’.I
EEESof
twar
e,24(
3),32–
6.
Mas
sol
,V.andHus
ted,
T.(
2003)
.JUni
tinAc
tion.
Greenwi
ch,Conn.
:Manni
ngPubl
ic
ati
onsCo.
Prowell
,S.J
.,
Tra
mme ll
,C.J
.,Li
nger
,R.C.andPoore,J
.H.(1
999)
.Cl
eanr
oomSof
twa
reEngi
nee
ring:
Technol
ogyandProc
ess.Readi
ng,Mass.
:Addison-Wesl
ey.
Whi
tt
aker
,J.
W.(
2002)
.Howt
oBr
eakSof
twar
e:APr
act
ic
alGui
det
oTes
ting.
Bos
ton:Addi
son-
Wes
ley
.
9
Sof
twar
eev
olut
ion
Obj
ect
ive
s
Theobjec
tiv
esofthischapt
eraret
oexplai
nwhysof
t wareevol
uti
onis
animport
antpartofsoft
wareengi
nee
ringandtode
s cri
besoft
ware
evol
uti
onproces
s es
. Whenyouhaver
eadthisc
hapter,youwil
l:
■ under
standthatchangeisi
nev
itabl
eifsof
twar
esyst
emsa r
eto
remai
nus ef
ulandthatsoft
war
edevelopmentandev
olut
ionmay
beint
egrate
dinas pir
almodel
;
■ unders
tandsof
twar
eev
olut
ionpr
oces
sesa
ndi
nfl
uenc
esont
hes
e
proc
esses;
■ havelear
nedaboutdif
fer
enttypesofs
oftwar
emai
nte
nanc
eand
thefa
c t
orst
hataf
fectmaint
enancecost
s;and
■ underst
andhowlegacys
ystemscanbeassess
edt odeci
de
whetherthe
yshouldbescr
apped,mai
ntai
ned,reengi
neer
ed,
orrepl
aced.
Cont
ent
s
9.
1Evoluti
onproces s
es
9.
2Program e
volutiondynami
cs
9.
3Softwaremaintenanc
e
9.
4Legacysystemmana gement
Chapt
er9 ■ Sof
twar
eev
olut
ion 235
Sof t
wa rede ve l
opme ntd oe snots topwhe nas ys temi sde l
ive re dbutc ont inue s
thro ugho utt hel ife timeoft hes ys t
e m. Afteras ys temha sbe ende pl oye d, itine vitably
ha st oc hang ei fiti st or ema inus e ful.Bus ines sc ha nge sa ndc ha ng est ous ere xp e c
-
tation sge n era tene wr equi re me ntsf ort hee xistings oftwa re.Pa rtsoft hes oftwa r
e
ma yh a vet obemod ifi
e dt oc orrec ter r
or sthata ref oun di no peratio n,t oa da pti tfor
cha nge st oi tsha r dwa rea nds oftwa r
ep lat
form,a ndt oi mp rovei tsp erfo rma nc eor
othe rnon -
f unc tiona lc ha ra cteri
s t
ic s.
Sof twar ee vol ut ioni si mpo rta ntbe caus eor ga niz ationsha vei n ve s
te dl a rge
amount sofmo ne yi nt h eirs of t
wa rea nda ren owc omp l
e telyde pen de ntont he ses ys-
tems .The irs ys te msa r ec ri
ticalb usine ssa ssetsa ndt he yha vet oi nv esti ns yste m
cha nget oma inta int hev a l
ueoft he sea ssets.Cons e
que ntly,mos tl argec ompa nies
spe ndmor eonma i
nt a i
ni nge xistin gs ys t
emst ha nonn ews yste msde v elopme nt.
Ba s edona ni nf or ma l i
nd ustryp ol l,Er li
kh( 2000 )s ugg estst ha t85– 90% o for ga niz a
-
tion als oft
wa rec os tsa ree volutionc os t
s.Ot he rsu rv eyss ug ge sttha ta bout t
wo- thirds
ofs oftwa rec os tsa ree v olut ionc os ts.Fors ure ,t hec os tso fsof t
wa rec ha ngea rea
largepa rtoft heI Tb ud ge tf ora llc ompa nies.
Sof twar ee vol ut ionma ybet rigge re dbyc ha ngi ngbu sinessr eq uire me nt s,by
repor tso fs of twa r ed efe cts,orbyc ha nge stoot h ers yste msi nas oftwa res ys t
em’ s
en vironme nt. Ho pki nsa ndJ enk ins( 20 08)ha vec o inedt het erm‘ br ownf ields of t
wa r
e
de ve l
opme nt ’t od esc ribes it
ua tionsi nwhi chs of twa r
es y stemsha vet obede v elope d
andma nage di na ne nvi ronme ntwh eret heya rede pend e nto nma nyo the rs of t
wa r
e
sys tems .
The re f
o re,t hee vol ut i
onofas ys t
e mc anr a relybec onside redi ni sol ation.
Cha nge st ot h ee n vironme ntle adt os ystemc ha nget ha tma yt he nt rigg erf urther
en vironme nta lc ha ng e s.Ofc ourse ,thef ac tt
ha tsys temsha v etoe v olv ei na‘ s ys t
ems -
rich’e nvironme nto fteni nc rease st hed iffi
cultiesa ndc os tsofe vol ut ion.Aswe llas
un de rstandinga nda n alyz inga ni mpa ctofapr op os edc ha ngeont hes ys t
e mi tself,
yo uma ya lsoha vet oa s sessho wt hisma ya ff
e c to thers ystemsi nt heope rationa l
en vironme nt.
Us efuls oftwa res ys temsof t
e nh a veav eryl ongl ifet
ime . Fore x ampl e, l
argemi li
-
taryo rinfra st
r uct ur es ys tems ,sucha sa irtr
a f
ficc ont r
ol sy stems ,ma yha v eal i
f e
time
of30ye arso rmor e .Bus ine sss ys temsa reof tenmor et ha n10ye a rso ld.So ftwa r
e
cos tal oto fmon e ys oac ompa nyha stous eas o ftwa res ys temf orma n yye arst oge t
ar e turno ni tsi n ve s tme nt.Obvi ous ly,ther e qui re me nt soft hei ns ta ll
e ds ys tems
cha ngea st heb us i ne ssa ndi tse nvi ronme ntc ha nge .The re fore,n ewr elease soft he
sys tems , i
nc or po ra t
in gc ha nge s,andup da t
es,a reus uallyc reateda tr eg ulari nte r
v als.
Yous houl d,t he refor e ,thi nkofs oftwa ree ngi ne eringa sas pi ralpr oc esswi t
h
requ ireme nt s,de sign,i mpl eme ntation,a ndt es t
ingg oingont hr
oug hou tthel i
f e
time
oft hes yst
e m( Fi g ure9 .1 ).Yous ta rtbyc reat
ingr e l
e ase1oft hes ys tem. On c ed e li
v-
ere d,c ha ngesa repr op ose da ndt hede v elo
pme n tofr elea se2s tartsa lmos ti mme di-
ately .Inf act,t hene e df o re vo l
utio nma yb ecomeo bviou se v enb e foret h es ys temi s
de ploye ds ot ha tl a terr ele aseso ft hes oftwarema ybeun de rd evelopme ntbe foret he
cur rentve rs i
onha sb e enr elea s
e d.
Th ismo de lo fs of twa ree volu ti
oni mpl iestha tas ingleor g ani
z ationi sr espon sible
fo rbo tht hei nitia ls of twa rede ve lopme nta ndt hee vol utionoft hes of t
wa r e.Mos t
236 Cha
pter9 ■ Sof
twar
eev
olut
ion
Spec
ific
ati
on I
mpl
ement
ati
on
St
art
et
c.
Rel
eas
e1
Oper
ati
on Val
i
dat
ion
Rel
eas
e2
Fi
gure9.
1 As pi
ral Rel
eas
e3
modelofdevel
opment
andevol
uti
on
pac k
a ge ds oft
wa reproduc tsa r
ed e vel
ope dus ingt hisappr oa ch .Forc us toms oftwa re
,
ad if
fe r
e nta pproa chisc ommonl yus ed .As of twa rec ompa nyde ve lopss o ft
wa ref ora
custome ra ndt hec ustome r’sownde v elop me nts t
a ffthent ak eo ve rthes yste m.The y
arer espo ns i
blef ors oftwa ree voluti
on.Al terna ti
v ely,thes o ft
wa r ec ustome rmi ght
issueas epa ra
tec ontr
ac ttoadi fferentc ompa nyf o rsystems up porta nde vo lution.
Inthi sc ase
, the r
ea r
el ikel
yt obedi s continu iti
e sint hespi ra lproc ess.Re quire me nts
andde signdo cume nt
sma yno tbepa sse df ro m on eco mpa nyt oa n other.Compa ni es
ma yme rgeorr eo r
gani zea ndinhe ri
ts o ft
wa ref ro mo the rc o mp an ies,a ndt he nf ind
thatthish astobec hange d. Whe nt hetra nsitionf romde v elo pme nt t
oe v olutio ni snot
seaml ess ,thepr ocessofc hangingt hes of t
wa rea f
terde live ryi sof tenc alle d‘ sof t
-
wa rema int enanc e’.AsIdi sc ussl a
te rint hisc ha pter,ma in tena ncei nvol ve se xtra
proces sa ctivi
t i
e s,sucha sp rogr am un de rstan ding,i na ddi tiont ot heno rma la ctivi-
ti
e sofs of t
wa rede vel
o pme nt.
Ra jl
ic ha ndBe nn e
tt(20 00)p ropose da na lter
na tivev iewoft hes oftwa ree vo l
ut ion
li
fec yc le,a ssho wni nFi gu re9.2.I nthi smode l,the ydi st
in gui shb etwe ene volu tion
ands e rvicing.Ev olutioni sthepha sei nwh ichs ignifi
c antc hang est ot hes o ftwa re
architecturea n df unctionalit
yma ybema de .Du rings ervicing,t heo nlyc ha nge st hat
arema dea rere l
a t
ivelys ma l
l,esse nt
ialc ha n ge s
.
Du ringe volution,thes oftwa reisus eds uc cessf ull
ya ndt he reisac ons tants tr
e am
ofpr op ose dre qui r
eme ntsc hang es.Ho we ve r,ast hes of t
wa rei smodi f
ie d,i tss t
r uc-
tureten dst ode gr adeandc hange sbe comemo rea ndmor ee x pens ive.Th i sof tenh ap-
pensa f
te raf ewye ar
sofu sewh e nothe re n viron me ntalc h ang e s
,s uc ha sha r
dwa re
ando pe r
a t
ings ystems ,area lsoof tenr eq uire d.Ats omes tagei nthel i
f ec y cle,t he
softwa rer e ache sat ransiti
onpo intwhe r
es igni ficantc ha nge s ,impl eme nt ingn e w
requireme nts,be comel essan dlessc oste ffe ctive.
I
nit
ial
Ev
olut
ion Ser
vic
ing Phas
eout
Fi
gur
e9.2 Evol
uti
on Dev
elopment
ands
erv
ici
ng
9.
1■ E
vol
uti
onpr
oces
ses 237
ChangeI
dent
if
ic
ati
on
Pr
oces
s
New Sy
stem ChangePr
opos
als
Fi
gure9.3 Change Sof
twar
eEvolut
ion
i
denti
fi
cat
ionand Pr
oces
s
ev
olut
ionproces
ses
Att hatstage,t
hes oftwar
emo vesfr
ome volut
iontoser
vic
ing.Duringt heservic
-
i
ngpha s
e,t hesoft
wa reissti
llu sef
ulandu s
edbuton lysmal
ltacti
calc hangesa r
e
madet oit.Dur i
ngth i
ss t
age,thec ompanyisusual
lyconsi
deri
ngho wt hes of
twa r
e
ca
nber eplaced.Inthef i
nalst
a ge,phas
e-out
,thesoft
wa r
ema ysti
llbeus edb utno
f
urth
e rcha ngesareb eingimpl emente
d.Us er
sha v
et oworkarounda nypr obl
e ms
t
hattheydi scover
.
9.
1 Evol
uti
onpr
ocesses
Pl
atf
orm Sy
stem
F
aul
tRepai
r
Adapt
ati
on Enhancement
Figu r
e9 .4 ,a daptedf romAr t
hu r(198 8) ,showsa no v erviewoft hee volu t
io npr oce ss
.
Figure9.4 The
soft
wareevol
uti
on Thepr ocessi nc lude st hef und ame ntala ctivi
tie sofc ha ng ea n a
ly sis,r el
e asepl an ning,
process systemi mp leme ntati
o n,a n dr eleasingas yst
e mt oc ustome rs.Thec osta ndi mpa ctof
t
h esec hang esa r
ea sse ssedt os eeh owmu cho ft hesy stemi saffectedb yt hec ha ngea nd
howmuc hi tmi ght cost toi mp leme nt
th ec han ge .
Ift hep ro posedc h an gesa r eac c
e pted,
an ewr e
l e
a seo fthes y stemi spl anned .Dur i
n gr el
e asep lann ing,a llp rop ose dc hange s
(fa
u l
tr epair,ada pt at
ion ,a ndne wf un c
tio nalit
y )a r
ec ons i
d er e
d .Ade cis i
o nist henma de
onwhi chc ha ng est oi mpl eme n tinth ene xtv e r
siono ft hes ys t
e m.Thec ha nge sa re
i
mp l
e me nteda ndv ali
da ted ,a ndane wv ersi
o no ft hes y stemi sr elea sed.Th epr oc ess
t
h eni t
era t
eswi thane ws e to fch angesp ro pose dfort hene xtr el
ea se.
Youc ant hi nkofc ha ngei mpl eme ntationa sa ni ter a
tionoft hede v elopme nt
proce ss,wh eret her ev isionst ot h es ystema rede signe d,i mpl eme nt ed,a ndt ested.
Howe ver,ac riticald iffe renc ei sthatt hef i
rsts tageofc ha ngei mp leme nta t
ionma y
involvep r
ogr a mu nde rs tandi ng,e spec iallyift heor igina ls ystem de ve lop ersa ren ot
respons iblef o rc hangei mpl e me ntat
ion.Dur ingt h ispr og ram unde rstandi ngpha s e
,
youh avet oun de rstandho wt hepr ogra mi ss tructu red,ho wi tde li
ve rsfunc t
iona lity
,
andho wt hep ropo se dc ha ngemi ghta ffectth epr ogr am. Yo une edt hi sund erstandi ng
toma kes uret ha tthei mpl e me ntedc ha ng ed oe snotc au sen ewpr o blemswhe ni tis
int
ro duc edi ntot hee xistings ystem.
Ide al
ly,thec han gei mpl e me ntati
ons tageoft hi spr oc esss hou ldmo di f
yt hes ys-
tems pec i
fication,de sign ,a ndi mpl eme ntati
ont or eflec tthec ha nge st ot hes ys tem
(Figur e9.5) .Ne wr equ ire me ntst hatr eflectt hes ys t
e mc ha nge sa repr opo sed ,a na-
lyzed,a ndv a l
id ated.Sy s temc ompo ne ntsa rer ede signe da ndi mpl e me nt eda ndt he
systemi sre tested.I fa p prop riate,pro totypingoft hepr opos edc ha ng esma yb ec a r
-
ri
edou ta spa rtoft hec ha ngea nalysispr oc ess.
Du ringt hee volut i
onpr oc ess,there qu ir
eme ntsa rea na lyzedi nd e taila ndi mp lica-
ti
onsoft hec ha nge se me rget ha twe renota ppar enti nt hee a rlierc ha ng ea na lys i
s
proce ss.Thi sme an st ha tt hepr opose dc hange sma ybemod ifieda ndf urtherc us-
tome rdi scus sionsma yber equ iredbe for ethe ya rei mpl eme nted.
Cha nger e que stss ome time sr ela
tet os ys temp robl emst ha th a vet obet ackl ed
urgen tl
y.The seur ge ntc h ang esc ana risef ort hreer easo ns :
1. I
fase
rioussys
temf
aul
toc
cur
stha
tha
stober
epa
ire
dtoa
llo
wnor
malope
rat
ion
t
oco
ntinue.
9.
1■ E
vol
uti
onpr
oces
ses 239
Pr
oposed Requi
rements Requi
rements Sof
twar
e
Fi
gure9.
5 Change Changes Analy
sis Updat
ing Devel
opment
i
mplementat
ion
Fi
gure9.6 The Change Analy
ze Modi
fy Del
i
verModif
ied
emergenc
yrepai
r Reques
ts Sourc
eCode Sour
ceCode Sy
stem
pr
ocess
2
.I fchange
stothesyst
emsop
era
ti
nge
nvi
ronme
ntha
veu
nex
pec
tede
ffe
ctst
hat
dis
ruptnor
malope
r a
tio
n.
3
.Ifther
ea r
eunant
ici
pat
edcha
ngestothebu
sinessrunni
ngt
hes
yste
m,s uc
has
t
heeme r
genc
eofne wcompet
it
orsorthei
ntroduc
tionofn
ewle
gisl
ati
ontha
t
a
ffec
tst
hesyst
em.
Int he sec ase s,t hene edt oma ket hec ha n gequi cklyme anst ha tyouma ynotbe
ablet of ollowt hef orma lc ha ngea na lysispr oce ss
. Ra the rtha nmo difyt her equi re-
me ntsa n dd e sign,yo uma kea ne me rge ncyf i
xt ot hep rogr amt os olv et hei mme di-
atepr ob lem( Figur e9. 6) .Ho we ver ,th eda nge ri stha tther e quire me nts, thes of twa re
des i
gn,a ndt hec o debe comei ncons ist
e nt.Al tho ughyouma yi nt endt odoc ume nt
t
hec ha ngei nt her equir eme nt sa ndd esign,a dditi
o na leme rge nc yf ix est ot hes oft-
wa rema yt he nben ee de d.Th e set ak epr iorityo verd oc ume nt ation.Eve n tually,the
origina lc ha ngei sf or got tena ndt hes ys t
e m doc ume nt ati
ona ndc odea r
ene ve r
realigne d.
Eme rge ncys ys t
e mr epa irsus ua llyha vet obec ompl eteda squi c klya spo ssible.
Youc hos eaqu icka ndwo rka bles ol utionr ath ert hant hebe sts ol u t
iona sfa ra ssys -
t
e ms tr
uc turei sc once rne d.Th isa c ce l
e ratest hepr o cessofs oftwa rea ge ings ot ha t
f
ut urec ha nge sbe c omepr o gres si
ve lymor ed ifficultandma i
nt ena nc ec ostsi ncre ase.
Ide all
y ,wh e ne me rg enc yc oder e pa i
rsa rema det hec h anger eque sts ho uldr ema in
outs t
an dinga ft
ert hec od ef aul t
sha vebe enf ixe d.Itc ant he nber e impl e me ntedmo re
care f
ullya ft
erf u rthera n alys i
s .Ofc o urse ,thec odeoft her epa irma yber euse d.An
alt
e rnative ,be tters olut iont ot hep robl em ma yb edi sc over edwhe nmor et imei s
ava i
lablef ora na lys i
s. Inpr a ctice,ho we ver,it isa l
mos tine vit
a blet hat the sei mpr ove -
me nt swi l
lha veal ow pr ior ity.The ya reof te nf orgot tena nd,i ff u rthe rs ys t
e m
cha ngesa r
ema de ,itthe nbe come su nre alis
tict or ed othee me rge ncyr ep airs.
Agi leme thod sa ndpr oc ess es,di sc ussedi nCha pte r3,ma ybeus edf orp rogra m
evolutiona swe lla spr o gram de ve lopme nt.I nf act,b ecau set he seme thod sa reba se d
oni nc r
e me nta ld ev el
opme n t
,ma kingt het r
a nsitionf roma gi
lede v elop me n ttopos t-
deliverye vo l
u ti
ons houl db es eaml ess. Te chniq ue ssuc ha sa utoma tedr e gres sionte st
in g
areu sefu lwhe ns y st
emc h ang esa rema de.Ch a ngesma yb ee x pre sse da su sers tories
andc ustome ri nv o l
v eme ntc anpr ioritizec ha ng estha ta rer eq uire di na nop er
a t
iona l
system. I
ns h
or t,ev olutions impl yin vo lvesc ont i
n uingt hea g il
ed e ve lopme n tp rocess.
240 Cha
pter9 ■ Sof
twar
eev
olut
ion
Howe v
er,probl
emsma yari
sei
nsi
tuat
ion
sinwhichthe
reisahandov
erf
roma
devel
opmentte
amt oasepa
rat
etea
mresp
onsibl
efore
vol
uti
on.The
rear
etwopot
en-
ti
all
yprobl
ematicsi
tua
ti
ons:
1. Wherethedevel
opmentte
am hasu s
edana gil
eapproachbuttheevoluti
onteam
i
sunfamili
arwit
hagil
eme thodsandprefe
rsap la
n-basedapproac
h.Thee volu-
t
iontea
m ma yexpec
td et
aileddocumentat
iontos upp
o r
tevolut
iona ndthisis
r
arel
yp r
oducedinagi
leprocess
es.Ther
ema ybenode fi
nit
ivesta
teme ntofth
e
s
yste
mr equir
ement
sthatcanbemodi f
iedasc ha
ngesarema detothesystem.
2. Wh er
eapl an-bas
eda pproachhasbe e
nus edfordeve
lopmentbuttheevol
uti
on
tea
m prefe
rstous eagil
eme t
hods.Inthiscase
,theevol
uti
onteam mayhaveto
sta
rtf
rom sc r
atc
hde velopingautomatedtest
sa n
dthec od
einthes yst
em may
nothavebeenr e
fact
oreda ndsimplif
ieda si
sexpect
edinagil
ed e
ve l
opment.
In
thi
scase,s
omer eengineer
ingma yb erequir
edtoimprovet
hecodebe f
orei
tcan
beusedinana gil
ede vel
opme ntproce
ss.
Pool
eandHuisman(2001)report
ont hei
rexper
ienc
esinus
ingExt
remePr
ogr
amming
formai
ntai
ningal ar
gesystemt ha twa sori
ginal
lydeve
lopedusi
ngapla
n-ba
sed
appr
oach.
Afterree
ngineer
ingthes ys t
emtoimp r
oveit
sst
ruct
ure
,XPwasusedve
ry
succ
ess
ful
lyinthema i
nte
na nceproce ss
.
9.
2 Pr
ogr
am evol
uti
ondynami
cs
Programe v oluti
ondy nami csi sthes tudyo fs yste
mc ha nge .Int he1970 sa nd198 0s,
Lehma na ndBe lady( 198 5)c a r
riedo uts everale mpi ric
a lstudie sofs ys temc ha nge
withavi ewt ound erstandi ngmor ea boutc haracteris
ticsofs oftwa ree volution .The
wo rkcontinue dint he1 990sa sLe hma na ndot hersi nve st
igatedt hes ig nifi
ca nceo f
feedbackine v ol
utionp roc esses(Le hma n, 1996 ;Lehma ne ta l
.,19 98 ;Le hma ne ta l
.,
2001).Fromt hesestud ies,theypr opos ed‘ Le hma n’slaws ’c onc ernings yste mc ha nge
(Figure9.7).
Lehma na n dBe ladyc laimt hesel awsa r
el ikel
yt ob et ruef ora lltype sofl arge
organizat
iona lsoftwar esys tems( wha tt heyc al
lE- types y st
e ms ).The sea res yste ms
inwhi cht her equireme ntsa r
ec ha ngingt or eflectc hangi ngb usine s
sne eds .Ne w
rel
e a
sesoft hes ystema ree ssenti
a lforthes ystemt opr ovidebus i
ne ssv alue.
Thef i
rstlaws t
atest hats ystem ma i
nt enanc eisa ni nevitablep r
oc ess.Ast hes ys -
tem’se n
viron me ntcha nge s,newr equireme ntseme rgea ndt hes ystemmu stbemod-
if
ied.Whe nthemodi f i
e ds ystemi sr ei
nt roduc edt oth ee n
vi r
onme nt,thi spromot e
s
mor eenvironme n t
alc ha nges ,
s othee vo lutionp roce s
ss ta r
tsaga in.
Theseco ndl a
ws tatesth at,asas ystemi sc hang ed,it
ss t
r uctureisd egrade d.Th eon l
y
wa ytoa voidt hi
sha pp eningi stoi nvesti np reventat
ivema i
n te
na nce.Yous pen dt i
me
i
mpr ov i
ngt hes oft
wa res truc t
urewi tho uta d
di ngtoi tsfun ctiona li
ty.Obv iously,t hi
s
me ansadditio
na lcosts
, ove randa bo vetho seo fimp l
eme ntingr equireds ystemc h ang es.
9.
2 ■ Pr
ogr
amev
olut
iondy
nami
cs 241
Law Descr
ipt
ion
Cont
inui
ngc
hange Aprogram thati
susedi
nar eal
-worl
denvir
onmentmustnecess
ari
ly
change,orelsebec
omeprogress
ivel
yles
susef
uli
nthatenvi
ronment.
I
ncr
eas
ingc
ompl
exi
ty Asanevolvi
ngprogram c
hanges,i
tss
truct
uretendstobecomemore
complex
.Extr
aresourc
esmus tbedevotedtopreser
vingands
impl
i
fyi
ng
thes
truct
ure.
L
argepr
ogr
am ev
olut
ion Program ev
olut
ionisaself
-r
egulat
ingpr
ocess.Syst
em at
tri
but
essuc
h
assize,t
imebetweenreleas
es,andthenumberofr epor
tederr
orsi
s
approximat
elyi
nvar
iantf
oreachs yst
em r
elease.
Or
gani
zat
ionals
tabi
li
ty Overaprogram’sl
if
eti
me,i
tsr
ateofdevel
opmentisappr
oximat
elycons
tant
andindependentoft
heres
ourcesdev
otedtos
ystem dev
elopment.
Cons
erv
ati
onoff
ami
l
iar
it
y Overtheli
fet
imeofasys
tem,t
hei
ncr
ement
alc
hangei
neac
hrel
eas
eis
appr
ox i
matel
yconst
ant
.
Cont
inui
nggr
owt
h Thefuncti
onali
tyoff
eredbysy
stemshast
ocont
inual
l
yinc
reas
eto
maintai
nus ersat
isf
act
ion.
Dec
li
ningqual
it
y T
hequali
tyofs
yst
emswilldec
li
neunlesst
heyar
emodi
fi
edt
oref
lec
t
c
hangesi
nthei
roper
ati
onalenvi
ronment.
F
eedbac
ksy
stem Evoluti
onprocessesincor
porat
emul ti
agent
,mult
il
oopfeedbacksyst
ems
andy ouhavetot reatt
hem asfeedbacksys
temstoachi
evesigni
fi
cant
productimprovement .
cha ngesa ndt hec os tsin v olve d.Suc hde cisio nst a ket imet oma kea nd, so me t
ime s,it
take slon ge rtod e cideo nt hec ha nge st obema det h anc ha ngei mpl eme ntation.Th e
spe edoft heor ganiz at
ion ’sd ecisi
on- ma ki ngp roc esse sthe ref
orego vernst her a
teo f
cha ngeo fthes ystem.
Le hma n’sf ou rthl aws ugge stst hatmos tl a r
gepr ogrammi ngpr ojectswor ki na
‘saturate d’s tat
e.Tha ti s,ac hanget or e sou rce so rs taffingh asi mpe rcept iblee f
fec ts
ont hel on g-terme volut ionoft hes ys tem. Thi si sc ons ist
e nt wit
ht het hirdl a w,whi c h
sug gestst ha tpr ogra me vol utioni sl arge lyi n de pend entofma na ge me ntde ci
sions .
Thi sl awc on fir
mst hatl a rges oftwa rede ve lopme ntt ea msa reof tenunpr oductive
be causec ommuni cationov er headsdomi na t
et hewor ko fthet eam.
Le hma n’ sfifthl awi sc onc erne dwi tht hec ha ngei nc r
eme nt si ne a chs yste m
relea se.Add i
ngne wf unc t
i ona l
ityt oas yste mi ne vitablyi ntroduc esne ws yste m
faults.Themor ef unc tiona litya dde di ne a chr elease ,themor ef aul t
st he rewi llbe .
The refor e,al a r
gei ncre me nti nf u nc t
io na l
ityi no nes ystemr eleaseme a nst hatthi s
wi llha vet ob ef ollowe dbyaf ur the rr eleas ei nwh icht hen ews ystemf ault
sa re
repa ir
ed.Re lat
ive l
yl ittlene wf un c t
ion a l
itys ho uldb einc ludedi nt hisr elea se
.Thi s
laws ugge s t
st haty ous houl dno tb udge tforl argef unctiona l
ityi ncreme ntsi ne ac h
releasewi thou ttakin gi nt oa ccountt hen ee df orf aul trepa ir
.
Thef irstf i
v ela wswe rei nLe hma n’ si nitialpr opos al
s ;ther ema iningl awswe re
adde da f t
e rfu r
the rwor k .Th es ixtha nds eve nthl awsa r
es i
mi l
a rande sse ntial
lys a y
thatus e rsofs oftwa rewi llbe comei ncr easingl yun h appywi thi tunl essi ti sma in-
taine da ndne wf unc tion a l
ityi sa dde dt oi t.Thef ina llawr efl
e ctsthemo strece nt
wo rko nf ee dbac kpr oc es ses ,althoug hi ti sno tye tc learh owt hisc anbea ppl i
edi n
pra cti
ca lsof twarede ve lop me nt.
Le hma n’ sobs erva t
i onss ee m ge ne rallys ens ibl e.The ys houl dbet a keni nt o
ac countwhe np lanni ngt hema intena nc ep roc ess .Itma yb et hatb usines sc onsider a-
tionsr eq uiret hemt obei gn ore da ta nyonet ime .F ore x ampl e,forma rke ti
ngr e a-
son s,itma ybene ce s
s aryt oma kes e vera lma jors ys temc hange sinas ingl er el
ea se.
Thel i
ke lyc on sequ enc esoft hisa ret ha ton eormo r
er el
e asesde vote dtoe rrorrepa ir
arel ikelyt ober equire d .Youof t
e ns e et hisi npe rso nalc omput ers oft
wa rewh ena
ma jorne wr e l
eas eofa na ppl icationi sof t
e nq ui cklyf ol l
owe dbyab ugr ep airupd ate.
9.
3 Sof
twar
emai
ntenance
Soft
warema inte
nancei sthege neralpr
ocessofc han g
ingas ystema f
teritha
sb ee
n
del
iver
ed.Thet e
rmi susua l
lyappliedtocust
oms oft
wa rei
nwhi chsep
a r
atede
velop-
mentgroupsareinvol
ve db e
foreanda ft
erdel
ivery.Thec hangesma detotheso
ftware
maybes implechangest oc or
rectc odi
nge r
rors,mo reextensiv
ec hangestocorr
ect
desi
gnerrors
,ors i
gnifica
nte nhance ment
stoc orre
c tspec
ificat
ionerror
sora c
com-
modatenewr equir
eme nts.Change sareimpleme nt
e dbymo dif
yingexist
ingsyst
em
componentsand,whe r
ene c
essary,byaddingne wc ompone ntstothesyste
m.
Therearethreedif
ferenttypesofs oft
warema intenance:
9.
3 ■ Sof
twar
emai
ntenanc
e 243
1
. Faultr
epairsCodinger
ror
sar
eusual
lyrel
ativ
elycheaptocor
rec
t;des
ignerr
ors
aremoreexpe ns
iveast
heymayi
nvolverewri
tingse
vera
lprogr
amc omponent
s.
Requir
eme ntserr
orsar
ethemos
texpensivetorepai
rbeca
useo ft
hee x
tens
ive
syst
emr e
de si
gnwh i
chmaybenece
ssary
.
2
. Envir
onment
aladapt at
ionThistypeofma int
enanceisrequir
edwhe nsome
asp
ectoft
hesyst
em’ senvi
ron
me ntsuc
ha st
hehardware,
theplat
for
m oper
ati
ng
sys
tem,orothe
rs upportsof
twarechanges.Theapplic
a t
ionsyst
em mustbe
modifi
edt
oadaptittocopewiththes
ee n
vir
onme n
talchanges
.
3
. Functi
onali
tyadd it
ionThi
stypeofma i
ntenanceisn e
cess
arywhenthes ys
tem
requi
rement
sc hangeinres
ponset
oorganiz
a t
ionalorbusi
nessc
hange
. Thescal
e
ofthechangesr e
quiredt
othesof
twareisoft
e nmu chgre
atert
hanfortheothe
r
typesofmaint
e nance.
Inp ra cti
c e,the rei snotac lear-cutdi stin ctionb e twe e nthe set ype sofma i
nt e-
na n
c e.Whe nyoua da ptthes ystemt oan ewe n viron me nt,youma ya ddf unc tio nality
tota kea dv antageo fn ewe nvironme nt a
lf ea tures .So f
twa refaultsa reof tene xpo se d
be c
a us eus ersu set hes ystemi nu na nti
cipa tedwa ys .Cha ng i
ngt hes ys temt oa ccom-
mod atet he i
rwa yofwo rki ngi sthebe stwa yt of ixt he sef au l
ts.
Th e set ype sofma intena nc ea rege ne ral
lyr ecogni ze db utdif fere ntpe oples ome -
time sgi vet he md iff
e rentn a me s.‘ Corr ectivema int ena nc e’isuni ve rsallyus edt o
refert oma intenanc ef orf aul tre pair.Ho we v er,‘a da ptivema inte na nc e’s ome ti
me s
me an sa da ptingtoan ewe n viron me nt ands o me ti
me sme ansa dapt i
n gt hes oftwa ret o
ne wr e q uir
e me nts.‘ Pe r
fe ctiv ema intena nce ’s ome time sme anspe rf ec t
in gt hes oft-
wa rebyi mpl e men tingne wr equ ireme nts;i not he rc a sesi tme a nsma intaini ngt h e
functiona li
tyoft hes ys t
e mb utimpr ovingi tss t
ruc turea ndi tspe rfor ma nc e.Be caus e
ofth isna mingun ce rtainty, Ih av ea voidedt heus eo fa lloft heset ermsi nt hisc h apte r
.
Th e reha vebe ens eve ra ls t
u diesofs o ft
wa rema int enanc ewhi chha v eloo ke da t
ther e lat i
ons hipsbe twe e nma i
nt enanc ea ndde ve lop me ntandbe twe endi ffere nt
ma inte na ncea cti
vi ties(Kr ogs tiee tal.,200 5;Li en tza ndSwa nson,1 980;Nos e ka nd
Pa l
v ia,19 90;Sous a,19 98) .Be caus eofdi ff eren cesi nt erminol ogy ,t hede ta ilso f
theses tudie sc annotbec omp a red.I ns piteo fc ha nge si nt echn ol ogya nddi ff erent
applic ationdoma ins ,itsee mst ha tthereha sb e enr ema rka blylittlec ha ngei nt h edi s-
tri
but iono fe volutione f
for ts inc ethe1980 s.
Th es urve ysbroa dlya gr e et hats oftwa rema i
nte na nc eta kesupah i gh erp ropo rt
ion
ofI Tb udge tstha nn ew de ve lopme nt( roug hl yt wo- thi rdsma inte na nc e,one -t
hi rd
de velo pme nt).The ya l
soa gre et hatmo reoft hema inte nancebudge ti ss pe nton
impl eme n
tingn ewr equire me ntst hanonf i
xi ngb ug s .Fi gure9. 8s ho wsa na ppr o xi-
ma tedi str
ibut i
ono fma i
nt e na ncec os t
s.Thes pe cificp e rcentageswi ll obvi ous lyv a ry
from o neor ganizationt oa noth erb ut,uni ve rsa l
ly,r epa irings yste mf aultsisno tthe
mos t ex pe nsivema intena nc ea c t
iv i
ty.Ev olv ingt hes ys temt ocop ewi thne we n viron-
me ntsa ndne wo rc hange dr equi reme ntsc ons ume smos tma i
nten an cee ffort.
Th er elativec ostsofma in t
e nanc ea ndne w de ve lo pme ntvar yf rom o nea p plica-
tiondoma int oa no ther.Gui ma raes( 198 3)f ou ndt ha t thema intena n cec os t
sf o rb usi-
ne s
sa ppl ications y stemsa rebr oadl yc omp a rablewi ths y st
emd ev e lopme ntc osts.
244 Cha
pter9 ■ Sof
twar
eev
olut
ion
F
aultRepai
r
(
17%)
Functi
onalit
y
Env
ironmental
Additionor
Adaptat
ion
Modifi
c at
ion
(18%)
(
65%)
Fi
gure9. 8
Maintenanceef
for
t
di
stri
buti
on
Fo re mbe dde dr e a
l-times ystems ,ma intenanc ec ostswe reupt of ourtime smo ret han
dev elopme n tc os t
s.Thehi ghr eli
abilitya ndp e r
forma nc erequireme ntsoft heses ys-
temsme a nt ha tmod ulesha vet obet ightlyl inke da ndh enc ed if
ficultt oc ha nge.
Al t
ho ught he s ee st
ima tesa r
emor etha n25ye arsol d,itisun li
ke l
yt hatt hec ostdi s
-
tri
b utionsf ordi fferenttype sofs yst
e mha ves ignificantlycha nged.
Itisu suallyc o s
te ffect
ivetoi nves
t e f
fortind esign i
nga ndimp l
eme ntingas ystemt o
redu cethec os tsoff uturech anges.Add i
n gnewf unction a
lit
yaf t
erde l
iveryi se xpens i
ve
bec ausey ouh avetos pendtimel ear
nin gt hesystema nda nal
y z
ingt heimp a cto ft
hepr o-
pos edc hang es .Th erefor
e,wo r
kd onedu r
ingd ev el
o pme nttoma k ethes oftwa reea si
er
t
ou nd er
stan da ndc ha ngeislikelytore du ceevolu t
ionc o s
ts.Goo dsoftwa ree ng i
neering
t
e chn iques,s uc hasp re
cises pecif
ication,t h
eus eo fo bject
-or
ie nt
edd e v
e lop ment,a nd
con fi
gu ra
tio nma nag eme nt
, contr
ibutet oma i
n t
ena ncec ostreducti
on .
Fi gure9. 9s howsho w ove r
a l
ll ifetimec ostsma yde c
re asea smo ree ff
or tis
expe nd eddur ings ystemde velopme ntt opr oduc eama i
ntai
na blesystem.Be causeof
thep ot e
ntia lre ductioninc os t
sofun derstanding, ana l
ys i
s,an dtesti
n g,the reisas i
g-
nifica ntmul tipliere ffectwhe nthes ystemi sde ve lopedf orma i
nt aina bili
ty.Fo r
Sys tem 1,e xt rade ve l
opme ntc ostsof$25, 000a rein vest
edi nma kingt hes ystem
mor ema inta inable.Thi sr esul
tsi nas avingsof$ 10 0,000inma intenanc ec os t
so ver
Sy
stem 1
Sy
stem 2
$
Fi
gure9.9 0 50 100 150 200 250 300 350 400 450 500
Devel
opmentand
maint
enancec
ost
s Dev
elopmentCos
ts Mai
ntenanc
eCos
ts
9.
3 ■ Sof
twar
emai
ntenanc
e 245
Legac
ysys
tems
Legacys yst
emsar eol
ds ys
temsthatares t
il
lusefulandar esometi
mesc ri
ti
caltobusines soperat
ion.T
heymay
beimpl ement edusi
ngoutdatedlanguagesandt echnologyormayus eothersy s
temst hatareexpensiveto
maintain.Oftenthei
rst
ructur
ehasbeendegr adedbyc hangeanddoc ument at
ionismi ssingoroutofdate.
Nevertheless,i
tmaynotbec osteff
ecti
vetoreplacethes esyst
ems.Theymayonl ybeus edatc er
tai
ntimes
ofthey earoritmaybet ooris
kytoreplacethem bec ausethespeci
fi
cat
ionhasbeenl ost.
ht
tp:
//www.
Sof
twar
eEngi
neer
ing-
9.c
om/Web/
Legac
ySy
s/
thel i
fetimeoft hes yst
em.Thi sa s
s ume sthatap er
centagei ncrea seinde velopme nt
costsre sult
sinac omp arablepercentagede creaseinove ra
lls ystemc ost
s.
The see st
ima t
esa reh ypothet
icalbutt her
ei snodo ubtthatd ev elopingsoftwareto
ma kei tmor ema intainableiscosteff
ective,whe nt h
ewho lelifec ostsofthes of
twa re
aret akeni ntoa ccoun t
.Th isisther at
i onaleforr ef
actoringi na giledeve l
opme nt.
Wi thou tr e
factori
n g,thec odebe come smor ea ndmor edi fficulta nde xpensi
vet o
chan ge.Ho we ver
,i np l
an-basedde velopme nt,ther ea
lityist ha ta ddit
ionalinvest-
me ntinc odeimpr oveme ntisrarel
yma ded uringdev e
lopme nt .Thi sismos tl
ydu et o
thewa ysmos torgan i
zationsruntheirb udgets.Invest
ingi nma intainabil
ityleadst o
short-t
e rmc ostincr e
a s
es,whi chareme asurable
.Un fortunately,thel ong-ter
mg ai
ns
can’tbeme as
ur e
da tt
hes amet i
mes oc ompa niesa r
ereluctanttos pendmo neyfora n
unkno wnf uturereturn.
Itisu suall
ymor ee x
pe nsi
vetoaddf u ncti
on al
ityaft
eras ystemi sino perat
iontha n
i
tist oi mp l
eme ntthes amef unct
ionali
tydu ri
n gde ve
lopme nt.Ther easonsforthi
sa re:
1. Te
am s t
abi
lit
yAf t
eras yst
e mhasb e
e ndeli
ver
ed,i
tisnormalforthedevel
op-
mentteamtob ebrokenu pa ndforpeopletoworkonnewp rojec
ts.Thene w
t
eam ortheindi
vidualsrespons
ibl
ef orsyst
em mai
nte
nancedonotund ers
tand
t
hesys t
em orth
eb ackgroundtosystem desi
gndeci
si
ons.Theyn eedtospend
t
imeu nder
sta
ndingthee xi
sti
ngsyste
mbe f
oreimpl
ement
ingchangestoit
.
2. Poorde ve
lopmentpract
iceTh econtr
ac tt
oma i
ntai
nas y
ste
mi susuall
ys e
parat
e
from t
hes yst
emde vel
opme ntcontr
act.Thema i
ntenancecontr
actma ybeg i
ven
toadi ff
erentcompanyra t
herthantheor i
ginalsyst
em developer.Thisfac
tor
,
alongwiththelackofte
ams t
abil
it
y,me ansthatther
ei snoinc
entiveforadevel
-
opme ntte
amt owr i
temaintai
nablesoftware.Ifadevelopmentteamc a
nc utcor
-
ne r
stosaveeff
or t
duri
ngde vel
opme ntitiswor t
hwh i
lefort
hemt odos o,eve
nif
thismeansthatthesof
twareismor ediffi
culttochangeinthefuture.
3
.S t
affs
kill
sMa in
tenanc estaf
fareoftenrel
at
ive
lyin
experi
enc
e dandunfami l
ia
rwith
t
hea p
p l
ic
ati
ondo ma in.Ma i
ntenancehasapo o
rimageamongs oft
waree ngi
neers
.
I
tisseenasaless
-skill
e dproce
ssth a
ns y
stemdeve
lopmenta
n disoft
enallocat
edto
t
hemos tj
uniorst
aff.Fu rt
her
mo re,ol
ds y
stemsmaybewrit
teninobsol
e t
eprogram-
minglangua
g es
.Th ema i
nte
nances t
affmaynothavemuchex p
eri
e n
ceo fdevel
op-
mentinthes
elanguag esandmu s
tlearnth
esela
nguagest
oma int
ainthesyste
m.
246 Cha
pter9 ■ Sof
twar
eev
olut
ion
Doc
ument
ati
on
Syst
em doc ument at
ionc anhelpthemai nt
enanc eprocessbypr ov
idi
ngmai ntainerswithinfor
mationaboutt he
st
ructureandor gani
z at
ionofthes y
stem andthef eatur
esthatitoff
erstosyst
em us ers.Alt
houghpr oponentsof
agil
eappr oachessuchasXPs uggestthatt
hec odes houl
dbet hepr i
nci
paldoc ument ati
on,higher
-leveldes
ign
model sandi nf
ormationaboutdependenc iesandc onstr
aint
scanmak eiteasi
ert ounder s
tandandmak e
changestot hecode.
Ihav
ewr
it
tenas
epar
atec
hapt
erondoc
ument
ati
ont
haty
ouc
andownl
oad.
ht
tp:
//www.
Sof
twar
eEngi
neer
ing-
9.c
om/
Web/
Ext
raChaps
/Doc
ument
ati
on.
pdf
4. Program ageands t
ructureAsc hange sarema d
et oprograms,the i
rs t
ruct
ure
t
endst odegra
de.Cons e
que n
tly,
a sprogramsage,th
eybe comeha rdertound er
-
st
anda ndchange.Somes yst
emsha vebe endevel
opedwi t
houtmode rnsoft
ware
engineer
ingtechni
que s
.The yma yne v e
rhavebeenwe llstr
uctureda ndwe re
per
ha psopti
miz e
df oreffi
cie
ncyr at
h erthanunderst
andabil
it
y.Sys t
em docu-
mentati
onma ybelostorinconsi
stent
. Oldsyst
emsma ynoth av
ebe e nsubjec
tto
st
ri
nge ntconf
igurat
ionma nageme ntsot i
mei soft
enwa ste
df i
nd ingt heri
ght
ver
sionsofsystemcompo nentstocha nge.
Thef ir
stt hr
e eo fthesepr oble mss temf r
om t hefa c
tt hatma nyor ganizat
ionss til
l
cons i
derd evelopme nta ndma in tenancet obes eparat
ea c ti
vit
ies
.Ma i
ntenanceiss ee n
asas econd- cl
assa ct
ivit
ya ndthe r
ei snoi ncenti
v etospe ndmone ydu r
ingde vel
op me nt
t
or edu c
et hec ostsofsys t
emc ha nge.Theo nlylon g-
terms olut
iontothisproblemi st o
acceptthats yst
e msr arelyhav eade f
ine dlif
etimeb utc on t
inueinu se,ins omef orm,
fora ninde f
init
ep e
riod.AsIs ugg est
e di nthei ntr
oduc tion,yoush ouldthinko fs ys-
t
e msa sevol vi
ngt hrough outthe irli
fetimet hroughac ontinualdevelopme ntproce ss
.
Thef ourthissu e
, t
hepr oble mo fde gradeds ystems tructure
,isthee asi
estpro blem
toa ddress.Softwa rer eengi
ne e ri
ngt ec hniques( descri
be dl at
erint hi
sc hapter)ma y
bea ppliedt oi mpr ovet hes ys tems tructurea ndu nde rs
tandabil
ity.Ar chitectural
tr
an sf
orma tionsc ana daptthes ystemt one wha rdwa re
.Re fac
tori
ngc ani mpr o
vet he
qualityoft hesys te
mc odea ndma kei teasiertoc hange .
9.
3.1 Ma
int
ena
ncepr
edi
cti
on
Ma nagershatesurpris
es,es pe ciallyi ftheseresultinune xpecte
dlyh i
ghc ost
s.Yo u
shouldtheref
oret r
yt opr edic twh a
ts ystemc hange smightbepr oposeda ndwha t
partsofthesystema relikelyt ob ethemos tdiff
iculttoma intai
n.Yous houldalso
tr
yt oe s
timatetheo veral
lma inte nancec ostsforas ystemi nag iventimepe r
iod.
Figure9.10showst hesepre dictio nsa nda ss
o ci
atedqu est
ions.
Predi
cti
ngthen umbe rofc ha nger e quest
sforas y st
emr equir
esanu nderst
andi
ng
ofth ere
lati
onshipbe t
wee nt hes ys t
ema nditsexternalenvironment.Somes yst
ems
haveav erycomplexr el
ations hipwi ththeirexter
nal envi
ronme ntandchangestothat
9.
3 ■ Sof
twar
emai
ntenanc
e 247
Whatpar
tsoft
hes y
stem
wi
l
lbethemostexpensi
ve
Whatpart
soft
hes y
stem ar
e tomaint
ain?
mostl
ikel
ytobeaff
ec t
edby
c
hangerequests?
Predi
cti
ng
Mai
ntai
nabil
it
y
Whatwillbethel
ifet
ime
mai
ntenancecost
softhi
s
Pr
edi
cti
ngSystem Pr
edict
ing s
yst
em?
Changes Mai
ntenance
Costs
Whatwillbethecost
sof
How manyc hange maintai
ningthi
ssyst
em
r
equestscanbe overthenextyear
?
expect
ed?
en
vir
onmenti
nevi
tab
lyre
sulti
ncha
ngestot
hesyst
em.Toev
alua
tet
her
ela
tion
shi
ps
Fi
gure9.10
Maint
enancepr
edi
ct
ion be
tweenasys
temandit
senvir
onment
,yous
houldass
ess
:
1. Thenumbe
randcompl
exi
tyo
fsyst
eminter
face
sThela
rgert
henumberofint
er-
fac
e sa
ndt
hemorecompl
exthe
seint
erf
aces,t
hemor
elikel
yiti
stha
tinte
rfac
e
change
swil
lber
equi
reda
snewrequi
rementsar
epr
opose
d.
2
. Thenumberofi
nhe
ren
tlyvo
latil
esys
temrequi
reme
ntsAsIdis
cuss
edinChapt
er4,
re
quir
ementst
hatr
efl
ectorgani
zat
ionalpol
ici
esan
dprocedur
esareli
kel
ytobe
morevol
at
ilet
hanr
equi
reme n
tstha
tarebase
donsta
bledomai
nc h
arac
ter
is
ti
cs.
3. Thebusine
ssproc
essesinwhi
chthesyst
emisus e
dAsb usi
nes
sproc
ess
es
evol
ve,t
heyge
nera
tesyst
emcha
ngerequ
est
s.Themorebu
sine
sspr
oce
sse
stha
t
useasys
tem,t
hemorethede
mandsfo
rsyst
emc ha
nge.
1. Numberofreques
tsforcorre
cti
vemainte
nanceAnincrea
seinthenumbe rof
bugandfa
ilu
rereport
sma yindi
cat
ethatmoreer
ror
sa r
ebeingint
roduce
dinto
t
heprogr
amt hanarebei
ngrepai
redduri
ngthemain
tenanc
epr oc
ess.Thi
sma y
i
ndic
ateadecli
neinma i
nta
inabi
li
ty
.
2
. Ave
ragetimere
quir
edforimpac
tan aly
sisThi
srefl
ect
sthenumberofprog
ram
co
mp onen
tst
hatar
eaff
ecte
dbythechangere
quest
.I
fthi
sti
meincr
ease
s,i
ti
mplie
s
moreandmorecomponent
sar
eaffe
ctedandmaint
ain
abi
li
tyisde
cre
asi
ng.
3. Aver
agetimetak
e ntoi
mplementac hangerequestThisisnott hesameasthe
ti
meforimpactanal
ysi
sal
thoughitmayc or
relat
ewi t
hit.Thisistheamountof
ti
methatyouneedtomodifythesys
tema nditsdocume nt
ati
o n,aft
eryouhave
ass
esse
dwhi c
hc o
mponentsareaff
e c
ted.Ani ncrea
sei nthet imeneede
dt o
impl
ementachangema yi
ndic
a t
eade cl
inei
nma i
ntai
nabili
ty
.
4. Numberofout
st
andingchangereques
tsAni
ncr
eas
eint
hisn
umbe
rov
ert
ime
mayimplyadec
lin
ei nmai
ntai
nabil
it
y.
Youusepredic
tedinforma ti
ona b
outchangerequestsandpredic
tio
nsa boutsys-
t
e mma i
ntai
nabil
it
yt opredictma i
nt e
nancecosts
.Mos tmanagerscombinethisinf
or-
mationwithint
uiti
ona nde xperi
e ncetoest
ima t
ec o
sts.TheCOCOMO2mod elof
costest
imat
ion(Boe hme tal.,2000),dis
cussedinCh a
p te
r24,suggest
sthata nest
i-
mateforsoft
wa r
ema i
ntena
nc eeffortcanbeba s
edo ntheeffo
rttounderst
ande xis
t-
i
ngc odeandtheefforttodev el
opt henewcode .
9.
3.2 Sof
twar
eree
ngi
neer
ing
AsId i
sc ussedi nt hepr eviouss ecti
on,t hepr oce ssofs ysteme volutioninvolves
understandingt hep r ogramt hatha st obec hange da ndt heni mpleme nti
ngt hese
changes.Ho we v er,ma nys yste ms,e spe c
ial
lyol derl egacys yst
ems ,a r
ediff
icultto
underst
anda ndc ha nge .Thep rogramsma yha v
ebe e nopti
mi zedforp erf
ormanc eor
spaceutilizat
iona tthee xpen seofund ers
tandability,or,ove rti
me,t heinit
ialpro-
grams t
ruc t
urema yh a v
ebe e nc orruptedbyas eriesofc hange s.
Toma keleg acys oftwa r
es ystemse asi
ertoma i
nt a
in,youc a
nr ee n
gineerthese
syste
mst oi mpr ovet h ei
rstruc t
ur eandu nder
standa bilit
y.Re e
ngineeringma yinvolve
redocume nti
ngt hes ys t
em,r efa ct
oringt hesystema rchit
ecture,tr
anslati
ngprog r
a ms
toamod ernpr ogra mmi ngl angua ge,a ndmodi fyinga ndup dati
ngthes t
ruct
urea nd
valuesoft hes ystem’ sdata.Thef unctionali
tyoft hes oft
wa reisnotc hangeda nd,
norma l
ly,yo ush ouldt r
ytoa voidma kingma jorc ha ngestothes yst
ema rc
hit
ecture.
Therea r
et woi mpo r
tantbe ne f
itsfromr eengine eringratherthanre pl
acement:
1. Reducedri
skTherei
sahi ghris
kinre
devel
opingbusi
nes
s-cr
iti
calsof
tware.
Error
smaybema deinthesyst
emspeci
fi
cat
ionorthe
remaybede vel
opme nt
probl
ems.Del
aysinint
roduci
ngthene
ws of
twaremayme a
nt hatbu
sines
si s
losta
ndext
racos
tsar
eincurr
ed.
9.
3 ■ Sof
twar
emai
ntenanc
e 249
Ori
ginal Progr
am Reengineer
ed
Or
igi
nalDat
a
Pr
ogram Doc
ument at
ion Program
Revers
e
Engineeri
ng
Sourc
eCode Progr
am Dat
a
Tr
ansl
ati
on Modular
izat
ion Reengi
neer
ing
Pr
ogram
Str
uctur
e
I
mprovement
Rest
ruc
tur
ed Reengineer
ed
Pr
ogr
am Data
2
. Reducedc ostTheco s
tofreengineeri
ngma yb esigni
ficantlylessthanthecost
Figure9.11 T he
reengineer
ingproces
s ofdevel
op ingnews oft
ware.Ulri
c h(1990)quote
sa ne xamp leofac omme rc
ial
syst
emf orwhichthereimplementati
onc ost
sweree s
tima t
eda t$50mi l
lion.
The
syst
emwa ssucces
sfull
yreengi
ne ere
df or$12mill
ion.Is uspectthat
,withmod-
ernsoft
wa retech
nology,t
her ela
tivecostofrei
mp leme nt
ationispr oba
blyless
thanth
isb utwil
lsti
llcons
iderablyexceedthecost
so fre e
ngineering.
Fi
gure9.
11isagene
ralmodeloft
her e
engi
neer
ingpr ocess
.Thei nputt
othe
p
roces
sisale
gacypr
ogr
ama ndth
eoutputi
sanimprove
da n
dr es
truc
turedve
rsi
on
o
fthesamepr
ogram.
Theact
ivi
ti
esint
hisre
engi
nee
ringprocessareasfol
lows
:
1
. Sour
cecodet
ran
slat
ionUsi
ngat
rans
lat
iont
ool
,theprogr
amisc
onv
ert
edf r
om
anoldp
rogra
mminglangua
get
oamor emoder
nve r
sionoft
hes
amelanguage
ort
oadiff
ere
ntl
anguage
.
2
. Revers
eengineeri
ngTheprogramisana
lyz
edandinformat
ione
xtr
acte
dfromit
.
Thishel
pstod ocu
me nti
tsorga
niz
ati
onandfunc
tio
na l
it
y.Agai
n,t
hispro
cessi
s
usual
lycomp l
ete
lyautomate
d.
3
. Pr
ogram st
ruct
ureimprov
ementThecontr
ols
truc
tureoftheprogr
amisana
-
l
yzedandmo di
fi
edtoma kei
teasi
ertorea
dandun de
rst
and.Thisc
anbepar
-
t
ial
lyaut
omatedbutsomemanuali
nte
rve
nti
onisusua
llyr
equir
ed.
4
. Programmo dulari
zat
ionRel
atedpart
soft
heprogr
a maregr
oupedto
getherand
,
whe r
ea ppropr
iate,r
edundancyisremoved.Insomec as
es,thi
sstagema y
in
v o
lvea r
chit
ectur
alre
fact
ori
ng(e.g.
,asyst
emtha tus
esse
vera
ldiff
erentdat
a
st
oresma ybere f
act
ore
dtou seasi
ngler
eposi
tor
y).Thi
sisamanualproc
e s
s.
5
. Dataree
ngi
neeri
ngTh edat
apr
ocess
edb ytheprogra
mi schangedtoref
lec
t
pro
gramchang
es.Thi
sma ymea
nredefini
ngdat
abaseschemasandconv
ert
ing
exi
sti
ngdat
abas
estothenewst
ruc
ture.Youshouldusual
lyals
oc l
eanupthe
250 Cha
pter9 ■ Sof
twar
eev
olut
ion
Aut
omatedProgr
am Pr
ogram andData
Res
truct
uri
ng Rest
ruct
uri
ng
Automat
edSourc
e Aut
omat
edRestruc
turi
ng Res
truct
uri
ngPlus
CodeConv
ers
ion wit
hManualChanges Ar
chi
tect
uralChanges
Fi
gur e9.12
Reengineeri
ng
approaches I
ncr
eas
edCos
t
d
ata.Thi
sin
vol
vesfi
ndi
ngandcorre
cti
ngmis
take
s,re
movi
ngdu
pli
cat
ere
cor
ds,
e
tc.Tool
sar
eavai
la
blet
osupportdat
aree
ngi
neer
ing.
9.
3.3 Pr
event
ati
vemai
ntenanc
ebyr
efac
tor
ing
Ref
a cto
ringist
hep rocessofma ki
ngimp r
ovementstoap r
o gramtoslo
wd ownd egr
a-
da
tionthroughchange( Opdy kea ndJohns
on,1990).Itmean smodif
yingap r
ogra
mt o
i
mpr ovei t
sstr
uc t
ure,tore duceitscomp l
exit
y,ortoma keiteasi
ertoun der
stan
d.
Ref
a cto
ringissometimesc onsider
e dt
obel i
mitedtoo bj
ect-or
ien
teddevel
opme n
tbut
t
hep rinc
iple
scanb ea ppli
edt oa n
yde vel
opmentapproach.Wh enyour ef
act
orap r
o-
gr
am,y oushoul
dn ota ddf uncti
onali
tybutshoul
dc oncentrat
eonp r
ogrami mprov
e-
ment.Youc anth
e r
eforethi
n kofr ef
act
orin
ga s‘p
reventa
ti
vema i
nte
nance’t
hatreduc
es
t
hep robl
emso ffut
urec hange.
9.
3 ■ Sof
twar
emai
ntenanc
e 251
1
. Dupli
catecodeThesameofverysi
milarcodemaybeinc
lude
da tdi
ff
ere
nt
pla
cesinapro
gram.Thisca
nberemove
da ndimpl
emen
tedasasi
nglemet
hod
orfun
cti
ontha
tisca
lle
da sr
equ
ire
d.
2
. Longme t
hodsI
fame
thodi
stool
ong,i
tsh
oul
dber
ede
sig
neda
sanumbe
rof
shor
termet
hods
.
3
. Switch(c
ase)stat
ementsTheseoft
eninvolvedupli
cat
ion,wher
etheswit
ch
dependsonthetypeofsomeva lu
e.Thes wit
chstat
ementsmaybesca
tte
red
aroundaprogra
m.I nobje
ct-
orie
ntedl
angu ag
es,youcanofte
nusepol
ymor-
phismtoachi
evethesa
met hi
ng.
4
. DataclumpingDa t
aclumpso c
c urwhenthesamegroupofdat
aite
ms(fi
el
dsi
n
cl
asse
s,p a
rame t
ersi
nme thods)reocc
urins e
veralp
lac
esinaprogra
m.Thes
e
ca
nof t
enb erepl
acedwithanob jec
tenca
p s
ulat
ingal
loftheda
ta.
5
. Specul
ati
vegene
rali
tyThi
soccur
swhendevel
opersi
ncl
udeg
enera
lit
yina
pro
gramincas
eitisr
equi
redi
nfut
ure
.Thi
scanof
tensi
mpl
yberemov
ed.
Fowler,inhisboo kandwe bs i
te,als
os uggestssomepr imiti
verefac
toringt ra
ns-
f
or ma t
ionsthatcanbeuse dsi
ngl yo rt
ogethertod ea
lwi t
ht hebadsme l
ls.Exa mples
ofthesetransf
orma ti
onsincl
ud eEx tra
ctme thod,wh er
eyo uremov edupli
ca t
iona nd
createan e w method;Cons olidateconditionalexp r
e s
sion,whe r
eyour eplacea
sequ e
nceoft est
swi t
has ingletest;andPullupme thod,whe reyoureplaces imil
ar
me thodsinsubcla
s s
eswithas ingleme t
hodi nas uperclass
. I
nter
acti
vedeve l
op ment
environme nts
,suc hasEc li
pse ,inclu
der efact
orings upportintheiredi
tors .Th i
s
ma kesite asi
ertof i
ndde pende ntpartsofapr ogra mt hathavetobec ha nge dto
i
mpl e
me nttheref
a ct
ori
ng.
252 Cha
pter9 ■ Sof
twar
eev
olut
ion
Re f
act
oring,c arri
e doutdur ingpr ogram devel
opme nt,isane ff
ec t
ivewa yt o
reducethelong-te r
m ma intenancec ostso fapr o
gram.Ho we ve
r,ifyouta keo ve
ra
programf orma intenancewhos estruc tur
eha sbeens i
gn i
ficant
lyde gr
a ded,thenit
ma ybepr ac
tica
llyi mpossibletorefac t
ort hecodealone.Yo uma ya l
sohavet othink
abou tdes
ignrefac t
oring,whi chislike l
yt obeamor eexpe nsi
vea nddiff
icultprob-
lem.De si
gnr ef
a ctori
ngi nvolveside ntifyi
ngr e
leva
ntde signpa t
terns(discusse
di n
Cha pte
r7)a ndre plac
inge xist
ingc odewi thcodethatimp lementsthes
ed esignpa t
-
terns(Keri
evsky,200 4).Idon’ thaves pa c
et odis
cussthish er
e.
9.
4Legacysyst
em management
1. Scrapthesys
temc omplete
lyThisopti
onshouldbechos
enwh e
nthesys
temis
notma ki
nga neffect
ivecontri
buti
ontobusines
sproces
ses
.Th i
scommonly
occurswhenb us
inessproces
seshavechangedsinc
ethesys
tem wasi
nst
all
ed
andarenolongerrel
iantonthelega
cysys
tem.
2. Leavethes ys
temu nchangedandconti
nuewi t
hr e
gula
rmaintenanceThis
opti
onshouldbechose
nwh ent
hesys
temiss
ti
llrequi
redbu
tisf
air
lysta
blea
nd
thesys
tem use
rsmaker e
lat
ivel
yfe
wc han
gerequest
s.
3. Reengineerthesyst
emt oimprovei tsmai ntainabi
li
tyThisopti
ons houl
dbe
chosenwhe nthesy
stem qual
it
yh a
sbe endegr a
dedb ycha
ngea n
dwhe r
eanew
changetothesyst
emisstil
lbein
gpr op ose
d. Thisproce
ssma yi
nclud
ede ve
lop-
ingnewi nt
erfac
ecompo nent
ssotha ttheor i
ginalsyst
emcanwor kwi t
hothe
r,
newersystems.
4. Replaceallorpartofthesyst
emwi thane ws yst
emTh i
soptions houldbec ho-
senwhe nfact
ors,suc
ha snewh ardwa r
e,me anthattheoldsy st
emc annotcon-
tin
uei noper
ati
onorwh ereoff
-the
-shelfsyste
mswou ldal
lowt hene ws ys
temt o
bede vel
opedatar e
asonablecost
.Inma nycases,ane v
oluti
o nar
yr eplacement
str
ategycanbeadoptedinwhichma jors ys
temc ompo nent
sarer epla
ce dbyoff-
the-
shelfsys
temswitho t
hercompone ntsreuse
dwh ereverposs i
ble.
9.
4■ L
egac
ysy
ste
mmanage
ment 253
HighBusi
nessVal
ue
Hi
ghBusi
nessVal
ue
Low Qual
it
y
Hi
ghQuali
ty
9
10 8
6
ue
sVal
7
nes
L
ow Busi
nessVal
ue Low Bus
inessVal
ue
i
HighQuali
ty
Bus
L
ow Qual
it
y
2 5
1 3 4
Fi
gur e9.
13 An
exampleofalegac
y
sy
s t
em ass
ess
ment Sy
stem Qual
i
ty
Na t
urally,theseopti
onsa renote xclusi
v e.Whe nas ystemi sc ompo sedofs ever
al
programs ,differ
entop t
ionsma ybea ppli
e dtoe a
c hpr ogra m.
Whe nyo ua r
ea sses
singal egacys ystem,youha vet olooka titfrom abu si
ness
perspecti
v ea ndatechnicalperspecti
ve( Wa rre
n,19 98) .Fromab usinesspe rspec
ti
ve,
youha vet ode ci
dewhe t
herornot theb usinessreall
yn eedst hesy st
e m. Fromat ech-
nicalpe r
spe cti
ve,youha vet oassessthequ a l
it
yo ft hea pplicati
ons oft
wa rea ndthe
system’ss upportsoftwarea ndhardwa r
e .Yout henus eac ombi nationo ftheb usi
ness
valuea ndt hes y
stem qualitytoinform you rde c
isiononwha ttodowi tht helegacy
system.
Fore xampl e,a ss
umet hatanor gan i
za t
ionh as10l e
g acys ys t
ems .Yous hould
assessthequ a l
it
ya ndtheb usi
ne s
sv alueofe acho fthes esystems .Youma ythenc r
e-
at
eac ha rtshowi ngr e
lati
veb us i
nessv aluea nds ys t
e m qua lit
y .Thisi ss howni n
Figure9.13.
From Fi gure9.13,youc ans eethattherea r
ef ourc lusterso fsystems :
1
. Lowq uali
ty
,lowbusines
svalueKeepi
ngthe
sesyst
emsinopera
tionwil
lbe
expens
iveandther
ateoftheret
urnt
othebusi
nes
swillbef
air
lysmall
.Thes
e
syst
emsshouldbes
crapped.
2
. Lowqua l
ity
,hi ghbusines
sv al
ueTh e
sesystemsarema kinganimpo rta
ntbusi-
nesscont
ributionsotheycannotbescr
apped.However,thei
rlowq uali
tyme a
ns
tha
titisexpe nsi
vetoma int
ainthe
m.The s
es ys
temss houldbereengineer
edto
improvet
hei rqual
ity
.Th e
yma yber e
plac
ed,ifasuit
ableoff-
the
-shelfsyst
emis
avai
la
ble.
3
. Highq uali
ty
,lowb u
sines
svalueTh eseares ys
temst hatdon’tcontr
ibutemuch
t
ot hebusines
sb utwh i
chmaynotb everye xpe
ns i
vetoma int
ain.Iti
snot wort
h
r
e pla
cingtheses yst
emss onor malsys t
em ma inte
na ncema ybec ontinue
dif
expensivechange sar
enotreq uir
eda ndthes ystemh ardwarerema i
nsi nuse.
I
fe xpensi
vechan gesbecomene ce
ssary,thesoft
wa reshouldbescrapped.
254 Cha
pter9 ■ Sof
twar
eev
olut
ion
4. Highquali
ty
,highb us
ines
sv al
ueThe sesys
temsh a
vetobekepti
noperat
ion.
However,t
hei
rh ig
hqu al
it
yme ansthatyoudon’thavetoi
nve
sti
ntra
nsfor
ma -
t
ionorsyst
emre pl
acement.Normalsyst
em maint
enancesh
oul
dbeconti
nued.
Toass
essthebusi
nessval
ueofasyst
em,youha v
et oide
ntif
ysyst
ems t
ake
hold-
e
rs,s
uchasend-us
ersofthes
yst
ema ndth
eirmanage
rs,andaskaseri
esofq
uest
ions
a
boutth
esystem.Therearef
ourba
sicis
suest
hatyouhavetodiscu
ss:
1. Theuseoft hesyst
emIfsystemsa reon l
yus edoc cas
ional
lyorbyas mal
lnum-
berofpeople,theymayh aveal owb usine
ssv alue.Al e
ga c
ys yst
em mayha ve
beendevelopedtome e
tab usi
nes sneedthathase it
herchangedorthatcannow
beme tmor eeffe
cti
vel
yino therwa ys.Youha vet obec a
r e
ful,however
,about
occas
ionalb u
timporta
ntuseo fsystems.Fore xamp l
e,inau ni
v e
rsi
ty,ast
udent
re
g i
st
rat
ions yst
em ma yonlyb eu s
eda ttheb eginni
ngofe a
cha cademi
cy ear
.
Howe ve
r,itisanessen
tia
lsystemwi thahig hb usi
nessvalue.
2. Theb usi
nessprocess
e sthataresupportedWhe nasyst
emi sint
roduc
e d
,busi-
nessproces
sesa r
ed e
s i
gnedt oexplo
itthesyst
em’sca
pabil
it
ies
.Ifthesyst
emi s
inf
lexibl
e,changingtheseb usi
nessprocess
esma ybeimpossi
ble
.Ho wever,as
theenvir
onmen tchanges,theori
ginalbusi
nesspr
oces
sesmaybe comeobsolet
e.
Therefor
e,asys t
em ma yha vealowb usi
nessval
uebecaus
eitforcest
heu s
eof
inef
fici
entbus
inessprocesses.
3. Thesyst
emde pe ndabi
lit
ySystem de
pe ndabil
it
yisnotonlyat e
c hnica
lproblem
butal
soabus ine ssprobl
em.Ifas ystemi snotdependableandt heproblems
dir
ect
lyaffe
ctt heb us
inesscust
omersorme anthatpeopleinthebu si
nessa r
e
div
ert
edfromot h ert
askstos
o l
vetheseproblems,t
hesystemha sal o
wb usines
s
val
ue.
4. Thes y
ste
mo ut
putsTh ekeyiss
uehereistheimpor
tanceofthesystemoutputst
o
thesucce
ssfulfunct
ioningofthebusiness
.Ift
hebusin
e s
sde pe
n dsontheseout-
puts
, t
henthesystemha sahi
ghb us
inessval
ue.Conver
sely
,iftheseoutput
sc a
n
beeasil
yge ner
atedins omeotherwayori ft
hesys
tempr oduce
sout put
sthatare
rar
elyused,thenit
sb usines
svaluema ybelow.
Fore xample,let
’sassumet hatac omp anyp rovide sat r
avelorderi
ngs ystemth at
isuse dbys taffrespons i
blef ora rrangingt rave l
.The yc anplaceor derswi t
ha n
approv edtrav
e lagent
.Ti cke t
sa rethe nde li
ve r
e da ndt hec ompanyi sinvoicedf or
these.Ho wever,abusi
ne ssv alueasse ss
me ntma yr ev ealthatt
hissystemison lyuse d
foraf airl
ysma llperc
e nta
geoft rave lordersp l
ac e
d .Pe oplema ki
ngt ravelarr
ange -
me ntsf i
nditc heapera ndmo rec onv enienttode aldi rect
lywitht ra
ve lsuppli
e rs
thr
ou ght hei
rwe bsit
es.Thi ss yst
em ma ys ti
llbeus ed,b utther
ei snor ealpointi n
keepingi t
.Thes amefunc tionalit
yi sa vai
lablefro me xternalsyst
ems .
Con vers
ely,sayac ompa nyhasde velopedas yst
e mt h a
tkeepstrackofa llprevi-
ousc ustomeror de
rsan daut oma t
icallyg e
n erat
esr emi ndersforcustome r
stor eor
de r
goods .Thisresult
sinal argenumbe rofre peatorder sandk eepscus t
ome rssat
isf
ie d
9.
4■ L
egac
ysy
ste
mmanageme
nt 255
F
act
or Ques
tions
Suppl
iers
tabi
li
ty I
sthes uppl
i
ersti
lli
nex i
st
enc
e?Isthesuppl
ierf
inanci
all
yst
ableandli
kel
yto
cont
inueinexi
stence?I
fthesuppl
i
erisnolongerinbusi
ness,doess
omeoneel
se
maintai
nthesys
tems ?
F
ail
urer
ate Doesthehar
dwar
ehaveahighrateofrepor
tedf
ail
ures
?Doest
hes
uppor
t
sof
twarec
ras
handfor
cesy
stem rest
art
s?
Per
for
manc
e I
stheperfor
manc eoft
hesyst
em adequat
e?Doper
for
manc
epr
obl
emshav
ea
s
igni
fi
canteff
ectonsys
tem us
ers
?
Suppor
trequi
rement
s Whatloc
alsuppor
tisr
equi
redbythehardwar
eands
oft
ware?Ift
herear
ehi
gh
cos
tsassoc
iat
edwitht
hiss
upport
,itmaybewort
hcons
ider
ingsyst
em
r
eplac
ement .
Mai
ntenanc
ecos
ts Whatar
ethecos
tsofhardwaremaintenanceands uppor
tsof
twarel
i
cences?Older
har
dwaremayhavehighermaint
enancec os
tsthanmodernsyst
ems.Support
sof
twar
emayhavehighannualli
censi
ngc ost
s.
I
nter
oper
abi
l
ity Arether
eproblemsinter
fac
ingt
hesyst
em t
oothersy
s t
ems?Cancompil
ers
,for
example,beusedwithcurr
entv
ers
ionsoft
heoperat
ingsy
stem?I
shardware
emulati
onrequir
ed?
Fac
tor Ques
tions
Under
standabi
li
ty How dif
fi
cul
tisi
ttounder
standthesourcecodeofthec
urrents
yst
em?How
complexaret
hecontr
olst
ructur
esthatareused?Dovar
iabl
eshave
meaningf
ulnamesthatr
efl
ectthei
rfunct
ion?
Doc
ument
ati
on Whatsyst
em documentat
ioni
sav
ail
abl
e?I
sthedoc
ument
ati
onc
ompl
ete,
cons
ist
ent,andc
urrent
?
Dat
a I
sthereanex
pli
ci
tdat
amodelf
orthesy
stem?Towhatex
tentisdat
adupl
i
cat
ed
a
crossfi
l
es?I
sthedat
aus
edbythesys
tem up-
to-
dat
eandc onsi
st
ent?
Per
for
manc
e I
stheperf
ormanceoftheappl
icat
ionadequat
e?Doper
for
manc
epr
obl
ems
hav
eas i
gnif
ic
antef
fec
tons ys
tem user
s?
Pr
ogr
ammi
ngl
anguage Aremodernc
ompil
ersavai
l
ablefort
heprogr
ammi ngl
anguageusedto
devel
opthes
yst
em?Istheprogr
ammi ngl
anguagest
il
lus
edf ornew s
yst
em
devel
opment
?
Conf
igur
ati
onmanagement Areal
lver
sionsofallpart
softhesys
tem managedbyac onf
igurat
ion
managements ys
tem?Isthereanexpli
ci
tdescr
ipt
ionoft
hever s
ionsof
componentsthatar
eus edinthecur
rentsy
stem?
T
estdat
a Doestes
tdat
afort
hesyst
em exi
st?I
sther
earecor
dofregr
ess
iont
est
s
car
ri
edoutwhennew f
eat
ureshavebeenaddedtothes
yst
em?
Per
sonnels
kil
ls Ar
ether
epeopl
eavai
l
abl
ewhohav
etheski
ll
stomaint
aint
heappli
cat
ion?
Ar
ether
epeopl
eavai
l
abl
ewhohav
eexperi
encewi
ththesy
stem?
thedi
ff
icul
ti
esofma i
ntai
ningthes
yst
ema ndt
hesys
tem doc
umenta
tion
.Youmay
Fi
gur
e9.15 Fact
ors
us
edinappl
i
cati
on als
ocoll
ectdat
atha
twillhelpyouj
udget
hequal
it
yofthesy
stem.
Da t
athatma
ybe
as
ses
sment usef
uli
nqua l
it
yass
essmenta r
e:
1. Thenumberofsys
temchangereque
stsSys
temchange
susua
llyc
o r
ruptt
hesys
-
te
ms tr
uct
ureandmakefur
therchan
ge smor
edif
fi
cult
.Th
ehighert
hisacc
umu-
la
tedval
ue,t
helowert
hequalit
yofthesys
tem.
2. Thenumberofuseri
nter
facesThisi
sa nimpor
tantfa
ctori
nforms-ba
sedsys
-
temswhereeac
hformcanb econs
ide
redasaseparat
euseri
nte
rfac
e.Themore
int
erf
ace
s,themor
elik
elythatt
her
ewillbeinc
onsis
tenc
iesa
ndredundanc
iesi
n
thes
eint
erf
aces
.
3. Thevolumeo fdat
au s
edbythesys
temThehi g
herthevol
umeofdat
a(numbe
r
offi
les
,s i
zeofd a
tabas
e,et
c.
),t
hemo rel
ikel
ythatiti
sthatt
her
ewil
lbedat
a
inc
onsi
s t
enci
esthatr
educet
hesys
tem qua
lit
y.
Ideal
ly,obj
ect
iveasses
sme nts
houl
dbeu sedtoinf
o rm dec
isi
onsaboutwhattodo
wit
hal egacysys
tem.Ho wever,i
nma n
yc as
es,decis
ionsa r
enotreal
lyobjec
ti
veb ut
ar
eb a
s e
dono rga
niza
tionalorpol
it
ic
alconsi
dera
tio
ns. Forexample
,ift
wob usi
ness
e s
merge,themostpoli
ti
call
yp owerf
ulpart
nerwil
lu su
a ll
ykeepitssyst
emsa n
ds cr
a p
Chapt
er9 ■ F
urt
herr
eadi
ng 257
t
heothe
rs ys
tems.Ifseniormanageme ntinanorganiz
ati
o ndeci
detomo vet
oan ew
h
ardwareplat
form,thent hi
sma yrequireappl
ic
a ti
onstober e
placed
.Ifthe
reisno
b
udgetavail
abl
ef orsyst
e mtra
nsfor
ma ti
oni napa r
ti
cula
rye ar
,the
ns ys
tem ma
int
e-
n
ancema ybec o
ntinued,eventho
ught hiswil
lre
s ul
tinhigherl
ong-t
ermcost
s.
KEY POI
NTS
■ Sof
twa
rede
vel
opmentande
vol
uti
onc
anbet
houghtof
asa
nint
egr
ated,
iter
ati
vepr
oces
s
t
hatc
anber
epr
esent
edus
ingas
pir
almodel
.
■ F
orc
ust
oms
yst
ems
,thec
ost
sofs
oft
war
ema
int
enanc
eus
ual
lyex
ceedt
hes
oft
war
e
dev
elopmentc
ost
s.
■ Thepr
oce
ssofs
oft
war
eev
olut
ioni
sdr
ive
nbyr
eques
tsf
orc
hangesandi
ncl
udesc
hange
i
mpa
ctanal
ysi
s,r
eleas
epl
anni
ng,a
ndc
hangei
mpl
ement
ati
on.
■ L
ehman’
slaws
,suc
hast
henot
iont
hatc
hangei
scont
inuous
,des
cri
beanumberofi
nsi
ght
s
der
ivedf
roml
ong-
ter
mst
udi
esofs
yst
emev
olut
ion.
■ Ther
ear
ethr
eet
ypesofs
oft
war
emai
ntenanc
e,name
lybugf
ixi
ng,modi
fyi
ngt
hes
oft
war
eto
wor
kinanewe
nvi
ronment
,andi
mpl
ement
ingneworc
hangedr
equi
rement
s.
■ Sof
twa
rer
eengi
nee
ringi
sconc
ernedwi
thr
est
ruc
tur
ingandr
edoc
ument
ings
oft
war
etomake
i
teas
iert
ounder
standa
ndc
hange.
■ Ref
act
ori
ng,
maki
ngs
mal
lpr
ogr
amc
hange
stha
tpr
eser
vef
unc
ti
onal
it
y,c
anbet
houghtofas
pr
eve
ntat
iv
ema
int
ena
nce
.
■ Thebus
ines
sval
ueofal
egac
ysy
stemandt
hequa
li
tyof
theappl
ic
ati
ons
oft
war
eandi
ts
envi
ronmentshoul
dbeas ses
sedt
ode
ter
minewhet
hert
hes
yst
ems
houl
dber
epl
aced,
tr
ansfor
med,ormaint
ained.
FURTHER READI
NG
‘
SoftwareMaint
enanceandE vol
ution:ARoadmap’
.Aswe llasdi
scussingresear
chchal
lenges,
thi
spaperisagood,shortoverv
iewofs of
twar
emaintenanceandev ol
ut i
onbyleadi
ng
res
earcher
sinthi
sarea.Theresearchprobl
emsthatt
heyi dent
if
yha venotyetbeensol
v ed.
(V.
Rajl
ichandK.H.Bennett
,Proc.20thInt.
Conf
.onSoftwareEngineering,I
EEEPres
s,2000.)
htt
p://doi
.ac
m.org/
10.1
145/336512.336534.
Moder ni
zingLegacySystems:Sof t
wareTechnologies,E
ngineeringProcesse
s,andBus i
ness
Prac
tices.Thi
se x
cell
entbookc oversgeneralis
suesofs oft
wa r
ema intena
nceandev ol
uti
onas
wellaslegacysystemmi gr
ati
on. Thebooki sbasedonal argecases t
udyofthetransf
ormat
ion
ofaCOBOLs yst
emt oaJava-
bas edcli
ent-
serversystem.(R.C.Seacord,D.Pl
akoshandG.A.Lewis
,
Addison-Wesley
,2003.)
258 Cha
pter9 ■ Sof
twar
eev
olut
ion
WorkingEf
fec
ti
vel
ywi
thLegac
yCode.Sol
idprac
tic
aladv
iceontheprobl
emsanddi
ff
ic
ult
iesof
deal
ingwit
hlegac
ysy
ste
ms .(
M.Feat
hers
,JohnWiley&Sons,2004.
)
EXERCI
SES
9.
1.Explai
nwhyasoft
waresystemthati
sus
edi
nar
eal
-wor
ldenv
ironme
ntmus
tchangeor
becomeprogr
ess
ivel
ylessusef
ul.
9.
2.Ex
plai
nther
ati
onal
eunder
lyi
ngL
ehman’
slaws
.Unde
rwhatc
irc
ums
tanc
esmi
ghtt
hel
aws
br
eakdown?
9.
3.F
rom F
igur
e9.4,
youc anseethati
mpactanal
ysi
sisanimport
antsubpr
oc e
ssinthe
s
oft
wareevol
uti
onprocess.Usi
ngadiagr
am,suggestwhatac
tiv
iti
esmightbeinvol
vedi
n
c
hangeimpac
tanal
ysis.
9.
4.Asas of
twa reproje
ctmanagerinacompanyt hatspeci
ali
zesinthedevel
opmentof
sof
twarefort heoff
shoreoil
indust
ry,youhavebeengiventhetaskofdiscov
eringthe
fac
torsthataffectt
hemaintai
nabil
it
yoft hesys
temsdev el
opedbyy ourcompany .Sugges
t
howy oumi ghtsetupaprogramtoanal y
z et
hemai nt
enanceproces
sa nddiscover
appropr
iat
emai ntai
nabi
li
tymetri
csforyourcompany.
9.
5.Bri
efl
ydesc
ribet
hethr
eemai
nty
pesofs
oft
war
emai
nte
nanc
e.Whyi
sits
omet
imesdi
ff
ic
ult
todi
sti
ngui
shbetwe
enthem?
9.
6.Wha
tar
ethepr
inc
ipal
fac
tor
sthataf
fec
tthec
ost
sofs
yst
emr
eengi
nee
ring?
9.
7.Underwhatc
ircumst
ancesmightanor
gani
zati
ondec
idetoscr
apasys
tem whent
hes
yst
em
ass
essmentsugges
tsthati
tisofhi
ghqual
it
yandofhighbus
ines
sval
ue.
9.
8.Wha
tarethest
rategi
copti
onsf
orle
gacysyst
eme vol
ution?Whenwoul
dyounormal
ly
r
epl
aceal
lorpartofasys
temrat
herthanc
ontinuemaintenanc
eoft
hesof
twar
e?
9.
9.Expl
ainwhypr
oblemswit
hsuppor
tsof
twar
emi
ghtmea
nthatanor
gani
zat
ionhast
o
repl
acei
tsl
egacysys
tems.
9.
10.Dosoft
war
eengi
neer
shaveaprofess
ional
respons
ibi
li
tytoproduc
ecodet
hatcanbe
mai
ntai
nedandc
hangedeveni
fthisi
snotexpli
ci
tl
yrequest
edbythei
rempl
oyer?
REFERENCES
Ar
thur
,L.
J.(
1988)
.Sof
twar
eEv
olut
ion.
NewY
ork:J
ohnWi
l
ey&Sons
.
Banker
,R.D.,
Datar
,S.M.
,Kemer
er,C.
F.andZwe
ig,
D.(
1993)
.‘Sof
twar
eCompl
exi
tyand
Maint
enanceCos
ts’
.Comm.ACM,36(11)
,81–
94.
Boehm,B.
W.,Abt
s,C.
,Br
own,A.W.,
Chul
ani
,S.
,Cl
ark
,B.
K.,
Horowit
z,E.,
Madac
hy,
R.,
Rei
fer
,D.
and
St
eece,
B.(20
00).Sof
twa
reCostE
sti
mati
onwit
hCOCOMOII
.UpperSaddl
eRi
ver
,NJ
:Pr
ent
iceHa
ll
.
Cha
pter9 ■ Ref
erenc
es 259
Col
eman,D.
,Ash,D.,L
owther
,B.andOma n,P.(
1994)
.‘Us
ingMet
ri
cst
oEv
aluat
eSof
twa
reSys
tem
Mai
ntai
nabi
li
ty’
.IEEEComput
er,27(8)
,44–49.
Er
li
kh,L.
(2000)
.‘Lever
agi
ngl
egac
ysy
ste
m dol
lar
sforE-
bus
ines
s’.I
TPr
ofes
sional
,2(
3),
May/J
une2000,17–23.
Fowl
er,
M.,Beck,K.
,Br
ant,J
.,Opdyke,W.andRobert
s,D.(
1999)
.Ref
act
ori
ng:I
mpr
ovi
ngt
he
Desi
gnofExi
sti
ngCode.Boston:Addi
son-Wes
ley.
Gui
mar
aes,T
. (
1983)
.‘Managi
ngAppl
ic
ati
onPr
ogr
amMai
ntenanc
eEx
pendi
tur
es’
.Comm.ACM,
26(
10)
,739–46.
Hopkins
,R.andJenkins
,K.(2008)
.Eat
ingt
heI
TEl
epha
nt:Mov
ingf
romGr
eenf
iel
dDe
vel
opme
nt
toBrownfi
eld.
Boston:IBM Pr
ess.
Kaf
ura,D.andReddy
,G.R.(
1987)
.‘T
heuseofsoft
warecompl
exit
ymetric
sins
oft
war
e
mai
ntenance’
.IEEET
rans
.onSoft
wareEngi
nee
ring,SE-
13(3)
,335–43.
Ker
iev
sky
,J.(
2004)
.Ref
act
ori
ngt
oPat
ter
ns.
Bos
ton:Addi
sonWes
ley
.
Kozlov
,D.
,Koski
nen,J
.,Sakki
nen,M.andMar
kkul
a,J
.(2008)
.‘As
sess
ingmaint
ainabi
li
tychange
overmult
ipl
esof
twarerel
eases’
.J.
ofSoft
war
eMaint
enanceandEvol
uti
on,20(1)
,31–58.
Kr
ogsti
e,J.
,Jahr
,A.andSjoberg,D.I
.K.(2005)
.‘Alongi
tudinals
tudyofdev
elopmenta
nd
maint
enanceinNorway:Reportfr
omt he2003investi
gat
ion’.I
nfor
mati
onandSoftwar
e
Te
chnology,48(11
),993–1005.
Lehman,M.M.(
1996)
.‘LawsofSof
twareEvol
uti
onRevi
si
t e
d’.Pr
oc.E
uropea
nWor
kshopon
Soft
warePr
oces
sTechnology(
EWSPT’96)
,Spri
nger
-Ver
lag.108–
24.
Lehman,
M.M.andBel
ady
,L.(
1985)
.Pr
ogr
amEv
olut
ion:Pr
oces
sesofSof
twar
eChange.
London:
Academi
cPr
ess
.
Lehman,M.M.,Perr
y,D.E.
andRamil
,J.F
.(1
998).‘
OnE vi
denc
eSuppor
tingtheFEASTHypothes
is
andtheLawsofSoft
wa r
eEvol
uti
on’
.Proc
.Me t
ri
cs‘98,Bet
hesda
.Mary
land:IEEEComputer
Soci
etyPre
ss.84–8.
L
ehman,M.M.,Rami
l,J
.F.
andSandler
,U.(
2001
).‘
AnAppr
oachtoModell
ingLong-ter
mGrowth
T
rendsi
nSof
twareSyst
ems’.
Proc
.Int.
Conf
.onSof
twar
eMa i
ntenanc
e,F
lorence,I
taly
:21
9–28.
Li
ent
z,B.P.
andSwa
nson,E.
B.(
1980)
.Sof
twar
eMai
nte
nanc
eManage
ment
.Readi
ng,Ma
ss.
:
Addi
son-
We s
ley
.
McCabe,T.
J.(
1976)
.‘Ac
ompl
exi
tymeas
ure
’.I
EEET
rans
.onSof
twar
eEngi
neer
ing.
,SE-
2(4)
,
308–20.
Nosek
,J.T.andPal
vi
a,P
. (
1990).‘
Soft
waremai
ntenancemanagement
:change
sint
hel
ast
dec
ade’.Soft
wareMai
ntenance:Res
earc
handPracti
ce,2(
3),
1 57
–74.
Opdyke,
W. F.andJohnson,R.E.(1
990).‘
Ref
actor
ing:AnAidi
nDes i
gni
ngAppli
cati
onFra
mewor
ks
andEvol
vingObject-
Orient
edSy st
ems’.1
990Sympos iumonObje
c t
-Or
ient
edProgramming
Emphasi
zingPract
icalAppl
icati
ons(SOOPPA‘90)
,Poughkeeps
ie,NewYork.
Poole
,C.andHuis
man,J.
W.(2001
).‘
Usi
ngEx
tremePr
ogr
ammi
ngi
naMai
ntenanc
eEnv
ironment
’.
IEEESof
tware,
18(6)
,42–50.
260 Cha
pter9 ■ Sof
twar
eev
olut
ion
Raj
li
ch,
V.T.andBennet
t,K.
H.(
2000)
.‘ASt
agedModel
fort
heSof
twar
eLi
feCy
cle
’.I
EEE
Comput
er,
33( 7)
,66–71
.
Sous
a,M. J
.(1
998)
.‘ASur
veyontheSoft
war
eMaint
enanceProcess’
.14t
hIEEEI
nter
nat
ional
Conf
erenc
eonSoft
wareMaint
enance(I
CSM ’
98)
,Washi
ngton,D.C.
:265–74.
Ul
ri
ch,W.M.(
1990)
.‘TheEvolut
ionar
yGr
owt
hofSof
twar
eRe
engi
neer
ingandt
heDec
adeAhead’
.
Amer
ic
anProgr
ammer ,3(
10),14–20.
War
ren,
I.E.
(1998)
.TheRenai
ssanc
eofL
egac
ySy
stems
.London:Spr
inger
.
P
ART Dependabi
lit
y
andSecuri
ty
2
Ass oftwar
es yst
emsi ncreas eins i
zeandc ompl exit
y,Is t
ronglybeli
evethat
themos tsignif
icantchal lenget hatwef acei n softwar eengineeringis
ensuringthatwec ant rustthes es y
stems.T otrus tas yst
em,wemus thave
confidencethatitwillbeav ail
ablewhenr equiredandper form asexpect
ed.
Itmustbes ecuresot hatourc omput er
sordat aar enott hr
eatenedbyi t
.
Thismeanst hatissuesofs ys t
em dependabi li
tyands ecurit
yareof t
enmor e
impor t
antthant hedet ail
sofs yst
em functionality
.Thispar tofthebookhas
thereforebeen designedt oi ntr
oducest udent sand pr acti
singsoftware
engineerstothei mpor tantt opic
sofdependabi lit
yands ecuri
ty.
Thefirstchapterinthissec
tion,Chapter10,coverssociotechnic
als ystems ,
whichatf i
rsts i
ght,maynotappeart ohavemuc htodowi t
hs of t
war e
dependabi li
ty.Howev er
,manys ecuri
tyanddependabi l
it
yf ail
uresst em
fr
om humanandor ganizat
ionalcausesandwec annoti gnorethes ewhen
consideringsys t
em dependabili
tyands ecurit
y.Softwareengi neer smus t
beawar eofthisands houldnotimagi nethatbettertechniquesandt ec h-
nologyc anens uret
hatoursystemsarec ompletel
ydependabl eands ec ure.
Chapter11i
ntroducesthebasicc oncept
sofdependabil
it
yands ecuri
tyand
explai
nsthefundament alpri
nciplesofavoi
dance,det
ection,andr ecover
y
thatareused to build dependabl esyst
ems.Chapter12 s uppl ements
Chapter4,whichc oversrequir
ement sengineeri
ng,withadi scussionof
specif
icapproachest hatareus ed f
orderivi
ngand s pecif
yingsy stem
r
equir
ementsforsec
uri
tyanddependabi
li
ty.Ibr
ief
lyi
ntr
oducetheuseof
f
ormalspeci
fi
cati
oninChapt
er12,andanadditi
onalc
hapteronthi
stopi
c
i
savail
abl
eont heWeb.
Finally,i
nt hiss ect
ion,Chapter15i sc oncernedwi t
hdependabi l
it
yand
secur i
tyas surance.Iexplai
nt heus eofs t
aticanal ys
isandmodelc heck-
ingf ors ystem verif
icat
ionandf aultdetection.Theset echniqueshave
beens ucces s
full
yus edinc ri
ticals
ystemsengi neeri
ng.Ialsoc overspe-
cifi
cappr oac hestotesti
ngt hedependabi l
ityands ecur
it
yofsys temsand
explainwhyadependabi lit
yc asemaybenec essarytoconvinc
eanext er-
nalr egulatorthatasys t
em iss afeandsec ure.
10
Soc
iot
echni
cals
yst
ems
Obj
ect
ive
s
Theobjecti
vesoft hischapteraretoint
roducetheconceptofa
soci
otechnicals
y stem—as yst
emt hati
ncludespeopl
e,software,
andha r
dwa re—a ndt oshowt hatyouneedt ot
akeas y
s t
ems
pers
pec t
iveons ecurityandde pendabi
li
ty.Whenyouha veread
thi
schapter,youwi ll
:
■ knowwhatismeantbyasoci
otechni
cals
yste
ma ndunder
stand
t
hediff
erenc
ebetweenat
e c
hnical,c
omputer
-bas
edsyst
ema nd
asoci
otec
hnical
syst
em;
■ havebeenintr
oducedtotheconc
eptofemer
gentsyst
em
proper
ti
es,suchasrel
iabi
li
ty
,perf
ormanc
e,sa
fet
y,andsec
uri
ty;
■ k
nowaboutt
heproc
urement
,dev
elopment
,andoper
ati
onal
a
cti
vi
ti
est
hatar
einvol
vedi
nthesyst
emsengi
neer
ingpr
ocess;
■ unders
tandwhys of
twaredependabil
it
yandsecur
it
yshoul
dnotbe
consi
deredini
solat
ionandhowt heyareaf
fec
tedbysys
tems
i
ssues,suchasoperat
orerr
ors.
Cont
ent
s
10.
1Compl
exsystems
10.
2Sys
temsengine er
ing
10.
3Sys
temprocurement
10.
4Sys
temdevelopment
10.
5Sys
temoperation
264 Cha
pter10 ■ Soc
iot
echni
cal
sys
tems
Inac ompu ters ystem,t hes oftwa rea ndt heha rdwa rea rei nt er
de pe ndent.Wi thout
hardwa re,as oftwa res ys temi sa na bs t
ra ct
ion,wh i
chi ss impl yar epresentat
ionof
someh uma nkn o wle dgea ndide as.Wi thou ts oft
wa re,hardwa reisas etofine r
te lec-
tr
oni cd evice s.Ho we ver,ifyouputt he mt og ethertof or m as ys t
e m,youc reatea
ma c hinet ha tc anc a rr
youtc ompl exc omput ati
o nsa ndd e livert her esultsoft he se
comput a t
ionst oi tse nviron me nt.
Thi si l
lustrateso neo fthef und ame ntalc har a
cte r
is
ticsofas ystem—i tismor etha n
t
hes um ofi tsp a rt
s.Sys temsh avepr ope rti
est ha tonlybe c omea ppa r e
ntwhe nt he i
r
compon entsa rei nte grateda ndo peratet oge ther
.Th er
e f
or es oft
wa r ee ngineeringi s
nota ni sol
a teda c t
ivity,b utisa ni ntr
ins icpa rtofmor eg en er alsystemse ngine ering
proc esse s.Softwa r
es ys t
e msa ren otiso lateds yst
e msb utr athe ress entia
lc ompone n t
s
ofmor ee xte nsives ys t
emst hatha ves omeh u ma n,social,o ror gan i
za ti
on alpurpo se.
F ore xamp l
e ,thewi l
d ernesswe at
h ers yst
e ms o ft
wa r
ec o n t
rolst hei nstr
u me n
tsi na
we athe rs t
ation.I tc ommuni c ate
swi t
hot hers oftwa r
es ystemsa ndi sapa rtofwi der
nationa la ndi nternationalwe atherfore casti
ngs ystems.Aswe llash a r
d warea nds of t
-
wa re,th eses ystemsi ncludep ro c
e ss
esf o rforec as
tingthewe ather,pe op l
ewh oo pera t
e
t
hes ys t
e ma nda naly zeitso utputs.Thes yste ma lsoinclude st heor ganiz a
tionst hat
dep endo nthes ys t
emt oh elpthemp rovidewe atherf or
ecaststoi nd i
vi duals,governme nt
,
i
n dus t
ry,e t
c .The seb roa dersy st
emsa res ome timesc all
eds o ciotechn i
c alsystems.Th ey
i
nc lu deno nte chnica leleme n t
ss uc ha spe ople ,processes,re gu lat
ion s,etc.,aswe l
la s
t
e chn i
c alco mp on entssu cha sco mpu t
e rs,softwa re
, andoth ere qu i
pme nt.
Soc iotechni ca ls yste msar es oc ompl e xt ha titispr a cticallyi mpos s i
bl et o
unde r
s t
a ndt he ma sawh ole.Ra ther,yo uh av etovi ewt he ma sl aye rs
,a ssho wni n
Fig ure10. 1.The sel aye rsma keupt hes oc iotechnicals ys temss tack:
1. Theequi
pmentlaye
rThisla
yeri
scompos
edofha
rdwa
rede
vic
es,s
omeof
whic
hma ybecompute
rs.
2. Th
eoper
ati
ngs
yst
emlayerThisl
ayerint
era
c t
switht
hehar
dwarea
ndp
rovi
des
as
etofc
ommonfac
ili
ti
esforhi
ghersof
twarelaye
rsi
nthes
yst
em.
3. Thecommun ic
ationsanddatama nagementl
ayerThisla
yerext
endstheoper
at-
ingsyst
e mf a
cil
itie
sandprovidesaninte
rfac
ethatal
lowsint
era
cti
onwi t
hmor e
exten
sivef unct
ionali
ty,s
ucha saccesstoremot
esystems,acce
sstoas yst
em
data
base ,e
tc.Thisissometi
me scal
ledmiddl
eware,
asitisi
nbetweentheappl
i-
cat
iona ndtheope r
ati
n gs
ystem.
4. Theappl
ic
ati
onl ay
erThi
slaye
rdel
ive
rstheappl
ica
tion-
spec
ifi
cfun
c t
ion
ali
ty
tha
tisr
equi
red.Ther
emaybemanydi
ffe
renta
ppli
cat
ionprogr
amsinthisl
ayer
.
5. Thebus
ine
sspr
oces
sla
y e
rAtthi
sleve
l,t
heor
ganiz
ati
ona
lbusi
nes
spr
oce
sse
s,
whic
hma k
euseoft
hesoft
war
esyst
em,ar
edef
inedanden
act
ed.
6
. Theorga
niz
ati
onall
ayerThi
sla
yeri
ncl
ude
shi
gher
-l
evels
tra
teg
icp
roces
sesa
swe l
l
asbus
ine
ssrul
es,
pol
ici
es,a
ndnor
mstha
tsh
oul
dbefol
l
owe dwhenus
ingt
hesyst
em.
7. Thesoci
all
ayerAtt
hisl
ayer
,thela
wsa
ndr
egul
at
ion
sofs
oci
et
ytha
tgo
ver
nth
e
oper
ati
onofthes
yst
ema r
edefine
d.
Chapt
er10 ■ Soc
iot
echni
cal
sys
tems 265
Soc
iet
y
Or
gani
zat
ion
Bus
ines
sPr
oces
ses
Appl
i
cat
ionSy
stem
Syst
ems Sof
twar
e
Engi
neer
ing Engi
neer
ing
Communi
cat
ionsandDat
aManagement
Oper
ati
ngSy
stem
Figure10.1The
sociot
echni
cals
yst
ems Equi
pment
stack
Inp rinc i
ple,mos tintera ctionsa rebe twe enne ighb or ingl a yers,wi the achl ayer
hidingt hede tai
lo ft hel aye rbe lo wf rom t hel aye ra bov e.I npr a cti
c e,t hi si snot
alwa yst hec ase.The rec anbeu ne xpectedi nte r
a c
tio nsb e twe e nlaye rs,whi c hr e sul
t
i
npr ob l
emsf orthes ystema sawho l
e.Fore xa mple ,s a
yt her eisac ha ng ei nt hel a
w
go verninga cc e
sst ope rsona li nfor ma ti
on. Thi sc ome sfromt hes oc i
a lla ye r.Itl eads
t
one w or gan i
zationalpr oc edur e sa ndc hange stot heb us ines sproc es ses .Ho we ver
,
t
hea pplica t
ions ystem ma yn otbea bl
et opr ovidet her equi redl eve lofpr iva cys o
cha nge sha vet obei mpl e me nte di nt hec ommuni c a
tionsa ndda tama na ge me nt
l
a yer.
Th inkinghol isti
ca ll
ya bo uts y stems ,rat
h e rthans impl yc ons i
d erings of twa rei n
i
s olation,i tise ssent i
alwhe nc ons i
de r
ings of t
wa res e cur i
t ya ndde pe nd a bilit
y.
So ft
wa ref ai
lu r
e,inits el
f, rarelyha ss er
iousc ons e
qu e nce sbe c auses oft wa rei si ntan-
giblea nd, evenwhe nda ma ge d,i se asil
ya ndc he a
pl yr estor ed.Ho we ve r,whe nt hese
softwa refa i
luresr i
ppl ethr oug ho therpa r
tsoft hes y stem,t he ya f
fe ctt hes oftwa re’
s
phys icalandhuma ne nviro nme nt. He re
,thec ons e
que nce soff ail
ur ea remor es ign if
-
i
c ant.Pe oplema yha v etod oe xtrawor kt oc ont ai
norr ec ov erf r
o mt hef ailure ;for
exa mpl e,therema ybep hys i
c alda ma getoe qui pme nt ,da tama ybel os torc or rupt e
d,
orc onfide nt
iali
tyma ybebr eac he dwi t
hunk no wnc on s
e que nc es.
Yo umus t,therefore,t ak eas y stem-levelv iew whe nyo ua rede s i
gn i
ngs oftwa re
t
ha tha stobes ecurea ndde p en da ble.Yo une edt ou nde rstandt hec ons e que nc e sof
softwa refa i
luresforot he re leme ntsi nthes ys t
e m.Youa ls one edtounde r standho w
t
he seot hers ysteme leme nt sma ybet hecaus eofs of t
wa ref ailuresa ndho wt he yc an
helpt opr otectaga i
ns tandr ecov e rf r
oms of twa refa ilures.
Th erefore,itisas ys t
e mr ath ert hanas oftwa ref a i
lur et ha tisther e alpr obl em.
Thi sme anst h a
tyo un eedt oe xa mi neho wt hes oft
wa rei ntera ctswi thi tsi mme di a
te
environme nttoe nsuret hat:
1
. Soft
wa r
efai
lur
esar
e,a
sfara
sposs
ibl
e,cont
ain
edwi t
hint
heencl
osingl
aye
rsof
thesys
temsta
ckanddonots
eri
ous
lyaff
ectt
heop e
rat
ionofadj
oini
ngla
yers
.In
part
icu
lar
,sof
twar
efai
lur
ess
houl
dnotleadt
os ys
temfail
ure
s.
266 Cha
pter10 ■ Soc
iot
echni
cal
sys
tems
2. Youu nder
standhowfault
sandfai
lur
esinthenon-
sof
twa
rela
ye r
softhes
yst
ems
sta
ckma ya f
fectt
hesoftware
.Youma yalsocons
ide
rhowche c
ksma ybebui
lt
i
ntothes of
twaretohel
pde t
ectt
hesefa
ilu
res,an
dhowsupportcanbepr
ovi
d e
d
forre
c ov
eri
ngf r
om fa
ilure
.
1
0.1 Compl
exsyst
ems
Theterm‘syste
m’i soneth a
tisuniver
sall
yused.Wet a
lka boutc
omp ut
ersy st
ems,oper
-
at
ingsyst
ems ,paymentsystems,theeducat
io
ns yst
em,thes y
stemofgovernme nt
,andso
on.Theseareallobvi
ouslyquitedif
fer
entusesoftheword‘ s
yste
m’ ,a
lt
hought heyshar
e
t
hec har
acter
ist
icthat
,some how,thesyst
emi smo r
ethans i
mp l
ythesumofi t
spart
s.
Abstr
actsystems,sucha sthesyste
mofgo ver
n ment,areouts
idethes copeofthi
s
book.Ra t
her,Ifocusons ystemsthatincl
udec omputersandthathaves omes pec
ifi
c
purposesucha stoenablec ommun i
cati
on,supportnavigati
on,orcomp ut
es a
lar
ies
.
Aus ef
ulwo rkingdefin
itionofthe s
etypesofsystemsisa sfoll
ows:
Asyst
emisapurpos
efulcoll
ect
ionofint
err
elat
edcompo
nen
ts,ofdi
ff
ere
nt
k
inds
,whi
chworktog
ethertoachi
eveso
meobje c
ti
ve.
Thisgener
aldef
ini
ti
onembra
cesavas
tra
ngeofsys
tems
.Forexa
mp l
e,asi
mple
s
yste
m,s uchasla
serpoi
nte
r,mayi
ncl
udeafewha
rdwarec
omponent
splusasma
ll
10.
1 ■ Compl
exs
yst
ems 267
1
.T echnic
al comput e
r-basedsyst
e msThe s
ea res
yst
e msthatincl
udeha r
dwar eand
soft
wa r
ec ompon entsb utnotprocedure
sa ndproces
ses.Ex amplesoftechnical
systemsincludet e
levis
i o
ns,mo bi
lephon es,a
ndot h
ere quipmentwithembe d-
deds of
tware.Mos ts of
twa r
eforPCs ,computergame s,et
c .
,al
sof a
ll
sintot his
categor
y.Ind i
vidualsandor ganiz
a t
ionsusetechnic
als yst
emsf orapa r
ticular
purposebutkn owled geofthispurposeisnotpartofth esyst
em.Fo rexampl e,
thewordpr ocessorIa mus i
ngisn otawarethati
sitbeingusedtowr i
teab ook .
2
. Sociotechnicalsyste
msTh eseincludeon eo rmor et e
c hni
calsys t
emsb ut
,cru-
cial
ly,als
oi n c
ludep e
oplewhound er
standthep urposeoft hesystem wit
hinthe
syste
mi t
s e
lf.Soc i
otechnicalsystemsh avede fi
nedo perat
ionalprocesse
sa nd
people( t
heop era
tors
)a reinherentpartsoft hesystem.The yarego ver
nedby
organizat
iona lpolic
iesa ndr ul
esa ndma ybea ff
ec te
dbye xternalconst
rai
n t
s
sucha sna t
ionallawsa ndr egula
toryp oli
ci
e s.Fore xample,thisbookwa scre-
atedthroughas oci
otechnic
a lpubli
shingsystemt hatinc l
udesvariousproces
ses
andtechni c
a lsyst
ems .
Soci
ote chnicals ystemsa reenter
prises ystemst hatareintendedtoh e
lpde l
ivera
b
usines
sg oa l.Thi smi ghtb etoincreases al
e s
,r e
d ucema ter
ialusedinma nu f
act
u r
-
i
ng,collecttaxe s,ma intai
nas afeai
rsp ace,etc.Be causethe yareembe ddedina n
o
rganizat
ion ale nvironme n t
,thep r
ocur eme nt,developme nt
,a ndus eofthesesys-
t
emsa r
ei nfluenc edbyt heo r
ganizat
ion’spol ici
esa ndproc e
d ure
s,andb yitswork-
i
ngc ul
ture.Theu serso fthesystema r
ep eoplewhoa reinfluencedbyt hewa ythe
o
rganiz
a t
ioni sma nage dandbyt hei
rin te
rac t
ionswi t
hot herp e
opleinsi
dea ndou t
-
s
ideoftheo r
ga nizati
on.
Whe nyo ua r etryingt od ev
elopso ciote
chni calsyste
ms ,youn eedtounde rs
tand
t
heorganizationa lenvironme nti
nwh icht heya reused.Ifyoudo n’t
,thesyste
msma y
n
otme e tbus ine ssne edsa ndus ersa ndt heirma nagersma yrejectt
hes ystem.
268 Cha
pter10 ■ Soc
iot
echni
cal
sys
tems
Or
gan
iza
tion
alfac
tor
sfromt
hesyst
em’senvi
ronmentt
hatmayaf
fec
tther
equi
re-
me
nts
,des
ign,a
ndopera
ti
onofaso
ciot
echni
cals
yst
eminclu
de:
1. ProcesschangesThes yst
em mayrequir
ec hangest
otheworkproces
sesinthe
envir
onme nt.I
fso,t
raini
ngwillcer
tai
nlyber e
quir
ed.I
fcha
ngesaresi
gnif
ica
n t
,
oriftheyi n
volvepeoplelos
ingthei
rjobs,ther
eisadange
rthattheuser
swi l
l
re
s i
sttheintr
oduct
ionofthesyst
em.
2. Jobc hangesNews ys
temsma yde-s
killth
eu sersi
na nen
vironmentorcause
themt oc hangethewa ytheywor k.Ifs o,user
sma ya cti
vel
yr es
istthe
int
roducti
ono ft
hesyst
emintoth
eorganizat
ion.Desi
gnst
hatinvol
vema nag
e r
s
havingtochangethei
rwayofwor ki
ngt ofi
tane wcomputersyst
ema r
eo f
ten
resent
ed.Thema nage
rsmayf ee
lthatthei
rs t
atusi
ntheorgani
zati
onisbeing
reducedbythesyst
em.
3. Organizati
onalchangesThesyst
emma ycha
ngethepoli
ti
calpowerst
ruct
urei
n
anorganizat
ion.Forexample
,ifanor
gani
zat
ionisde
pendentonacomp l
exsys
-
t
em, th
os ewhoc ont
rolacce
sstot
hats
yste
mh aveagre
atdealofpol
it
ica
lpower.
Soc
iote
chni
c a
lsys
temshavet
hreech
arac
ter
ist
ic
sth
ata
repa
rti
cul
arl
yimpor
tant
wh
e ncons
ider
ingse
curi
tyandde
penda
bil
it
y:
1. Theyha veemergentproper
ti
esthata r
epr operti
esoft hesyste
ma sawhol e,
ra
therthanassoc
iat
edwi t
hindi
vidualpa r
tsofthes yst
em.Eme r
gentpr
o pert
ies
dependonb oththesyste
mc ompone ntsandt here l
ati
onshipsbetweenthem.
Giventhiscomplex
ity
,theemergentpropert
iesc anonlybee val
uatedoncethe
syst
emh a
sbeena ss
emb l
ed.Securi
tya ndde pendabil
it
ya reeme r
gents y
stem
proper
tie
s.
2. Theyareoftennon det
erminist
ic. Thi sme an
sthatwhenprese
n t
edwithaspe ci
fic
input
,theyma yno talwayspr od uc ethesameout put
.Thes yst
em’sbeha vior
dependsont hehuma nope r
atorsa ndp eopledonotalwaysr e
actinthes ame
wa y
.Further
mor e,useoft hesy st
e m ma yc r
eatenewrel
ati
onshipsbet
we enthe
syst
emc ompone ntsandhe ncec ha ngei t
seme r
gentbeha
vior
.Sys t
emfaultsan d
fai
lur
esma yt her
eforebet rans
ient ,a ndpeoplema ydi
sagreeaboutwhetheror
notafai
lureha sactua
llyoc c
urred.
3. Thee xtenttowhi chthesys
tems upport
so rgani
zati
on alobject
ivesdoe snotjust
depen dont hesystemits
elf
.Italsodependsont hes t
ab i
li
tyo ftheseo bj
ect
ives,
therelat
ionships,andconfl
ict
sbetweeno rganizat
ionalobj e
cti
vesa ndhowpe o-
pleintheo rgani
z a
ti
oninter
prett
he s
eobjectives
.Ne wma nageme ntma yrei
nter-
prettheo r
ga ni
zati
onalobje
cti
v e
sthatasy stem wasde si
g nedtos upports
ot hat
a‘succ e
ssful’syst
emma ythenb eseenasa‘ f
ail
ure’.
Soci
ote
chni
calconsider
ati
onsar
eo ft
encri
ti
calindet
ermin
ingwhethe
rornota
s
yste
mh assuc
cessf
ullyme ti
tsobj
ect
ives
.Unfor
tunat
ely
,tak
ingthe
seint
oaccount
i
sverydi
ffi
cul
tforengine
erswhohavelit
tl
eexpe
rienc
eofsoci
alorcul
tur
als
tudi
es.
10.
1 ■ Compl
exs
yst
ems 269
Pr
oper
ty Des
cri
pti
on
Vol
ume T
hevol
umeofas y
stem (
thet
otalspac
eoccupi
ed)var
iesdependi
ngonhow t
he
c
omponentas
sembli
esarear
rangedandc
onnected.
Rel
iabi
li
ty Sys
tem r
eli
abi
li
tydependsoncomponentrel
i
abi
li
tybutunex
pect
edint
erac
tionsc
anc
aus
e
new t
ypesoff
ail
uresandther
efor
eaf
fectt
herel
i
abil
it
yofthesy
stem.
Sec
uri
ty Thesecur
it
yofthes ys
tem (i
tsabili
tyt
oresi
sta
ttac
k)i
sac omplexproper
tyt
hatcannotbe
easi
lymeasur
ed.Attacksmaybedev i
sedt
hatwerenotanti
ci
patedbythesy
stem desi
gner
s
ands omaydefeatbuil
t-i
nsafeguards
.
Repai
rabi
li
ty Thispropert
yrefl
ectshow easyiti
stofixapr
oblem wit
ht hesys
tem oncei
thasbeen
dis
c ov
ered.Itdependsonbei ngabletodi
agnosetheproblem,acc
essthecomponent
sthat
arefault
y,andmodi f
yorreplacethesecomponent
s .
Us
abi
li
ty T
hispr
oper
tyr
efl
ectshow eas
yitist
ousethesy
stem.Itdependsont
het
echni
cals
yst
em
c
omponent
s,i
tsoperat
ors
,anditsoper
ati
ngenv
ironment.
Tohe l
pun derst
andtheeff
ect
sofs ystemso norgani
za t
ions,var
iousmeth
odologie
s
Fi
gure10.2
Examplesof havebeende vel
oped,s
uchasMumf or
d’ssociot
echnic
s( 1989)andCheckl
and’sSoft
emergentpr
oper
ti
es Syst
emsMe thodol
ogy(1981;Che c
k l
anda ndScholes,1990).Thereha
vea l
sobeen
soc
iologicalst
udiesoftheeffec
tsofc ompu te
r-bas
eds ystemsonwor k(Ackroyd
etal
.,1992;An der
sonetal
.,1989;Suchma n,1987).
1
0.1
.1 Emer
gents
yst
empr
oper
ti
es
Thec ompl e
xr el
ationsh
ipsbetweenthec ompone nt
sinas ystem me a
nt hatasyste
m
i
smor ethansimp lythesum ofit
sp art
s.I thaspr o
perti
estha tarepr operti
esofthe
systema sawho le.These‘emergentprope r
ties’(Chec
kland,1981 )cannotb eatt
ri
b-
utedtoa nys p
e ci
ficpartofthesystem.Ra t
h e
r,theyonlye me r
geo ncet hesyste
m
compo nentshavebe eninte
grat
ed.Someoft heseproper
ti
e s,sucha swe i
ght,canbe
derivedd i
rect
lyfrom thec omparabl
epr ope rt
iesofsubsystems .Mor eoften,how-
ever,theyresultfrom complexsubsyst
e mi nte r
rel
ati
onships.Thes ystem proper
ty
cannotbec alcula
te ddir
ectl
yfrom thep rope r
tiesoftheindividua lsystemc ompo-
nents.Exampleso fsomee mergentprop
e rtie
sa reshowninFi g ure10.2.
Therearetwot ypesofeme r
gentproperties:
1
. Funct
ionalemer
gentpropert
ieswhenthepurposeofasyst
em onl
ye merge
s
af
terit
sc o
mponent
sarei n
tegrat
ed.Forexampl
e,abic
yclehast
hefunct
ional
pr
opert
yo fbei
ngatransport
ati
ondeviceoncei
thasbeenass
emble
df r
om it
s
co
mp onents
.
2
. Non-f
unct
ionalemer
ge ntproper
ti
es,wh i
chrelat
etotheb ehaviorofthesyst
em
i
nitsoper
ati
onalen
vironme nt.
Re l
iabi
li
ty,per
for
manc e
,sa f
ety,andsecuri
tyare
exa
mplesofemergent
pr opert
ies
.The s
earecri
ti
calf
orc omput er
-base
ds ys
tems,
asf
ail
uretoachi
eveami nimum definedleve
linthe
sepr oper
tiesusuall
yma kes
270 Cha
pter10 ■ Soc
iot
echni
cal
sys
tems
Oper
ati
on
Fail
ure
Propagat
ion Sof
twar
e
Fai
lur
e
Consequenc
e
I
nit
ial
Fi
gure10.3Fai
l
ure F
ail
ure Har
dwar
e
pr
opagat
ion
thesyst
em unusa
ble
.Someu s
ersmaynotneedsomeofthesys
temfunc
ti
ons
,
sothes ys
tem maybeaccepta
blewit
houtthem.However,asys
temthati
s
unre
lia
bleortoosl
owisl
ike
lytoberej
ect
edbyalli
tsus
ers
.
1. Hardwar
ereli
abi
li
tyWhatistheprobabil
it
yofhardwar
ecomp
one
ntsf
ail
ing
an
dh owlon
gdoesitt
aket
orepairafai
ledcompone
nt?
2. Sof
twarerel
iabi
li
tyHowl ike
lyi sitt
hatas of
twar
ecomponentwillpr
oducean
inc
orr
ectout
put?Soft
wa refai
lureisdis
tinctf
romh a
rdwaref
ail
ureinthats
oft
-
waredoesnotwe arout.Failuresareofte
nt r
ansi
ent.Thesys
temc arr
ieson
worki
ngafte
ra ni
ncorr
ectresulthasbeenproduce
d.
3. Operat
orreli
abil
it
yHowlikelyisitt
hatt
heopera
torofasyst
em wi
llma
kean
er
rorandprovi
dea ni
nco
rrectinput
?Howl i
kel
yisittha
ttheso
ftwa
rewi
llf
ail
t
ode t
ectt
hiserr
orandpr
opagatethemist
ake
?
1
0.1
.2 Non-
det
ermi
nis
m
Ade t
e r
mi nist
ics ystemi son et hatisc ompl etelypre dic
table.Ifwei gnor et i
mi ng
i
ssue s
,s oftwaresys temst hatr uno nc ompl etelyr el
iablehardwa rea ndt hata rep r
e-
sentedwi t
has eque nceofi nput swi lla l
wa ysp rodu cethesames eque nceo fo utputs
.
Ofc ourse,t her
ei sn os ucht hin ga sc ompl etelyr el
iab l
eha r
dwa re,b utha rdwa reis
usuall
yr eliabl
ee no ught othinkofha rdwa resys temsa sdeterministi
c .
People,ont heot herha nd,a ren onde te
r mi n
i st
ic.Wh e
npr es
e nt
e dwi the xactlythe
samei npu t(sayar eque s
ttoc ompl eteat a sk),theirre s
ponseswi llde pen dont hei
r
emot i
ona la ndph ys ic
a lstat
e ,thep ersonma kingt her e
que s
t,ot herpe opl eint he
environme nt,andwha teverels et heya redoi ng. Some timestheywi l
lb eha ppyt odo
t
hewor ka nd,atot hertime s,the ywi llrefuse.
Sociotechnicals yst
e msa r
enon -determi nis
t i
cpa rtl
ybe causethe yinc ludepe ople
andpa rtl
ybe c
ausec hangestot heha rdwa re,sof tware,andda taint heses ystemsa re
sofrequen t.Thein tera
c t
ionsbe t
we ent hesec ha ngesa r
ec omple xands ot hebe havior
272 Cha
pter10 ■ Soc
iot
echni
cal
sys
tems
1
0.1
.3 Suc
ces
scr
it
eri
a
Ge nerally,c ompl exso ciotec hnic alsy st
e msa rede ve lope dt otacklewha tares ome-
timesc a l
led‘ wi ckedp r oblems ’( Ri tt
ela n dWe bb e r,1 973).A wi c kedp roble mi sa
problemt hati ss oc ompl exa ndwhi chi nvo lvess oma n yr elat
ede nt i
tiest hatthe r
eis
nod e f
initi
vepr ob lems pe cification.Di ffer ents t
ak ehol derss eethepr o ble mindi f
fer
-
entwa ysa n dnoon eh a saf ullunde rst
a ndi ngoft hepr oblema sawhol e.Thet r
ue
na t
ureoft hepr ob l
em ma yonl ye me rgea sas olut i
oni sde velop ed.Ane xtreme
examp leo fawi cke dpr ob lemi se a rt
hqu akepl ann ing .Noo nec ana cc ura te
lypr edic
t
wh erethee pic enterofa ne a r
thqu a kewi l
lbe ,wha tt imei twi llocc ur,orwha te f
fect
itwillha veont h el oc
a le nvironme nt. I
ti simpos siblet os pec i
fyind e
ta ilho wt ode al
wi t
hama jore arthq uake .
Thisma ke sitdi ff
ic ulttode finet hes uc cessc riteriaf oras ys t
e m.Ho w doyou
decidei fane ws ystemc ontr i
but es, aspla nned, tot hebu sinessgoa lso ft hec ompa ny
thatp aidf ort hes yst
em?Thej ud gme n to fs ucces si sn otus uall
yma d ea gain s
tthe
originalr eas onsf orpr oc uringa ndde ve lopi ngt hes ystem.Ra the r
,i ti sb asedon
wh ethero rnott hes ystemi se f
fec t
iv eatt het imei ti sde ploye d.Ast heb us i
nes senvi
-
ronme n tcanc ha ngev eryqu ickly ,theb usine ssgo alsma yha vecha nge ds ignificantl
y
du r
ingt hede velopme ntoft hes yste m.
Thes i
tua ti
o ni sevenmor ec omp lexwhe nt herea remul tipl
ec onf l
ictin ggoa lsthat
areinte rpret eddi fferent l
ybydi f
f erents take holde rs.Fori nstanc e,t hes ys tem on
wh ichtheMHC- PMS( discu ssedi nCha pt er1)i sba s edwa sdesigne dt os uppo rttwo
disti
nctb us inessgoa l
s :
1. I
mpr
ovet
hequa
li
tyofc
aref
ors
uff
ere
rsf
romme
nta
lil
lne
ss.
2. I
ncre
aseinc
omebypr
ovi
dingde
tai
le
dre
por
tsofc
arepr
ovi
deda
ndt
hec
ost
sof
t
hatcar
e.
Unfor
tunate
ly,t
he s
ep r
ovedtobeconf l
ict
inggoa l
sbecausethei nf
orma t
ion
r
equi
redtosati
sfyt
her eport
inggoa
lme anttha
td oc
torsandnurseshadtoprovide
a
ddit
iona
linformat
ion,ov e
randabovethehe a
lthrecor
dsthatarenormall
yma i
n-
t
ai
ned.Thisr
educedtheq ual
it
yofcaref
orpa t
ie
n t
sasitmeanttha
tc l
ini
calst
affhad
10.
2 ■ Sy
stemsengi
nee
ring 273
l
esstimet ot alkwi ththem.Fr om adoc t
or ’
spe rs
pe c
ti
ve,t hissys t
em wa snotan
i
mpro veme ntont hep r
e v
iousma nualsystem;fromama n
age r’
spe rspect
ive
, i
twas.
Thena tureofs e
curi
tya nddependa b
ili
tya t
tri
butessometime sma k e
sitevenmore
di
ff
iculttode cideifas yst
emi ssuccessful
.Thei ntent
ionofane ws ystemma ybeto
i
mpro vesec uri
tybyr epl
acinga nexist
ings yst
em wi t
hamo resecureda t
ae n
vir
on-
ment.Say,a fterinstal
lati
on,thesystemi sa tt
acked,as ecuritybre ac
hoc cur
s,and
so
med at
ai sc orrupte
d.Doe sthisme anthatthes yste
mi saf ailu
re ?Wec annotte
ll
,
bec
ausewed on’tknowt hee x
tentofthelossesthatwouldha veoc curredwit
htheold
sy
stem,g i
v enthes amea tt
a cks
.
1
0.2 Syst
emsengi
neer
ing
Syste
mse ng i
ne er
inge ncompa ss
e sallofthea c
ti
vi t
iesinvolv
e dinprocuri
ng,spec i
-
fyi
ng,de signing,impl eme nti
ng,v al
idati
ng,deploying,o per
a ti
ng,andma i
nta
ini ng
soci
otechnic alsyst
ems .Sy st
emse n
gineersareno tj
us tconcernedwithsof
twareb ut
als
owi thha rdwarea ndt hesystem’si nt
e r
acti
onswi thus er
sa nditsenvir
onme nt.
Theymus tthi n
ka boutthes ervi
c esthatthesystem pr o
vides,theconst
rai
ntsun der
whichthes ystem mus tbeb uil
ta ndope r
a t
ed,andt hewa ysinwhi chthesyst
e mi s
usedtofulfillit
spu r
pos eo rpurposes.
Th er
ea ret hreeoverlappingstages(Figure10.4)int heli
fet
imeo flar
geandc om-
ple
xs ociotechnicalsystems :
1
. Procurementorac quisi
ti
onDur ingthisst
age,thepur poseofasyst
emi s
deci
ded;hi
gh-le
v e
ls ys
temrequir
eme nt
sarees
tabl
ished;deci
si
onsar
emadeon
howf u
ncti
onal
itywillbedis
tri
bute
da cr
osshar
dware,soft
wa r
e,an
dpeopl
e;a
nd
thecomponent
sthatwillmakeu pthesyst
emarepurchase
d.
2
. De ve
lopme ntDur i
ng thiss t
age,thes yste
mi sde vel
oped.De ve
l opment
proces
sesinc l
udealloftheacti
vit
ie
si nvol
vedinsyste
m devel
opments uchas
requi
reme ntsdefi
nit
ion,syste
m design,hardwar
ea ndsof
twareengineeri
ng,
syst
emi nt
e gr
ati
on,andtest
ing.Opera
tionalpr
oces
sesaredef
inedan
dthet rai
n-
ingcourse
sf orsys
temu ser
sa r
edesi
gne d.
3
. Operati
onAtt h
iss ta
ge ,t
hesyst
emisdeployed,usersa r
et r
ain
e d,andthesys
-
t
emi sbroughti
ntous e.Thepla
nnedopera
tionalprocessesusuallythenhavet
o
ch
anget oref
lecttherealworki
ngenvi
ronme ntwhe rethesystemi sused.Ove
r
t
ime,thesyst
eme v ol
vesasnewrequi
rementsareidenti
fie
d. Eventuall
y,t
hesys
-
t
em decli
nesinv a
luea nditi
sdecommiss
ioneda ndreplaced.
Thes
es t
agesa
renotindependent.
On cethesyste
mi soper
ati
ona
l,newequi
pme nt
a
nds of
twaremayha vetobepr ocuredtor e
placeobsol
etesys
temc o
mponents,to
p
rovi
den ewfunc
tio
na l
it
y,ortocopewi thincr
easeddemand.Simi
lar
ly,r
eque
stsfor
c
hangesduri
ngoperati
onrequir
efurthersyst
em devel
opment.
274 Cha
pter10 ■ Soc
iot
echni
cal
sys
tems
Pr
ocur
ement
Equipmentand
s
oft
wareupdates
Dev
elopment
Sys
tem
Depl
oyment
evol
uti
on
Fi
gure10.
4 Stagesof
Oper
ati
on
sy
stemsengi
neering
1. Differentdi sci
pli
ne s uset h es ame wor ds t
o me a
n di f
fere
ntt hi
ngs.
Mi sundersta
ndi
ngsa reco mmoni ndiscu
s s
ionsbet
we enengineer
sfrom di
ff
e r
-
entb a
c kground
s.Ifthesea r
en otdis
cover
eda ndres
olvedduringsyst
em devel
-
opme nt,theycanlea
dt oe r
rorsindeli
ver
eds yst
ems.Forexamp l
e,anel
ectr
onic
engineerwh oma ykno wal it
tl
ebitaboutC#pr ogr
ammi ngma ynotunders
tand
thatame t
hodinJavaisc ompa r
abletoafuncti
oninC.
10.
3 ■ Sy
ste
m pr
ocur
ement 275
Electr
ical Mechani
cal
Ar
chi
tec
tur
e
Engineering Engi
neer
ing
Ci
vil Syst
ems Sof
twar
e
Engi
neeri
ng Engi
neer
ing Engi
neer
ing
Fi
gur e10.5
Professi
onaldis
cipl
i
nes El
ect
roni
c Us
erInt
erf
ace
i
nv olv
edi nsys
tems Er
gonomi
cs
Engi
neeri
ng Desi
gn
engineeri
ng
2
. Eachdisci
pli
nema kesassumptionsaboutwha tcanorcan
’tbedonebyot he
r
di
sci
plines
.Th e
sea r
eo f
tenba se
dona ninadequat
eunder
s t
andi
ngofwha ti
s
ac
tuall
ypossi
ble.Forexampl e
,auseri
nterfa
c edes
igne
rma ypropos
eagraphi
-
ca
lUIf oranembe ddedsys t
emthatre
qu i
resagr e
atdealofproc
ess
inga
nds o
ove
rloadst
hep r
ocessori
nt hesys
tem.
3
. Dis
cipl
inestr
ytoprote
ctthei
rprofe
ssi
onalboundarie
sa n
dma yar
gu eforcer-
t
aindesigndeci
si
onsbe c
ausethesedeci
sionswillcallf
ortheirprofe
ssional
ex
perti
se.Ther
efo
re,asoft
wareengine
erma ya r
gueforas of
tware-
basedd oor
l
ockingsyst
eminab ui
ldi
ng,alt
houghame chani
cal,key-
basedsyst
em ma ybe
morerel
iabl
e.
1
0.3 Syst
em pr
ocur
ement
Theini
ti
alphaseofs yst
emse ngine
eri
ngi ssyste
m procure
me n
t(some t
imesc al
le
d
sys
temacqui
sit
ion).Atthiss t
ag e
,deci
sionsarema deonthes copeofas yst
emt hat
i
stobepurcha
sed,systemb udge t
sandti
me scale
s,andthehigh-l
evelsyst
emre qui
re-
ments
.Usin
gthisinformati
o n,furt
herde
c i
sionsareth
enma deo nwhethertoprocure
asyst
em,thetypeo fsyst
emr equir
ed,andt h
es uppli
erors uppl
ier
so fthesyste
m.
Thedri
ver
sforthesede c
isi
on sa r
e:
1
. Thestateofotherorgani
zat
iona
lsys
temsIft
h eorgani
zat
ionhasami xtur
eof
sys
temst ha
tcannoteasi
lycommuni
cateort
hatareexpens
ivetomaint
ain,t
hen
pro
curingarepla
c e
me nts
yst
e mmayleadt
osigni
fica
ntbusin
essbe
ne f
it
s.
2
. Thene edtoc omplywit
hexter
nalre
gulat
ionsIncr
e a
singl
y,bus
iness
esareregu-
la
teda ndha vetodemon s
tra
tecompli
ancewi t
he xte
rnal
lydefi
nedr e
gula
tions
(e.
g.,Sarbanes-Oxle
ya cc
ounti
ngregula
tionsintheUni t
edState
s).Thi
sma y
re
quirether epl
acementofnoncompli
antsyst
emsort heprovi
sionofnews ys-
te
mss pecif
ic a
ll
ytomoni t
orcompli
ance.
3
. Ex
tern
alcompet
it
ionIfabus
ine
ssneed
stoc
ompetemor
eef
fec
ti
vel
yormaint
ain
acompet
it
ivep
osit
ion,i
nves
tmenti
nnewsys
temsth
ati
mpr
oveth
eeff
ici
encyof
276 Cha
pter10 ■ Soc
iot
echni
cal
sys
tems
Off-
the-
Shelf
Sy
stem Avai
l
able Adapt As
ses
sEx i
st
ing ChooseSystem
Requi
rement
s Sy
stems Suppl
ier
Defi
neBusines
s Sur
veyMar
ketfor Negot
iat
e
Requi
rements Exi
sti
ngSy
stems Contr
act
Defi
ne I
ssueReques
t Select
Cus
tom Sys
tem Requi
rement
s toTender Tender
Requi
red
b
usi
nesspr
oce
sse
sma ybea
dvi
sabl
e.Formi
li
tar
ysyst
ems,t
henee
dtoimpr
ove
Fi
gure10.
6 Syst
em
pr
ocurementpr
ocess
es c
apabi
li
tyi
nthefac
eofnewth
reat
sisanimport
antr
eas
onforproc
uri
ngnew
s
yst
ems.
4. Busi
nes
sreorgani
zati
onBusiness
esandotherorga
nizati
onsfre
quent
lyre
str
uc-
t
urewi t
hthei nt
entionofimpr ovi
nge f
fi
c i
encya nd/orcust
ome rs
ervi
ce.
Reor
gani
zati
onsleadtocha
ng e
sinbusine
ssproces
sesthatre
quiren
ewsyste
ms
su
pport
.
5. Avai
labl
ebudgetThebudge
tavai
la
blei
sanob
viou
sfa
ctori
nde
ter
mini
ngt
he
sc
opeofnews y
stemst
hatcanbepr
ocur
ed.
Ina ddi t
ion,ne w gove rnme nts yste msa reof tenpr ocuredtor eflectpoliti
c a
l
change sa ndpol it
icalpolicies.Fo re xamp l
e,pol i
tici
a nsma yde ci
detob uyne wsur-
vei
lla nc es ystems ,whi c
ht he yc laim wi llc ountert erroris
m.Buy ings uchs yst
ems
showsv otersthatt heyaret akinga ction.Ho we ver,suc hs yst
emsa r
eof tenprocured
witho ut ac ost-
be nefit
a n
a l
ys is
, whe rethebe nefit
stha tresultfr
omd if
ferentspending
optionsa reco mp ared.
La rge ,compl exs yst
emsus uallyc onsisto fami x t
ur eofof f
-the-
s h
elfa ndspecia
lly
buil
tc ompone nts.Oner easonwhymor ea ndmo resof t
wa reisincludedi nsyste
msi s
tha
ti ta llowsmor eu seofe xist
ingh ardwa rec omp on ents,wi t
hthes oft
wa reacti
nga s
‘gl
ue ’t oma k ethe sehardwa r
ec ompo ne ntswor kt oge thereffect
ively.Thene edt o
deve l
opt his‘glue ware’isoner easonwhyt hes avingsf rom usingof f
-t
he -shel
fcom-
pone ntsa r
es ome timesno ta sgreata sa ntici
p ated.
Fi gur e10. 6s howsas i
mpl i
fiedmo deloft heproc ureme ntprocessfo rbothCOTS
systemc ompo ne ntsands ys t
emc omp one ntst hatha vet obes pe c
iall
yd es
igneda nd
deve l
ope d.Impo rtantpointsa boutt hepr o c
e sssho wni nt hi
sd iagrama re:
1. Off-t
he-shelfcomponentsdono tusual
lyma t
chrequi
rementsexactly,unle
ssthe
requir
e mentshavebe enwr it
tenwi t
ht he
sec omponentsinmi nd .Therefor
e,
choosingas yste
m me ansthatyouha vetofindthecl
osestma t
c hbe tweenthe
systemr equir
eme nt
sa ndthefa ci
lit
iesof
feredbyo f
f-t
he-shel
fs y s
tems.You
ma ythenh avetomo difytherequire
me nt
s.Thiscanhavekn oc
k- one ff
ect
son
othersubsyste
ms .
10.
3 ■ Sy
ste
m pr
ocur
ement 277
2
. Whe nas yst
emi st
obebui
lts
peci
all
y,t
hespeci
fi
cat
ionofre
quir
ement
sispar
t
ofth
ec on t
ractf
ort
hesy
ste
m bei
ngacqui
red.I
tist
heref
oreale
gala
swe l
lasa
te
chnic
a ldocument
.
3
. Afte
rac ontr
actorhasbeenselec
ted,tobuildasyste
m,thereisacon
tra
c tnego-
ti
at
ionperiodwhe reyouma yha vetone got
ia
tefurt
herchangest
other equir
e-
mentsandd is
cu s
sissuessuchasth ecostofchangestothesyst
em.Simi l
arl
y,
onceaCOTSs ystemh a
sbe e
ns ele
cted,youma ynegoti
atewitht
hesupplieron
cost
s,l
ice
n cecondit
ions,pos
sibl
ec hangestothesyst
em,e t
c.
Th es o ft
wa rea ndha rdwa rei ns oc iote chni ca lsys temsa reus ua ll
yd e velope dby
adi ffere ntor ga n i
za tion( thes uppl ie r
)f r
om t heor ga niz at i
ont ha tispr oc uringt he
overa llsoc iotec hni cals ys t
e m.Ther ea sonf o rthi sist ha tt hec ustome r
’sb us ine ssi s
r
a relys oftwa rede ve lopme nts oi tse mpl oye esdonoth a vethes ki ll
sne e de dt o
deve lopt hes ys temst h ems elve s.I nf ac t
,v er yf e wc ompa niesha vet hec a
p a bilit
ie s
t
ode s i
gn,ma nuf ac ture , andt esta llthec ompon entsofal arge,c ompl exs oc i otech-
nicals ys tem.
Cons eque ntly ,thes ys tems upplier,wh oi su sua l
lyc alledt heprinc ipa lco nt ractor,
oftenc ontrac t
soutt hede ve lo pme nto fd i
ffe re nts ubs yste mst oanu mb erofs ubc on-
t
ractor s.Forl arges y ste ms ,s uc ha sa i
rt ra fficc o nt
ro ls ys t
e ms ,agr oupo fs up pli
e rs
ma yf or mac ons ortiumt obi df ort hec ontra c t
. Thec ons ortiu ms hou ldi n cl
udea llof
t
hec a pabi l
itiesr equi re df ort h i
st ypeofs y stem.Thi sinc ludesc ompu t
e rha rdwa re
suppl iers,s of t
wa rede ve lope rs,pe riphe r als u pplie rs,a nds uppl ier sofs pe cialist
equipme nts uc ha sra da rs ys tems .
Th epr ocure rde a l
swi tht hec ontrac torr a the rt hant hes ub contractor ss oth a tthe re
i
sas in glepr oc ur er/su ppl ieri nterface .Thes ub c ontra ct
o rsde signa ndb ui l
dpa rt
sof
t
hes ys t
emt oas pecific ationt hati spr od uc edbyt hep r
inc ipa lcon tractor.Onc ec o m-
pleted,t hepr inc ipalc ont rac tori ntegr atest he sed ifferentc ompone ntsa ndde li
ve rs
t
he mt ot hec us tome r
.De pe ndi ngont hec ont ra ct,thepr o cur erma ya llowt h epr i
nc i-
palc on tractoraf reec ho iceofs ubc on t
r actor sorma yr equi r ethepr inc ipalc ont rac t
or
t
oc hoos es ubc o ntrac torsf r
o ma na pp r
ov edl ist.
De c i
sionsa ndc hoi ce sma dedu rings ys tem pr oc u r
e me ntha veapr ofoun de f
fe ct
ont hes ecuritya ndd epe nda bilityofas ys tem.Fore xa mpl e ,ifade cisioni sma det o
procur ea nof f-th e-she lfs ys tem,t hent heor ga niz a
tionh ast oa cce ptt ha tthe yh av e
veryl imi tedi nflue nc eo ve rt hes ecuritya ndd epe nd abilityr equir
e me nt soft hiss ys -
t
e m. Th e sela r
ge lyde p en donde c i
sion sma debys ystemv en dors.Ina ddi tion, o ff-
th e-
shelfs ystemsma yh av ek no wns e curitywe a kn e ssesorr equi rec omp l
exc on f
igu r at
io n.
Conf igu ratione rrors,whe ree ntrypo intst ot hes ystema ren otpro pe rlys ecur e d,a re
ama jors our ceofs e cur ityp robl e ms .
Ont heot herh and,ade cis iont opr oc ureac ustom s y ste m me a nst ha tsigni f i
ca nt
effortmus tbede vot edt ounde rstandi nga ndde finings e cur i
tya n dde pe nda bility
r
e quire me nts. Ifac omp a nyha slimi t
e de x pe rienc eint hisa rea,thisisqui teadi ffi
c ult
t
hingt odo.I fther equi r edl e velofde pe nda bilitya swe lla sa ccepta bles ys t
e mp er-
f
or ma n cei stobea c hie ve d,the nthed e velopme ntt imema yha vetobee xt end e da nd
t
hebudg e tinc r
e ase d.
278 Cha
pter10 ■ Soc
iot
echni
cal
sys
tems
Requi
rement
s Sy
stem
Devel
opment Depl
oy ment
Sy
stem Sys
tem
Desi
gn Tes
ting
Subsys
tem Syst
em
Fi
gure10.
7 Sys
tems Engi
neeri
ng I
ntegr
ati
on
devel
opment
1
0.4 Syst
em devel
opment
Thegoa lso fthes ystem de ve lop me ntpr oc essa ret ode ve lopora cqui rea lloft he
compon en t
sofas ystema ndt h ent oi ntegrat ethes ec ompon e ntst oc r
e atethef i
n al
system.Ther equir eme nt sa ret hebr i
dgebe twe ent hep roc ure me nta ndt hede velop-
me ntp roce sses.Dur ingpr oc ure me nt,b usine ssandhi gh- l
e ve lfunc tionala ndn on-
functiona ls ystemr equi r
e me nt sa rede fine d.Youc ant hinkoft hisast hes tartof
developme n t
,h enc etheo ve rlappi ngpr oc essess howni nFi gur e1 0.4.Onc ec ontr act
s
forthes ys temc ompo ne ntsha vebe ena gree d,mo rede tailedr equ ireme ntse ngine er-
ingth ent akespl ac e.
Figure1 0.7i samo de loft h es ystemsd e velopme ntpr oc e ss.Thi ss ystemse n gi-
neeringp r
oc esswa sa ni mp ortanti nfluenc eont he‘ wa terfa ll’mode loft h es oft
wa r
e
processt hatIdi scu ssedi nCha pt er2. Althoug hitisno wa cce pte dtha tt
he‘ wa t
erfa l
l’
mode lisn otus ua llya ppr opr iatef ors oftwa rede ve lopme nt,mos tsys t
e msde velop -
me ntpro ces sesa r
epl an- drivenpr ocess estha tstil
lf ollowt hismo del.
Plan-dr i
v enpr oc esse sa reus e di ns ystemse ngine er
ingbe ca used iff
e rentpa rtsof
thesys t
e ma reb eingde v elope da tt hes amet ime .Fo rsys temst hatin cl
udeha r
dwa r
e
andot he re quipme nt,c han ge sdur i
ngde velo pme ntc anbeve rye xpe nsi
veor ,some -
times,p racticallyi mpos sible.I ti se s
se ntialth ere
for e,t hatt h es ystemr equireme nts
aref ullyund erstoodbe foreha rdwa rede ve lopme ntorbui ldingwor kbe gi ns.
Re workingt hes ystem de sig nt os olveh ardwa repr ob l
emsi sr a relypos sible.Fo rt hi
s
reason,mo rea ndmor es ystemf unctiona l
ityi sb e inga s si
gne dt othes ys tems oft-
wa re.Thi sa l
lowss omec h ang est ob ema dedur i
ngs ystem de ve lopme n
t,inr e s
p onse
tone ws ys temr e quireme n t
st ha tinevitablya ri
se.
Oneoft hemos tc onf us inga spec t
sofs yste mse nginee ringi st hatcompa niesus e
diff
erentt ermi no l
o gyf ore achs tageoft hep roc ess. Thepr oc esss tructurea lsov aries.
So metime s,r equ i
reme ntse ngi ne eringi sp artoft hed evelop me ntpr o cessa nds o me -
t
i mesitisas epa ratea ctivity.Ho we ver,therea r
ee sse nti
a l
lys ixf unda me ntalac t
ivitie
s
ins yst
emsde velopme nt :
1. Requi
rementsdeve
lopme ntThehigh-
leve
landbus
inessrequ
ire
mentsi
dent
if
ied
duri
ng the proc
ureme ntpr oc
essha ve t
o be de
ve l
opedin more det
ail
.
Requir
ementsmayha vetobea l
locat
edtohar
dware,
softwar
e,orp
roce
ssesand
pri
ori
ti
zedforimplementati
on.
10.
4 ■ Sy
stemdev
elopment 279
2
. Syst
em designThispr
o c
essove
rla
pssigni
fic
antl
ywi t
htherequir
eme nt
sdevel-
opmentpr oce
ss.I
tinvol
vesest
abl
ishi
ngtheoveral
larchi
tec
tur
eoft hesystem,
ide
nti
fyingthedif
fer
entsys
temcomponentsandunder
sta
ndingthere
la t
ions
hips
bet
we e
nt hem.
3
. Subsys
temengi
neeringThisst
a gei
n vol
vesdevelopi
ngt h
esoftwarecomponent
s
ofthesyst
em;configuri
ngo f
f-the
- she
lfhardwa r
ea ndsoft
wa r
e,desi
gning,i
f
nec
e s
sary
,spec
ial
-pu r
posehardware;defi
ningtheo per
ati
onalproce
ssesf
orthe
sys
tem;andredes
igningesse
ntialbusine
ssprocesses
.
4
. Sy
ste
minte
gra
tionDuri
ngthi
sst
age
,thecompone
ntsar
eputtoget
hertocr
eat
e
anewsy
ste
m.Onl yt
hendothee
mergents
yst
emprope
rti
esbe
c omeappar
ent.
5
. Syste
mt est
ingThisisu s
uall
yane xtensi
ve,pro
lon
geda c
tiv
itywh ereprobl
ems
arediscov
e r
ed.Thes ubsyst
eme ngineer
ingandsyst
emi nt
egrati
onp hasesare
reente
redtor ep
a i
rtheseprobl
ems ,tunetheperf
ormanceoft hes yst
em,and
implementn e
wr equire
me nt
s.Systemt e
stin
gma yinvol
vebo t
ht esti
ngbythe
syste
m developerandaccept
ance/us
e rt
esti
ngbytheorgani
zati
o nthathaspro-
curedthesyst
em.
6
. Sys
temd epl
oyme ntThisi
sthepr oc
essofma kingt hesyst
ema va
ila
bletoit
s
us
ers,t
ransf
err
ingdatafr
ome xis
ti
ngsy s
tems,andes t
abl
is
hingcommunicat
ion
s
wit
hothersyst
emsi ntheen
vironment.Theprocessculmina
teswit
ha‘ gol
ive’
af
terwhichuser
ss t
artt
ousethesyst
emt osupportthei
rwork.
Althoug htheo ve rallpr oc essi spl andr iven,t hep roc essesofr equire mentsde ve l
-
opme n ta nds ystem de s i
gna rei ne xtri
c ablyl inke d.Ther equi reme ntsa ndtheh igh-
l
e velde signa rede velop edc onc ur rently.Co nstra intspo s edbye xi st
ings ystemsma y
l
imi td esignc hoi cesa ndt he sec ho icesma ybes pe cifi
e di nt her equir ements.You
ma yha v et odos omei ni t
ia lde signt os tructur ea n dor ga nizet her equireme ntse ngi-
neeringp rocess.Ast hede sig npr oc essc ontin ue s,y ouma yd i
s co verp roblemswi th
existi
n gr equireme nt
sa ndn ewr e qu i
reme ntsma ye me rge .Cons eque ntl
y,youc an
t
hinkoft heselinke dp roce sse sa sas piral,a ss ho wni nFi gure1 0.8 .
Th es piralreflectst her e ali
t yt ha treq uireme ntsa f
f ectde s i
gnde ci
sion sandvi ce
versa,a nds oitma kess ens et oi nte rleavet hes epr o cesses .Sta rt
in gi nthec enter,e ach
r
oun do fthes piralma ya ddde tailt ot her equ ireme ntsa ndt hede s i
gn.Somer oun ds
ma yf oc uso nr equi r
eme nts ,a nds o meonde sign.Some ti
me sne w kno wl e
dgec ol
-
l
e ct
eddu r
ingt here quireme ntsa ndd esignpr oc essme a nst ha tthepr oblems tateme nt
i
tselfha st obec ha nge d.
Fora lmos talls ystems ,t he rea rema nypos s iblede signst h a tme ett here qui r
e-
me nts.The sec ove rar a ng eofs olutionst ha tc omb i
neha rdwa re,s oftware ,a nd
huma no pe r
ations.Th es ol utiont ha tyouc hoos ef orf urthe rd eve lopme n tma ybet he
mos ta ppr opriat
et e chnic als o lutiont ha tme etst her equ ireme nts.Howe ver
,wi der
organiza ti
ona landpol iti
ca lc on side rationsma yi nflue ncet hec hoi ceo fs ol
ution.For
exampl e ,ago v e
rnme ntc lientma ypr efert ous ena t
iona lr athe rt hanf oreigns up pli
-
ersfori tssystem, e veni fna t
io na lpr oduc tsa rete chni callyi nf erior.Th eseinflue nces
usuallyt akee ff
ecti nt her ev i
e wa nda s sessme ntp ha s
eoft hes p i
ralmod elwhe re
280 Cha
pter10 ■ Soc
iot
echni
cal
sys
tems
Requir
ements
Domai
nandPr obl
em
El
ici
tat
ionand
Under
standi
ng
Analysi
s
St
art
Revi
ew and Ar
chit
ect
ural
Ass
essment Desi
gn
Fi
gure10.
8
Sy
stem Requi
rementsand
Requi
rement
sand
Desi
gnDoc umentat
ion
desi
gnspi
ral
designsa ndr e quireme ntsma ybea c cept edorr ejected.Thepr oc esse ndswhe na
reviewde cide stha tthere quireme ntsa ndhi gh- l
evelde signa res uf f
icientlyde tail
e d
forsub sys temst ob es pecifieda ndd esigne d.
Int hes ub systeme ngine eri
ngpha se ,theha rdwa rea nds of t
wa r ec ompo ne ntso f
thes ystema rei mp le
me nte d.Fors omet y pe sofs yst
em,s uc ha sspa cec r
aft,a llha rd-
wa rea nds oftwa r
ec ompo ne nt
sma ybede signeda ndb uiltd uringt hede velo pme nt
proce ss.Ho we v er,inmo stsystems ,somec omp onentsa rec omme rcialoff-the -shelf
(COTS)s ys tems .I ti
sus uallymu chc hea pe rtob uye xist
ingp roduc tsthant ode ve l
o p
specia l
-pu rpos ec ompon en t
s.
Sub sys temsa reu suallyd evelopedi np arallel.Wh enp rob lemst ha tcut acros ssub-
system bou nda riesa reenc ounte r
ed,as ystem mo dificati
onr e que stmus tbema de.
Whe res yste msi n volvee xtensiveha rdwa ree ngineering,ma k ingmodi fi
ca t
ionsa fter
ma nuf acturingha ss t
a r
tedi susua ll
yv erye xpe nsive.Of t
en‘ wo rk-a rounds ’tha t c
om-
pensa tef ort hepr oblem mus tbef ound.The se‘ work -ar
ound s’us ua ll
yi nvolv es oft-
wa rec ha nge sbe ca useoft hes oftware’si nh erentf l
exibili
ty .
Dur ings ys temsi ntegra t
ion,yout aket hei ndepen dent l
yde velope ds ubs ys t
e ms
andp utt hemt oge thertoma keu pac ompl etes yst
em.Thi sint egra ti
onc anbed one
usinga‘ big- bang’a pproa ch,whe rea llthes ubsystemsa rei ntegr ateda tth es a me
time.Howe ve r,fort echni calandma na ge rialreasons ,a ni nc reme ntalinte gr a
t i
on
proce sswh e r
es ubsystemsa reintegratedonea tati
mei st heb e sta pproac h:
1. I
tisus
ual
lyi
mpossi
bletosche
dulet
hede
vel
opme
ntoft
hes
ubs
yst
emss
otha
t
t
heyar
eal
lfi
nis
hedatthes
amet i
me.
2
.Incr
emen
talinte
grat
ionreduc
esthecostofer
rorl
ocat
ion.Ifman
ys ubsys
tems
a
resi
mul
tane
o usl
yinte
gra
ted,a
ne r
rort
hatar
ise
sdur
ingtest
ingmaybeinanyof
10.
5 ■ Sy
stemoper
ati
on 281
t
hes
esubsyst
ems.Wh enasi
nglesubsys
temisi
ntegr
atedwit
hanalr
eadywork-
i
ngsys
tem,err
orst
hatocc
urareproba
blyint
henewlyint
egr
ate
dsubs
yste
mo rin
t
hein
ter
acti
onsbet
we e
ntheexis
ti
n gs
ubsyst
emsandthenewsubs
yst
em.
1
0.5 Syst
em oper
ati
on
Opera
tion
alproce
ssesaret
hep roc
essest
hatar
einvol
vedi
nusingthesyst
emf o
rits
de
finedpurp
ose.Forexample,oper
ator
sofanairt
raf
fi
ccont
rolsyst
emf o
llo
ws pe-
ci
fi
cpr oc
esseswhena i
rcr
aftente
ra ndle
aveair
space
,whentheyha vetochang
e
282 Cha
pter10 ■ Soc
iot
echni
cal
sys
tems
1
0.5.
1 Humaner
ror
Isugge stedearli
eri nthec hapterthatnon-determinism wa sa nimp ortantissuein
socio
tech ni
c a
lsystemsa ndtha tonereas
onf orthisistha
t t
hepe opl
ei nthesystemd o
notalwa ysbehavei nthesamewa y
.Some t
ime stheyma kemi stake
si nusingthesys-
tema ndt hi
sha sthep ot
entialtoc a
usesyste
mf ai
lure.Fore xampl e,ano per
a t
orma y
for
ge ttor ecordtha tsomea ct
ionha sbeent ake ns ot
ha ta notherope rat
or( er
ro-
neously)r epea
tsthata ct
ion.Ift heacti
onist od ebitorcre ditaba nka ccount,sa
y,
the
nas ystemf ai
lureoccursa stheamou nti
nt hea ccountist henincorr
e ct
.
AsRe asondiscusses(2000)huma ne r
rorswi llalwaysoc cura ndtherea r
etwo
wayst ovi e
wt heprobl emofhuma nerror:
1. Th epersonapproach.Error
sa reconsideredtobetheresponsibi
li
tyoftheindi
-
vidualand‘ unsaf
eacts
’(s u
c ha sanopera t
orfai
li
ngtoe ngageas af
etybarr
ier
)
areac onsequenceofindividualcarel
essnessorreckl
essbeh a
v i
or.Peopl
ewh o
adoptthisapp r
oachbeli
evet hathumane rrorscanbereducedbyt hre
atsofdis
-
cipli
narya ct
ion,mores t
ringentprocedures,re
trai
nin
g,e t
c.The i
rv i
ewi stha
t
theerroristhefaul
toftheindividualr
e s
p onsi
blefo
rma kingthemi st
ake.
10.
5 ■ Sy
stemoper
ati
on 283
2
. Thesyste
msapp roach.Thebasicassumpt ionisthatpe opl
ea r
ef all
ibleandwi l
l
makemi sta
kes.Thee r
rorstha
tpeoplema kea reoft
enac onsequenceo fsys
tem
desi
gnde ci
sionsthatle
adt oerr
oneo uswa ysofwo rking,orofo r
ganizat
ional
fa
ctors
,whi chaffe
ctthesyste
m opera tor
s.Go ods ys
temss h
oul drecogniz
et he
possi
bil
it
yofhu ma nerr
orandincl
udeba r
rie r
sandsafeguardsthatdetecthuma n
er
rorsanda l
lowthesyst
emt oreco
verb ef
or efai
lur
eoc curs.Whe nafa i
lur
edoe s
occur
,theissueisnotfi
ndinganindividualt obla
meb uttound ers
tandh owa nd
whyt h
es yst
emd efence
sdidnottrapt heer r
or.
Ibeli
evet hatt
hes yst
emsa p
pr oachist herightonea ndt hatsys t
emse ngi
nee r
s
s
houldassumet hathuma nerrorswi lloccurdurings y
stem oper a
tion.The ref
ore,to
i
mprovethes ecur
it
ya nddependa bil
ityofas yst
e m,desi
gnersha vetothi nkaboutthe
d
efensesandba r
rie
rstohuma ne rrortha tshouldbei ncludedi nas ystem.The y
s
houldals
ot hinkaboutwhetherthe sebarr
iersshou l
dbebuil t
intoth et
e chnica
lcom-
p
onentsofthes yst
em.Ifnot,theyc ou l
dbepa r
to ft
hep rocesse
sa ndpr oc e
duresfor
u
singthesystemo rcouldbeo peratorguide l
inesthatar
er e
liantonhu ma nchecking
a
ndjudgme nt.
Examplesofde fe
nsesthatma yb ei nc
ludedi nas ys
tema re:
1
. Anairtra
ffi
cc ont
rolsyst
em mayinclu
dea naut
omat
edconf
licta
lerts
yste
m.
Whenac ont
roll
erinst
ruct
sanai
rcr
aftt
oc h
angeit
ssp
eedoral
ti
tude
,thesyst
em
ex
tra
polat
esitstr
ajec
toryt
oseei
fitcouldi
nter
sec
twit
hanyot
herair
craf
t.I
fso,
i
tsoundsanalarm.
2
. Thesames yst
em ma yhaveac l
ear
lydef
inedproce
duretorec
ordthec ontr
ol
ins
tr
uct
ionsthathavebeeni
ssue
d.Thes
eprocedur
eshel
pthecontr
oll
ercheckif
the
yhaveissuedtheins
tr
uct
ioncorr
ect
lyandma k
ethei
nformat
ionavai
lableto
oth
ersf
orche c
k i
ng.
3
. Airtr
affi
ccont
rolus
ual
lyi
nvol
vesate
amofc ont
rol
ler
swhoc onst
ant
lymonit
or
ea
c hother
’swor
k.Ther
efor
e,whenamist
akeismade,iti
sli
kelytha
titwi
llbe
de
tecte
da ndcor
rect
edbef
oreani
nci
dentocc
urs.
Inevitably ,a llbarri
ersha vewe aknessesofs omek i
nd.Re asonc al
lsthe se‘lat
ent
c
on di
tions’a st heyus ual
lyo nlyc ont
rib
utetos yste
mf ai
lurewhe nsomeo therprob-
l
emoc c urs.Fo re xample,inthea bovede f
enses,awe a
kne s
so fac onfl
ictalertsyst
em
i
sthatitma yl ea dtoma nyf alsealar
ms .Controll
ersmayt hereforeignorewa r
nings
f
romt hes ys tem. Awe a
kne ssofapr oceduralsyst
emma ybet hatunusu albute s
sen-
t
ialin
for ma tionc an’tbee asil
yr ecor
ded.Huma nch e
ckingma yfailwhe na llofthe
p
e opl
ei nvol ve da reunde rstre
ssa ndma kethes amemi s
take.
Latentc ondi tionsleadtos ystemf ai
lurewhe nthed e
f e
n s
e sbuilti
ntot hes yst
em
d
onott rapa na cti
vefail
ur ebyas yst
em ope rat
or.Thehuma ner r
orisat riggerfor
t
hef a
ilurebu ts houldnotbec onsider
edt ob ethesolecauseoft hefa i
lure.Re ason
e
xpl a
inst hi sus inghi swe l
l-known‘ Swis scheese’mode lofs ys tem f ai
lure
(
Figure1 0. 9) .
284 Cha
pter10 ■ Soc
iot
echni
cal
sys
tems
Act
iv
eFai
l
ure
(
HumanErr
or)
Fi
gure10.9
Reas
on’sSwissc
heese
modelofsyst
em f
ail
ure Sy
stem F
ail
ure Bar
ri
ers
I
nt hismod el,thede fensesbuiltintoas ystema recompa r
edt osli
c e
sofSwi s
s
cheese.Somet ype sofSwi ssc h
eese ,suchasEmme ntal,haveho le
sa ndsothea nal
-
ogyi stha tthela t
entc ondit
ionsa rec omp ara
bletot heh olesinch e
e s
es li
ces.The
posit
ionoft heseholesi snotstat
icb utchange sdepe
n dingo nthestat
eoft heov e
rall
sociot
ech nicalsy st
em. Ifeachslic
er e
presentsab a
rri
e r
,failure
sc anoccurwhe nthe
holeslineupa tthes a
met imea sahu ma noperati
onalerror.Ana ct
ivefail
ureo fsys
-
tem operationge tsthroughtheho lesa ndleadstoano verallsyst
emf ail
ure.
Norma lly,ofc ourse,theh ol
ess ho ul
dnotbea li
gne ds ooperati
onalfail
uresa r
e
tr
appe db yt hesys t
em.Tor e
du cethepr obabil
itytha
ts ystemf ai
lur
ewi llres
ultfrom
huma ne r
r or,designersshould:
1. De s
ignasyst
ems othat
dif
fer
enttypesofbar
rie
rsar
einc
lud
e d.
Thi
smeanst
hat
the‘hol
es’wil
lproba
blybeindif
fere
ntplace
sa n
dsothe
reisle
ssc
hanc
eofthe
holesli
ningu
pa ndfai
li
ngtotr
apa nerr
or.
2. Mini
mizethenumberofl
atentc
ondit
ionsinas ys
tem.Ef
fec
ti
vel
y,t
hisme
ans
r
educi
ngthenumberands
izeofsys
tem‘ hol
es’
.
Ofcours
e,t
hed esi
gno ft
hesyst
ema sawhol eshoul
da l
soa t
te
mp ttoavoi
dthe
a
cti
vefai
lur
esthatca
ntrig
gerasys
temfail
ure.
Th i
sma yinvol
vedesigni
ngtheope
r-
a
ti
onalproc
essesandthesyst
emtoe ns
urethatop e
rat
orsarenotoverwor
ked,di
s-
t
rac
ted,
orpres
e nt
edwithexce
ssi
veamountsofinformat
ion.
1
0.5.
2 Sy
stemev
olut
ion
La r
ge ,c ompl exs ystemsh a veave ryl ongl if
etime .Dur i
ngt heirlife,t heya re
change dt ocorrecterrorsi ntheo ri
ginalsystemr equi
reme ntsa ndt oimpl eme ntnew
requireme ntsthatha vee merged.Thes ystem’sc omput e
rsa rel ikel
yt ober eplaced
withne w,f as
terma c hines.Theor ga ni
zationthatu s
e sthes ys t
e m ma yre organize
it
selfa ndhe nceus et hes ystemi nadi f
ferentwa y.Thee xternale nvir
onme ntoft he
syst
e mma ychange ,forcingc hangestoth esyste
m. He ncee volution,whe ret hesys-
temc ha ngestoa ccommoda teenvir
onme ntalchange,isapr oce ssthatrunsa longside
norma ls ystem ope ra t
iona lprocesses.Sys t
eme voluti
oni n volvesre enteringthe
developme ntprocesst oma kec hangesande xtensi
onst othesy stem’sha r
d wa re,s
o ft
-
wa r
e,a ndope rati
ona lpr ocesses.
10.
5 ■ Sy
stemoper
ati
on 285
Legac
ysyst
ems
Legacysystemsar esoci
otechnicalcomput er-
baseds y
stemsthathav ebeendev elopedinthepas t
,oft
enus ing
olderorobs ol
et et
echnology.Theses y
stemsi ncl
udenotonl yhardwar eands of
twarebutalsolegacyprocesses
andpr ocedures—oldway sofdoingt hi
ngst hatar
edi f
fi
cultt
oc hangebec ausetheyrel
yonl egacysoft
ware.
Changest oonepar tofthesy s
tem inevit
ablyinvol
v echangestoot hercomponent s
.Legac
ys yst
emsar eoften
business
-crit
icalsy
stems.Theyar emaintainedbec aus
ei ti
stoor i
skytor eplacethem.
ht
tp:
//www.
Sof
twar
eEngi
neer
ing-
9.c
om/
Legac
ySys/
Syst
emevol
uti
on,li
kesof
twa
ree
vol
uti
on(
dis
cus
sedi
nCha
pte
r9)
,isi
nhe
rent
ly
c
ostl
yfors
ever
alrea
sons:
1
. Proposedcha
ngeshav
etobeanaly
zedverycar
eful
lyf
romabusi
nessa
ndate
ch-
nicalpers
pect
ive
.Changeshavetocontr
ibut
etothegoa
lsofthesyst
emand
shouldnotsi
mplybetec
hnic
all
ymotivat
ed.
2
. Bec
auses
ubsy
stemsar
en e
vercomple
tel
yinde
pendent
,chang
e st
oonesu
bsys
-
t
em mayadver
selya
ffe
cttheperf
ormanceorbe
ha vi
orofothersu
bsys
tems
.
Cons
eque
ntcha
ngest
othesesu
bsyst
emsma yt
her
e f
orebeneeded
.
3
. Ther e
asonsfo
rori
gina
ldesi
gnde
cisi
onsar
eoft
enunr
ecor
ded.Thos
ere
sponsi
-
bl
ef orthesys
temevol
uti
onhav
et oworkoutwhypa
rti
cul
ardesi
gndec
isi
ons
werema de.
4
. Assyst
emsage,the
irst
ruct
uret
ypi
cal
lybec
ome
sco
rrupt
edbyc
hang
esot
he
cos
tsofma
kingfurt
hercha
ngesi
ncr
eas
es.
KEY POI
NTS
■ Soc
iot
echni
cal
sys
temsi
ncl
udec
omput
erhar
dwar
e,s
oft
war
e,a
ndpeopl
e,a
ndar
esi
tuat
edwi
thi
n
a
nor
gani
zat
ion.
The
yar
ede
sig
nedt
osuppor
tor
gani
zat
ional
orbus
ines
sgoal
sando
bje
cti
ves
.
■ Huma
nandor
gani
zat
ional
fac
tor
ssuc
hasor
gani
zat
ionals
truc
tur
eandpol
it
ic
sha
vea
s
igni
fi
cantef
fec
tont
heoper
ati
onofs
oci
otec
hni
cal
sys
tems
.
■ T
heemer
gentpr
ope
rti
esofas
yst
emar
echar
act
eri
st
ic
sof
thes
yst
ema
sawhol
era
the
rthanofi
ts
c
omponentpar
ts.
Theyincl
udeproper
ti
ess
uchasper
for
mance,
reli
abi
li
ty
,usabil
it
y,s
afe
ty,and
s
ecur
it
y.Thes
uccessorfa
il
ureofasyst
emi
soft
endepende
ntontheseemer
ge ntpr
oper
ties
.
■ Thef
unda
ment
als
yst
emse
ngi
neer
ingpr
oce
sse
sar
esy
ste
m pr
ocur
eme
nt,s
yst
em dev
elopment
,
ands
yst
emoper
ati
on.
■ Sy
stempr
ocur
ementc
over
sal
loft
hea
cti
vi
ti
esi
nvol
vedi
ndec
idi
ngwhats
yst
emt
obuyandwho
shouldsuppl
ythats
yst
em.
High-
lev
elr
equi
rement
sar
edev
elopedaspar
toft
hepr
ocur
ement
process
.
■ Sy
stemdev
elopmenti
ncl
ude
srequi
rement
sspec
if
ic
ati
on,des
ign,
cons
truc
ti
on,
int
egr
ati
on,and
t
est
ing.Sy
s t
emi nt
egrati
on,wher
esubs
yst
emsf
rommor
ethanones
uppl
iermus
tbema
det
o
wor
ktogether
,ispart
icul
arl
ycri
ti
cal
.
■ Whe
nas
yst
emi
sputi
ntous
e,t
heoper
ati
ona
lpr
oces
sesa
ndt
hes
yst
emi
tsel
fhav
etoc
hange
t
oref
lec
tchangi
ngbus
ines
srequi
rement
s.
■ Huma
ner
ror
sar
einev
itabl
eands
yst
emss
houl
dinc
ludebar
ri
erst
odet
ectt
hes
eer
ror
sbe
for
e
theyleadtosy
ste
mf ai
l
ure.
Reason’
sSwisschees
emodel
expl
ainshowhumane
rrorpl
usl
atent
defec
t si
nthebar
ri
erscanl
eadt
os ys
tem f
ail
ure.
FURTHER READI
NG
‘
Airpor
t95 :Aut
oma tedbaggagesy s
tem’.Anexcell
ent,readabl
ecases
tudyofwhatcangowrong
withas y
stemsengineeri
ngprojectandhows oft
wa r
et endstogett
hebla
mef orwi
dersys
tems
fai
lur
es.(ACMSoftwareEngineeri
ngNot es,21
,Ma r
ch1 996.)
htt
p://doi.
acm.
org/10.1
145/227531.227544.
‘Softwaresyst
emengi neeri
ng:Atutori
al’
. Agoodgene r
alovervi
ewofsyst
emse ngi
neer
ing,
alt
houghThay erfocusesexclusi
vel
yonc omput e
r-basedsystemsanddoesnotdisc
uss
sociotechni
cali
s s
ues.(R.H.Thayer
.IEEEComput er,Apri
l2002.)
http://dx.
doi.
org/10.
1109/MC.2002.
9937 73.
Trus
tinTechnol
ogy:ASoci
o-te
chni
calPer
spect
ive.
Thisbookisas etofpapersthatar
eal
l
concer
ned,insomeway,wit
hthedependabi
li
tyofsoc
iote
chnical
s yst
ems .(
K. Cl
arke,
G.Hardst
one,M.Rouncef
iel
dandI.Somme r
vil
le(
eds.
),Spri
nger,2006.)
‘Fundame nt
alsofSys
temsEngi
neer
ing’
.Thi
sist
heint
roduct
orychapt
erinNASA’
ssyst
ems
engineer
inghandbook.I
tpr
esent
sanovervi
ewofthes
y s
temsenginee
ringpr
oces
sforspa
ce
Chapt
er10 ■ Ex
erc
ises 287
syst
ems.Althoughthes
ear emos tl
ytechni
cal s
yste
ms ,ther
earesoc i
otec
hnic
a li
ssuestobe
consi
dered.Dependabi
li
tyisobv i
ouslycr
it
icall
yimportant.
(InNASASy st
emsEngi neeri
ng
Handbook,NASA-SP2007-6105,2007.)htt
p://educat
ion.ksc
.nas
a.gov/esmdspacegrant
/
Documents/NASA%20SP-2007- 6105%20Rev %201%20F i
nal%2031Dec2007.
pdf.
EXERCI
SES
10.
1.Giv
etwoexamplesofgov
ernmentf
unct
ionst
hataresupport
edbyc omplexsoc
iot
echni
cal
syst
emsandexplai
nwhy,i
nthefor
esee
ablef
uture,t
hesefunct
ionscannotbecompl
etel
y
aut
omated.
10.
2.Expl
ainwhyt heenvir
onmenti
nwhichac omputer
-basedsyst
emisinst
all
edmayhave
unanti
cipat
edeffect
sonthesys
temthatleadtosyste
mf a
ilur
e.I
ll
ustr
ateyourans
werwi
th
adif
ferentexamplefr
om t
hatusedi
nthischapte
r.
10.
3.Whyisi
timpossi
blet
oinf
ert
heemerge
ntpr
ope
rti
esofac
ompl
exs
yst
emf
romt
he
pr
opert
iesoft
hesyst
emcomponent
s?
10.
4.Whyisitsometi
mesdif
fic
ulttodec i
dewhetherornotthereha
sbeenaf ai
l
urei
na
soci
otec
hnica
lsyst
em?Ill
us t
rateyourans
werbyus ingexamplesf
rom t
heMHC-PMSt
hat
hasbeendisc
ussedinearl
ierchapter
s.
10.
5.Whati
sa‘wic
kedprobl
em’
?Expl
ainwhyt
hedev
elopme
ntofanat
ionalmedi
cal
rec
ords
sy
stemshoul
dbeconsi
der
eda‘wi
ckedpr
obl
em’.
10.
6.Amul ti
me diav i
rt
ual mus e
ums ystemof f
eringvir
tualexper
iencesofancientGreec eistobe
developedf orac onsort
ium ofEuropeanmus eums .Thesyst
ems houl
dpr ov
ideus erswith
thefacili
tytov i
ew3- Dmodel sofancientGreecethroughas t
anda rdwebbrows erand
shouldal sosuppor tanimme rs
ivevirt
ualreali
tyexperi
ence.Wha tpoli
ti
caland
organizati
ona ldi
ffi
cult
iesmightarisewhent hesystemi si
nstal
ledinthemus eumst hat
makeupt hec onsorti
um?
10.
7.Whyissyst
emi
ntegr
ati
onapart
icularl
ycri
ti
calpar
toft
hes y
stemsdev
elopmentpr
ocess
?
Sugges
tthr
ees
ociot
echni
cal
iss
ue sthatmaycausedi
ff
icul
ti
esint
hesystemint
egr
ati
on
proc
ess.
10.
8.Ex
plai
nwhyl
egac
ysy
ste
msmaybec
rit
ical
tot
heoper
ati
onofabus
ines
s.
10.
9.Whatar
etheargument
sforandagai
nstconsi
deri
ngsyst
eme ngi
neer
ingasapr
ofes
sioni
n
i
tsownri
ght,
li
keelect
ri
calengi
neer
ingorsof
twareengi
neer
ing?
10.
10.Youa r
eanengi neerinvolvedinthedev e
lopmentofaf inanc i
als
y st
em. Duri
ngi nst
allat
ion,
youdiscoverthatthissystemwi l
lma keas i
gnif
icantnumberofpeopl eredundant .The
peopleintheenv ir
onme ntdenyy ouaccesstoes sent
ialinfor
mat i
ontoc ompletethes yst
em
i
ns t
all
ati
on. T
owhatex t
e ntshouldyou,asas yst
emsengi neer
,becomei nvolv
edi nthis
si
tuati
on?I si
ty ourprof
e ssi
onalresponsi
bil
itytocompl etetheinsta
llat
ionasc ontr
ac t
ed?
Shouldyous i
mpl yabandont hewor kuntilt
hepr ocuri
ngor gani
zati
onhass or
tedoutt he
probl
em?
288 Cha
pter10 ■ Soc
iot
echni
cal
sys
tems
REFERENCES
Ackr
oyd,S.,
Har
per,
R.,Hughes,J
.A.a
ndShapi
ro,D.(
1992)
.Inf
ormat
ionT
echnol
ogyandPr
act
ical
Poli
ceWork.Mi
lt
onKeynes:OpenUni
ver
sit
yPr
e s
s.
Anders
on,R.J
.,Hughe
s,J
.A.andSha
rrock,W. W.(1
989)
.Worki
ngforProf
it
:TheSoc
ial
Organi
zat
ionofCal
cul
abi
li
tyi
nanEntrepreneuri
alFi
rm.
Alder
shot
:Avebury
.
Chec
kland,
P.(
1981
).Sy
ste
msThi
nki
ng,
Sys
temsPr
act
ic
e.Chi
che
ster
:JohnWi
ley&Sons
.
Chec
kland,
P.andSc
hol
es,
J.(
1990)
.Sof
tSy
stemsMe
thodol
ogyi
nAc
tion.
Chi
ches
ter
:JohnWi
ley
&Sons.
Mumfor
d,E.(
1989)
.‘Us
erPa
rti
cipat
ioninaChangi
ngEnvi
ronment—Whyweneedi
t’
.In
Par
ti
ci
pati
oninSys
temsDev
elopment.Kni
ght,K.(
ed.
).L
ondon:KoganPage.
Reas
on,J
.(2000)
.‘Humaner
ror
:Mode
lsa
ndmanagement
’.Br
it
ishMedi
calJ
.,3
20768–7
0.
Ri
tt
el,
H.andWebber
,M.
(1973)
.‘Di
lemmasi
naGe
ner
alTheor
yofPl
anni
ng’
.Pol
ic
ySc
ienc
es,
4,
155–69.
Stev
ens,R.,
Brook,P
.,J
acks
on,K.a
ndAr
nol
d,S.
(1998)
.Sy
ste
msEngi
neer
ing:Copi
ngwi
th
Comple
x i
ty.L
ondon:Pr
enti
ceHal
l.
Suc
hman,L.(
1987)
.Pl
ansands i
tuat
edac
ti
ons
:thepr
obl
emofhuman-
mac
hinec
ommuni
cat
ion.
NewYor
k:Cambri
dgeUni
vers
ityPress
.
Swar
tz,A.J.
(1996)
.‘Ai
rpor
t95:Aut
omat
edBa
ggageSy
stem?
’ACMSof
twar
eEngi
neer
ingNot
es,
21(
2),79–83.
T
hay
er,R.
H.(
2002)
.‘Sof
twar
eSy
stemEngi
neer
ing:AT
utor
ial
.’
IEEEComput
er,
35(
4),
68–
73.
T
homé,B.(1
993).‘Sy
stemsEngi
neer
ing:Pr
inc
ipl
esa
ndPr
act
iceofComput
er-
bas
edSy
stems
E
ngi
neeri
ng’.Chi
chest
er:J
ohnWil
ey&Sons .
Whit
e,S.,
Alf
ord,M.
,Holtz
man,J.
,Kuehl
,S.
,McCa
y,B.,Ol
iv
er,D.
,Owens,D.
,Tul
ly
,C.andWill
ey,
A.
(
1993).
‘Syst
emsEngineer
ingofComput
er-
Bas
edSy s
tems’.I
EEEComputer
,26(11)
,54–65.
11
De
penda
bil
it
yands
ecur
it
y
Obj
ect
ive
s
T
heobjec
tiv
eofthi
schapteri
stointr
oducesof
twar
edepe
ndabi
l
itya
nd
s
ecur
it
y.Whenyouhavereadthi
sc ha
pter
,youwil
l:
■ under
standwhydependabil
it
ya ndse
curi
tyareus
uall
ymore
i
mportantthant
hefunct
ionalchar
act
eri
sti
csofasof
twar
esyst
em;
■ underst
andthefourpri
ncipaldimens
ionsofde
penda
bil
it
y,namel
y
avai
labi
li
ty
,rel
iabi
li
ty,
safety
, andsec
urit
y;
■ beawareoft
hespeci
ali
zedter
minol
ogyt
hati
sus
edwhe
ndi
scus
sing
sec
uri
tyanddependa
bil
ity
;
■ underst
andthatt
oac hi
evesecure,dependabl
esoft
ware,y
ouneedto
avoi
dmi st
akesduri
ngthedevelopmentofas ys
tem,todet
ectand
removeerr
orswhenthes ys
temi sinuse,andt
olimi
tthedamage
causedbyoperat
ionalf
ail
ures
.
Cont
ent
s
11.
1Dependabil
it
ypr
opert
ies
11.
2Avail
abi
li
tyandr
eli
abi
lit
y
11.
3Safet
y
11.
4Securi
ty
290 Cha
pter11 ■ Dependabi
l
ityands
ecur
it
y
1. Sys
temf ail
uresaff
ectalargenumberofpeople
.Ma nysyste
msi ncl
udefunc
tion-
al
it
yt hatisrare
lyused.Ifthi
sfuncti
onal
itywerelef
touto fthesyst
em,onlya
smallnumbe rofus er
swoul dbea ff
ected.Syst
emf ailur
es,whicha f
fec
tt he
ava
il
a bil
ityofas ys
tem,p ote
nti
all
ya f
fec
ta l
luser
so fthesystem.Fai
lur
ema y
meant hatnor
ma lbusi
nessisimpossi
ble.
2. User
softenrej
ects
ystemsthatareunrel
iable,unsaf
e,orinse
cur
e .Ifusersfi
nd
t
hatasystemisunrel
iabl
eo rins
ecure,the
ywi l
lrefus
etou s
eit.Fur t
hermore,
t
heyma yalsore
fusetobuyorus eotherproductsfr
om thesamec ompa nytha
t
pr
oducedtheunrel
iablesyst
em,be ca
us etheyb eli
evethatt
hes
epr oduct
sare
al
soli
kelytobeunrel
iabl
eorinsecur
e.
3. S
yst
emfail
urec
ostsmaybeenormous.Fors
omeappli
cati
ons,s
uchasar
e a
ctor
c
ont
rolsys
temora nai
rcr
aftnavig
ati
onsyst
em,thecostofsyst
emfai
lureis
o
rde
rsofmagni
tudegre
ate
rthanthecos
toft
hecontr
olsyst
em.
4
. Unde
pendab
lesy
stemsmaycausei
nfo
rmati
onlos
s.Da
tai
sveryexpen
sivet
ocoll
ect
an
dma i
nt
ain;
iti
susual
lywort
hmuchmo r
ethant
hecompu
tersy
s t
emo nwhic
hiti
s
pr
oce
ssed
.Thecostofr
ecove
ri
nglosto
rcorr
uptda
tai
sus
uall
yve r
yh i
gh.
AsIdi sc
ussedinChapter10,s
oftwar
eisa l
wa yspar
tofab r
oadersyst
em.I texe-
cut
esina noperat
ionalenv
ironmenttha
tincludesthehar
dwa r
eonwhi chthes of
t-
wareexecut
es,thehumanus er
softhatsof
twa r
e,andtheor
ganizat
ion
a lorbusiness
proc
esseswhe r
et hesof
twareisused.Whe nde si
gni
ngade pendabl
es yst
em,yo u
th
eref
orehavetoc ons
ider
:
1. Hardwarefail
ureSyste
m hardwar
ema yfai
lbec
auseofmist
ake
sinit
sde
sign,
becaus
ec ompon e
ntsfai
lasar es
ultofmanuf
actur
inge
rror
s,orbe
caus
et he
componentshaverea
chedtheendofthe
irna
tur
alli
fe.
11.
1 ■ Depe
ndabi
li
typr
oper
ti
es 291
Cr
iti
cals
yst
ems
Somec lassesofsys
tem are‘
cri
ti
calsyst
ems ’wher esys
tem fai
lur
emayresulti
ninj
urytopeopl
e,damagetothe
envi
ronment ,orext
ensi
veeconomi closses.Examplesofcri
tic
alsys
temsi
nc l
udeembeddeds y
stemsinmedical
devi
ces,suc hasanins
ulinpump( saf
ety-cr
iti
cal)
,spacecr
aftnavi
gati
onsy
stems(missi
on-
cri
ti
cal)
,andonl
ine
moneyt ransfers
yst
ems( bus
inesscri
ti
cal).
Cri
ti
calsy
stemsar
ev er
yexpensi
vetodevel
op.Notonl
ymustt
heybedevel
opedsothatf
ail
uresar
ever
yrar
e
buttheymustal
soincl
uderecov
erymechanis
msthatar
eus
edifandwhenfai
lur
esoccur
.
ht
tp:
//www.
Sof
twar
eEngi
neer
ing-
9.c
om/
Web/
Dependabi
li
ty/
Cri
tSys
.ht
ml
2
. Sof
twarefail
ureSys t
emsoft
ware mayf
ailbe
caus
eofmi
st
ake
sini
ts
spe
cif
ica
tio
n,des
ign,ori
mpl
ement
at
ion.
3
. Operat
ionalf
ail
ureHumanu se
rsmayfai
ltouseorope
rat
ethesyst
emcorre
ctl
y.
Asha r
dwareandsoft
warehavebeco
memor ereli
abl
e,fa
ilu
resinope
rat
ionare
now,perha
ps,t
helar
gestsi
ngleca
useofsyst
emf a
il
ure
s.
Thesefail
ur esareoft
eni nterre
lated.A fa i
ledha rdwa r
ec ompone ntma yme an
syste
mop eratorshavetoco pewi t
ha nune xpecte
ds i
tuationanda ddi
tionalworkload.
Thisputsthem und erstr
essa ndp eopleun derstr
essof tenma kemi s
takes.Thiscan
causethes oftwaretofail,whi chme ansmor ewor kf ortheope rat
ors,evenmor e
st
ress,andsoon .
Asar esul
t,itispa r
ti
cul a
rlyimp ortantthatdesi
gne rsofde pendable,software-
i
nte n
sivesystemst akeaho li
sticsystemspe rspect
ive,ratherthanfocusonas ingle
aspectofthes ystems ucha sitssoftwareo rhardwa re.Ifhardwa r
e,s o
ftwa r
e,and
operat
ionalprocessesar
ede signedse par
ately
, wit
hout takin
gintoa cc
oun tth
epot e
n -
t
ialwe aknesseso fothe
rpa rtsofth esystem,t h
eni tismor el i
kelythaterrorswill
occurattheinterfac
esbetwe enthed if
ferentpart
soft hes yst
em.
1
1.1 Dependabi
lit
ypr
oper
ties
Allofusaref a
mi l
iarwi t
ht heproblem ofcompu t
ers yst
emf ai
lure.Forn oob vious
r
eason,ourcomput erssometimesc r
ashorgowr ongi nso mewa y
.Pr ogramsr unning
onthes
ec ompu te
rsma ynotop erat
ea sexpect
eda ndoc casionall
yma yc orruptthe
dat
athatisma nagedbyt hes yste
m.Weha velearnedt olivewi t
ht hesefailuresbut
f
ewofusc o
mp letel
yt r
ustthepe r
sonalcomputersthatweno rmallyus e
.
Thede pendabil
it
yo fac omput ersyst
emi sapr opert
yoft hesystemt hatreflect
s
i
tstr
ustwort
hiness.Trustworthine
sshe r
ee s
sent
iall
yme ansthed egreeo fcon f
idence
auserhasthatthes yst
e m willopera
tea st
heye xpect,andt hatthesys t
em wi llnot
‘
fail
’innor ma luse.Itisnotme aningfultoexpr es
sde pendabilit
ynume ri
cally
.
292 Cha
pter11 ■ Dependabi
l
ityands
ecur
it
y
Dependabi
l
ity
Av
ail
abi
l
ity Rel
iabi
li
ty Saf
ety Sec
uri
ty
T
heabi
lit
yofthes y
stem T
heabil
it
yofthes y
stem T
heabili
tyofthesyst
em Theabil
it
yofthes ys
tem
t
odel
iv
ers er
viceswhen todel
i
verservi
cesas t
ooper at
ewithout toprot
ectit
elfagai
nst
requested spec
ifi
ed c
atas
trophicf
ail
ure acci
dentalordeli
berat
e
i
ntrusi
on
Ra t
he r,weus erelati
vet ermss ucha s‘notde penda ble
,’‘veryde pendabl e,
’a nd
Fi
gur e11.
1
Pri
ncipal ‘ul
tra-de pe
n da bl
e’tor efl
ectthede gr
eesoftrus tt
hatwemi ghthaveinas ystem.
dependabil
it
y Trustworthi nessandus efulne
s sarenot,ofc ourse,thesamet hing.Ido n’tthink
propert
ies thatthewor dpr ocessorthatIus edtowr i
tet hisbooki sav erydependables ystem.
Itsome timesf reezesa ndhast ober es
tar
ted. Nevert
heless,becauseitisveryus eful
,
Iamp re pa
re dt otoler
a t
eoc casi
onalfail
ure.Ho we ve
r,tor efl
ectmyl acko ftrustin
thesys t
e m Is avemywor kfrequent
lyandk ee pmulti
pl ebackupc opie
so fit.Icom-
pensatef ort hel a
c kofs yst
em de pendabi
lit
ybya cti
onst hatlimittheda ma gethat
couldr esul
tf rom systemf ail
ure.
The rearef ourpr i
ncipaldimens i
onstode pendabil
ity,asshowni nFigure11. 1.
1. Avai
labil
it
yInfor
mall
y,t
heava
ila
bil
it
yofasyst
emisthep
roba
bili
tyt
hati
twil
l
beupa ndrunni
ngandabl
etodel
ive
ruse
fuls
ervi
cest
ouser
satanygi
venti
me.
2. Reli
abil
it
yInf
ormall
y,t
herel
iabi
li
tyofasys
temi
sthepr
obabi
li
ty,o
veragiv
en
peri
odoftime,th
atthesys
tem wil
lcorr
ect
lyde
li
verse
rvi
cesasexpec
tedby
theuse
r.
3. Saf
etyI
nformal
ly
,thes
afet
yofasy
ste
misajudgmentofho
wli
kel
yiti
stha
tthe
sys
tem wi
llca
usedamagetope
opl
eorit
sen
v i
ronme
nt.
4. Securi
tyI
nforma
lly
,thesec
u r
it
yofasyst
emisajudgment
ofho
wli
kel
yiti
stha
t
thesys
temc a
nresi
stacc
ident
alorde
lib
erat
ein
tru
s i
ons
.
Thede pe
ndabil
ityproperti
e sshowninFi gure11.1arecompl exprope r
tiestha
t
canbeb rokendowni ntoanumbe rofo t
her,si
mp le
rpropert
ies
.Fore xampl e,sec
u-
rit
yi ncl
udes‘ i
ntegri
ty’( ensuri
ngt hatthes ystemsprograma ndda taa renot
dama ged)and‘confi
dential
ity
’( ens
uringthatinf
orma t
ioncanonl ybea ccessedby
peoplewhoa reauthor
ize d)
.Re li
abi
lit
yincludes‘corr
ect
ness’(ensuri
ngt hes y
stem
servi
cesareasspecif
ied),‘pr
ecisi
on’(ensuri
nginformati
onisdeliver
eda tana ppr
o-
pri
a t
elevelofdeta
il)
,and‘ ti
me li
ness’(e
nsu r
ingthati
nformati
oni sdel
ive r
edwhe n
iti
sr eq
uired
).
11.
1 ■ Depe
ndabi
li
typr
oper
ti
es 293
Ofc ours e
,thesed ependa bil
it
yp rope r
ti
esar eno talla ppli
ca bl
etoa l
lsy s
tems.For
t
hei nsulinpu mps yst
em,i ntroduc edinCha pter1, themos timp ort
a ntproperti
esare
avail
abilit
y( itmu stwor kwh enre quir
e d),r
eli
a bilit
y( itmu stde l
iverthec orr
ectdose
ofinsuli
n) ,ands afety(itmu stne verd eli
verad a ngerou sdo s
eofi nsul i
n).Securi
tyis
nota nissuea sthepumpwi l
lno tma intai
nc onf identialinforma t
ion .Itisnotne t
-
workeda nds oc annotbema li
cious l
ya t
tac
k ed.Fort hewi ldernesswe at
hersystem,
avail
abilitya ndr elia
bilit
ya r
et hemos ti
mp or t
a ntpr operti
e sbe c
a useth ecostsof
r
e p
a i
rma yb eve ryhi gh.Fort hepa t
ientinforma tions ystem,s ecuri
tyi sparti
cular
ly
i
mpor tantbe causeo fthes ensiti
vepr i
va t
eda t
at hatisma intai
ne d.
Aswe llasthesef ourma inde penda bil
it
yp rope rti
e s,youma yals othinkofo t
her
syst
em pr o per
tie
sa sdependa bil
itypr op er
ti
es:
1
. Re pai
rabi
lit
ySys temf ai
lure
sa rei
nevit
able,butthedisruptionc a
usedbyfail
ure
canbemi nimi zedifthes ys
temc anber epair
edqu i
ckl
y .Fort hatt
oha p
pe n
,it
mus tbepossibletod i
agnosetheprobl
em,a ccessthec o
mp onentthath
asfail
ed,
andma kec hange st
of i
xt ha
tc omponent
.Re pairabil
it
yi ns oft
wa r
eisenhanced
whe ntheor g
a nizat
ionusingthesystem hasac c
e sstothes ourcecodeandh as
theskil
lstoma kechangestoit.Opensources oft
wa rema ke st
hiseasi
erbutthe
reuseofcompone nt
sc anma keitmorediff
icul
t.
2
. Ma i
ntainabi
li
tyAss yst
e msareus
e d,newrequire
mentsemergeanditisimpor
-
ta
nttoma i
nta
intheusefulne
ssofas yst
embyc hangi
ngitt
oac c
ommoda t
ethe
se
newre quir
ements.Ma i
ntaina
blesoftwarei
ss oft
war
ethatcanbea dapte
de c
o-
nomicallytocopewi t
hne wrequi
reme nt
s,andwhe r
ethe
reisal owprobabil
it
y
tha
tma kingchangeswillint
roduc
ene werr
orsintot
hesy
stem.
3
.S urvi
v a
bilit
yAv e
ryimportantatt
ri
b utef orInt
ernet
-base
dsy s
temsissurvivab
ili
ty
(Ell
isone tal.
,1999b )
.Sur vivabi
lityi st heabil
it
yofas yst
emt oc onti
nuet o
deli
vers e
rvicewh il
stundera t
tacka nd ,potenti
al
ly,whils
tp ar
tofthes yst
emi s
disa
bled.Wor kons urviv
abilit
yf ocuse soni dent
if
y i
ngkeys yst
e mcompone nts
anden s
uringth a
ttheycande l
iverami nima lse
rvic
e.Threestra
tegie
sa r
eus edto
enhances urvi
v abi
li
ty—r e
s i
stancet oa ttack,att
ackrecogniti
on,andr ecovery
fro
mt heda ma gecause
dbya na t
tack( Ellisonetal
.,1999a;Ell
isonetal.,
2002).
Idisc
us sthi
sinmo r
ede t
ailinCha pter14 .
4
. Erro
rt ol
e r
anceThispr
opertycanbeconsi
der
eda spar
tofusabili
tyandrefle
cts
th
ee xtenttowhichthesyst
em hasbeendesi
gneds oth
atuserinputerrorsare
avoi
de dandtole
rat
ed.Whe nuserer
ror
soccur
,thesyst
ems hould,asfa
ra spos-
si
ble,detectt
heseer
ror
sa n
de i
therf
ixthe
ma ut
o mati
cal
lyorrequestth
eus erto
re
inputtheirdat
a.
Thenotionofsyst
e m de
pendabil
it
yasanencomp as
sin
gp r
opert
ywa sint
roduced
b
ecausethedependabil
it
yproper
ti
esofava
il
abil
it
y,secur
it
y,re
li
abil
it
y,andsaf
etyare
c
losel
yrelat
ed.Safesyst
emo per
ati
onusual
lydependsonthesyst
emb e
ingavail
able
a
ndo per
a t
ingre
lia
bly.As y
stemma ybec
omeu nre
liab
lebecaus
eanintr
uderhascor-
r
uptedit
sda t
a.Denia
lofs e
rvi
cea t
ta
cksonasyste
ma reint
endedtocompromisethe
294 Cha
pter11 ■ Dependabi
l
ityands
ecur
it
y
s
ystem’savai
labi
li
ty
.Ifasys
temisi
nf e
cte
dwi t
havirus,yo
uc ann
ot t
henbec
onf
ide
nt
i
nitsre
liabi
li
tyorsaf
etybeca
useth
evi r
usma ychan
gei t
sbehavi
or.
Tode v
elopdependabl
esoft
ware,youthe
refor
ene e
dtoe ns
urethat
:
1. Youavoi
dtheint
roduc
ti
onofacc
ide
nta
ler
ror
sint
othes
yst
em du
rin
gso
ftwa
re
spe
cif
ica
ti
onanddevel
opment
.
2. Youdesig
nv er
ifi
cat
ionandva
lida
ti
onproce
sse
stha
taree
ffe
cti
vei
ndi
sco
ver
ing
re
sidua
lerror
sthata
f f
ectt
hedepe
ndabi
li
tyoft
hesyst
em.
3. Youdesi
gnprote
cti
onme cha
nis
mst h
atgu
arda
gains
text
erna
lat
tac
kst
hatc
an
compr
omiset
h eava
ila
bil
it
yorsecur
it
yoft
hesy
ste
m.
4. Youconf
igur
ethedepl
oye
dsys
tema
ndi
tss
uppor
ti
ngs
oft
war
ecor
rec
tlyf
ori
ts
ope
rat
ingenvi
ronme
nt.
Ina ddi t
ion,yous houl dus ua ll
ya ss umet ha tyours oftwa rei snotpe rfec ta nd
thatsof t
wa ref ailur esma yoc c ur.Yours ystems hou ldt her efor einc luder eco ve ry
me chani smst ha tma kei tpos siblet or estor en or ma ls ys t
e ms ervi cea squi c klya s
possible.
Thene edf orf aultt ole ranc eme anst ha tde pe nda bl es yste msha vet oi nc lude
redunda ntc odet ohe lpt hem moni t
ort he mse lve s,de te
c te rrone ouss t
a t
e s,a nd
recoverf romf aultsbe foref ai
lur eso ccur .Thi saffe ctsth epe rfor ma nc eofs ys t
e ms , as
additionalc he ckin gisr equi r
ede acht i
met hes ys teme xe cutes .The refor e,de sign ers
usuallyha vet ot r adeof fpe rfor ma ncea n dde pe nda b ility
.Yo uma yne edt ol ea ve
checksoutoft hes yst em be c
a us etheses l
o wt hes y s
tem down. Howe ver,thec ons e-
quentialr i
skh erei stha ts omef a il
ureso ccurbe c aus eaf aultha sno tbe ende t
ec ted.
Be caus eofe xt rade sign,i mpl ement ation,a ndv alid ati
onc osts,inc rea s
ingt he
dependa bi l
ityofas ys t
ems i
gni ficantl
yi nc reasesd eve lopme ntc o sts.Inpa rticula r
,
vali
da t
ionc os tsa reh ighf ors ys temst h atmus tb eul tra -dep end ables uc ha ss a fety-
crit
icalcon trols ys tems .Aswe lla sv al
ida tingtha t thes ys te
mme etsitsr equireme nt s
,
thev al
ida ti
o np r
oc e s
sma yh a vet opr ovet oa ne xterna lr e
gul a t
ort ha tthes y stemi s
safe.Fore xa mpl e ,air cr
a ftsys temsha vet od emon stratet or e gulators ,suc ha st he
Fed er
alAv iationAut hority,tha tt hepr oba bilit
yofac ata st
roph i
cs ys t
e mf a
ilur et hat
affect
sa ircrafts afe t
yi se xtreme lyl ow.
Figure1 1.2s ho wst ha tther e lat
ions hipb et
we enc os tsa n di ncreme ntalimpr ove -
me ntsinde penda bili
ty .Ify ours oftwarei snotv e ryde pe nda bl e,y ouc ange ts igni fi
-
canti mpr ove me ntsa tre lati
ve lyl owc os tsbyus ingbe tt
e rs oftwa ree ngine e ri
ng.
Howe ver,ifyo ua rea lreadyus inggo odpr actice,t hec os t
so fi mpr oveme nta r
emuc h
greaterandt heb e ne f
itsf romt ha timprov e me nta rel ess. Th erei sa lsothepr oble mof
test
ingy ours oftwa ret od emons t
ratet hati tisde pe nda ble.Thi srelieso nr un ning
ma nyt es tsa ndl ooki nga tt henu mbe roff ai
lur e stha toc cur .Asyours oftwa re
become smor ede pe nda ble ,yous e
ef ewe ra ndf ewe rf ailures .Con sequ ently,mo re
andmor et estsa rene ede dt ot rya nda ss essh ow ma n ypr obl emsr e ma ini nt he
softwa re.Ast est i
ngi sve rye xpe nsive ,t hisdr ama tic all
yi nc rease st hec os tof
high-de pend ab il
itys ys t
ems .
11.
2 ■ Av
ail
abi
li
tyandr
eli
abi
l
ity 295
t
Cos
Figure11.2 L
ow Medi
um Hi
gh Very Ul
tr
a-
Cost/dependabi
li
ty High Hi
gh
curve Dependabi
l
ity
1
1.2 Avai
labi
lit
yandr
eli
abi
lit
y
Sy st
ema vailabili
tya ndr el
iabil i
tya rec l
os elyr el
a te
dpr operti
est ha tc anbot hbe
express eda sn ume ricalpr obab i
liti
es .Thea v ai
labili
tyofas yst
emi sthepr oba bil
ity
t
ha tthes y s
tem wi l
lbeupa ndr unningt ode live
rt he s
es ervicestous e rsonr eque st
.
Th ereliabili
tyofas ystemi st hep robabili
tyt hatthes ystem’ sserviceswi llbede l
iv-
ereda sde finedi nthes yst
ems p ecif
icati
on .If,ona verage ,2i n
put sine ve r
y1, 000
causef ai
lures,t hent her eliabilit
y,e xpresseda sar ateofoc currenceo ff ail
ur e,is
0.002. Ifthea va i
labili
tyi s0.999 ,thisme anst hat, o
v erso met imepe riod ,thes ystem
i
sa va i
lablef or99. 9% o ftha ttime .
Re l
ia bi
lit
ya nda vailabili
tya rec losel
yr elatedbu ts ome timesonei smor ei mpor -
t
a nttha ntheot he r
. I
fus e r
se xpe ctcontinuou sservicef rom as ystemt h ent hes ystem
hasah igha vailabil
ityre quireme nt.Itmus tb eava il
ab l
ewh en e
verade ma ndi sma de.
Howe ver,ifthel ossest hatresultfrom as ystemf a
ilurea rel owa ndt hes yst
emc an
recove rqu i
cklyt henf ailuresd on’tse ri
ouslya ff
ec tsystemus er
s.Ins uchs ystems ,the
reli
abilityrequi reme ntsma yb er el
ativelylow.
At elephon ee xchanges wi t
cht hatrou t
esph onec all
sisa ne xamp l
eof as ys temwh ere
avail
ab il
ityismo reimp ort
a ntthanr elia
bili
ty.Us erse xpectad i
altonewhe nt heyp ick
upap ho ne,sot h esystemh ashi gha v a
il
a bi
lityreq ui
reme nts.Ifas ystemf au l
to ccurs
wh il
eac onne cti
oni sb eingse tup, t
hisiso f
tenq uicklyr ecoverable
. Exch an geswi tches
canus ua ll
yr esetthes ys te
ma ndr etryt h
ec o nnectiona tt
empt .Th i
sc anb edo nev ery
qu i
cklya ndp honeu sersma yno te venn oti
cet hataf ail
u reh asoccurred.Fu rt
hermo r e
,
eveni fac allisi nt
errupte d
,th ec onseq ue
n c
e sa r
eus ua l
lyno tserio
us .Th ere f
ore,a vail
-
abil
ityr at
hert hanr el
iabilit
yisth ekeyd ependabil
it
yr e quir
e me ntf
orthisty peo fsys t
em.
Sys temr eliabili
tya nda va i
labili
tyma ybed efinedmor epr eci
selya sf ollows :
1
. Rel
iabil
it
yTheprobabi
li
tyoffa
ilur
e-f
reeope
rat
ionov
eras
pec
ifi
edt
ime
,in
agi
v e
ne nvi
ronme
nt,
foraspe
cif
icpurp
ose.
296 Cha
pter11 ■ Dependabi
l
ityands
ecur
it
y
2. Avai
lab
ili
tyThepro
babi
li
tyt
hatasys
tem,atapo
inti
nti
me,
wil
lbeo
per
ati
ona
l
andabl
etodeli
vert
here
ques
tedse
rvi
ces.
T
erm Desc
ript
ion
Humaner
rorormi
stake Humanbehav i
orthatres
ultsi
nt heintr
oducti
onoff ault
sint
oas ys
tem.For
example,inthewi l
der
nessweat hersyst
em,apr ogrammermi ghtdeci
dethatt
he
waytoc omputet heti
mef orthenex tt
rans
mi s
sionistoadd1hourt othe
curr
enttime.Thisworksexceptwhent hetransmiss
iont i
meisbetween23.00
andmidni ght(
mi dni
ghtis00.00inthe24-hourc l
oc k
).
Sy
stem f
aul
t Achar
acteri
sti
cofasoft
waresy
s t
em thatc
anleadtoasy
s t
em err
or.T
hef aul
tis
t
heincl
usionofthecodetoadd1hourt otheti
meofthelastt
ransmis
sion,
wit
houtac hecki
ftheti
meisgreatert
hanorequalt
o23.00.
Sy
stem er
ror Anerroneoussyst
em statethatcanleadt osyst
em behavi
orthati
sunex
pec
ted
bysystem us
ers.T
hev alueoftrans
mi ssi
ont i
mei ss
etinc
orrect
ly(
to24.
XXr
ather
than00.XX)whent hefaul
tycodeisex ecuted.
Sy
stem f
ail
ure Aneventt
hatoc c
ursats
omepointi
nti
mewhent hes
ystem doesnotdel
iv
er
aser
vic
easex pect
edbyitsus
ers
.Noweat
herdat
aist
ransmitt
edbecausethe
ti
meisinv
ali
d.
Sys t
e mr eli
abilitya n da v ail
abilitypr obl emsa remo stl
yc a use db ys ystemf ailures.
Fi
gure11.3
Rel
iabi
li
tyt
ermi
nol
ogy Someo ft hesef ailure sa reac on seque nc eofs pe cificati
one r rorsorf a i
luresinot he r
relat
e ds ystemss uc ha sac ommuni ca tionss ys tem.Ho we v er,ma nyf ailuresa rea
conse quenc eofe rrone ouss yst
e mb eha viort ha td erivesf rom f aultsi nt hes ystem.
Wh endi scussi
ngr eliabi li
ty,i tishe lpfu ltous epr eciset ermi nologya n dd ist
ingu i
s h
betwe ent hete rms‘ faul t
,’‘ error,’a nd‘ failure .
’Iha vede finedt he set ermsi n
Figure11. 3andha vei llus t
ratede a chd e f
initi
onwi tha ne xamp lefromt hewi l
derne ss
we at
h ers yst
em.
Whe na ninpu toras eque nceofi nput sc aus esf aultyc odei nas ystemt obee xe-
cuted,a ne rr
one ou ss tatei sc reatedt h atma yle adt oas oftwa ref ail
u re.Fi gure11. 4,
derivedf rom Li tt
lewood( 19 90),s howsas oftwa res ystema sama p pingo fas etof
i
npu tstoas etofout puts .Gi vena ni nput orinput seque nc e
, thep rogr amr espondsby
produ cingac orres po ndi ngo utput.Fore xamp le,gi vena ni nputofaURL,awe b
brows erpr oduce sa nout pu tthati sthedi splayoft her eque stedwe bp a ge .
Mos tinput sdon otl e adt os ystemf a i
lure.Ho we v er,somei npu tsori nputc omb i-
nations,s howni nt hes ha de de l
lipseI e in Figure 11.4, cause system fail
u resor erro-
neousou tputstob ege ne rated.Thep rogr am’sr eli
a bil
ityde pendso nt henumbe rof
systemi n putsthata r eme mb ersoft hes etofi npu tstha tleadt oa ne rrone ousout put.
Ifinpu t
si nthes etI ea r
ee xe cutedbyf requent lyus e dp artsoft hes ystem,t henf ail-
ureswi llbef reque n t.Ho we ver,ifthei nput sinI e are execu ted by co de tha ti
s rarely
used,t henus erswi llha r dlye v e
rs eef ailur e
s.
Be causee achu se ro fas ys temu sesi tindi f
fe rent way s,the yha ved ifferentperce p-
t
ionsofi tsreli
ab il
ity.Fa ult
st ha taffectt her el
ia bili
tyoft hes ys temf o ro neu serma y
neverb er eveal
edund ers ome onee lse’smo deofwor king( Figu re1 1.
5 ).InFi gure11 .5,
t
hes e tofe rr
o neou si npu tsc orrespondt ot hee ll
ip selabe ledI e i
n F i
g ure 11 .
4.T he set
ofinput spr oduc edb yUs er2i nterse ctswi tht hise r
ron eou si npu ts et.Us er2wi ll
298 Cha
pter11 ■ Dependabi
l
ityands
ecur
it
y
I
nputSet I
e I
nputsCausi
ng
Er
roneousOutput
s
Pr
ogr
am
Fi
gure11.4
Asys
tem asan Out
putSet Oe Er
roneous
i
nput/out
put Output
s
mapping
t
hereforee xperienc es omesys te
mf ai
lures.Us er1a ndUs er3 ,howe ver,neveruse
i
nputsfromt h ee r
ro neousse
t. Forthem, t
hes oft
wa rewillalwa ysber eli
able.
Th epracticalreliabil
it
yofap r
ogramd ep endsont h
en umbe rofinputscausingerro
-
n
eo usoutputs( fai
lures)duri
ngn orma luseofthes yst
embymo stuser
s .
Sof t
wa refa
ult
s
t
haton l
yo ccuri ne xcepti
onals i
tuat
ionshav eli
ttl
epr a
cti
c ale f
fectonthes yst
em’ sre
li
-
a
bility
.Cons equent ly,removings oft
wa ref a
ultsma yn ots i
gnifi
cantlyimp rovethe
o
ve ral
lreli
abilit
yoft hesyst
em. Mi l
lsetal.(1987)foundt ha tremo v
ing6 0% ofk nown
e
rrorsint h
e i
rs oft
wa r
el e
dtoa3 %r eli
abil
ityimp rovement .Ad ams( 1984),inas t
udy
o
fI BM s oft
wa rep rodu ct
s,n
ot edthatma nyde f
e c
tsinthepr oductswe r
eo nlylikel
yto
c
au sefai
luresa fte
rhu n dr
edsort housandsofmon th
so fprod uctu sa
ge .
Sys t
emf aultsdonota l
wa ysresultinsysteme rrorsands yst
eme rr
orsd onotn ec
-
e
ssa r
il
yr esultins ys t
emf ai
lures.Ther easonsforth i
sarea sfoll
ows :
1
. Notallcodeinaprog
ramisexe
cut
ed.Thecod
ethati
ncl
udesafau
lt(e
.g.
,the
f
a i
lur
etoinit
ia
li
zeavar
iab
le)ma
yneverbee
xec
ute
dbecaus
eofth
ewa ytha
tthe
sof
twareisused.
Possi
ble
I
nputs
Us
er Er
roneous
1 Input
s
Us
er Us
er
3 2
Fi
gur
e11.5 Sof
twar
e
us
agepat
ter
ns
11.
3 ■ Sa
fet
y 299
2
. Err
orsaret
ransi
ent
.A st
ateva
ria
blemayh aveanincorr
e c
tval
uecaus
edb yt
he
ex
ecuti
onoffaul
tyco
de.However
,bef
oret
hisisac
cess
e dandcaus
esasy
stemfai
l-
ur
e,someoth
e rs
yst
eminputmaybeproce
ssedth
atres
etsthest
at
etoaval
idval
ue.
3
. Thes yst
em mayincludefa
ultde
tect
ionandprot
ect
ionme c
hani
sms.Thes
e
ensur
et h
atth
ee r
roneousbe
havi
orisdis
cov
ere
da ndcor
rec
tedbef
oret
hesys-
t
e mservi
cesar
eaffec
ted.
1
. Faultav oidanceDeve l
opme ntt
echni
que sareusedthate
itherminimizethe
possi
bilit
yofhuma nerrorsand/
ortha
ttrapmi s
tak
esbefor
et heyres
ultinthe
int
roduc t
ionofs yst
emf ault
s.Examplesofsuchtechni
quesincl
udea voi
ding
err
or-pronepr ogr
ammi nglangua
gec o
ns t
ruc
tssuchaspoint
e r
sandtheus eof
st
ati
ca na l
ysistodet
ectprogr
ama nomal
ies.
2
. Faultdetect
ionandremovalTheuseofver
if
icat
ionandva
lidat
iont
echni
ques
tha
ti ncrea
sethechance
sthatfa
ult
swillbedete
ctedandr
e movedbef
orethe
syst
emi sused.Sys
temati
ctest
inganddebuggi
ngi sanexampleofafault
-
det
ec ti
ontechni
que.
3
. Faultt
ole
ranceThesearete
chniquestha
tensurethatfault
sinasys
tem donot
res
ulti
nsyste
me r
rorsortha
tsystemerro
rsdonotr e
sultinsys
temfai
lures
.The
inc
orpora
ti
ono fse
lf-
checki
ngf aci
li
ti
esinas yst
ema ndtheuseofredunda
nt
syst
em module
sareexamplesoffaul
ttol
era
ncetechniques.
Th
epract
ic
alap
pli
cat
ionoft
hesetec
hni
que
sisdis
cus
sedi
nCh
apt
er13,wh
ich
c
over
ste
chni
quesf
ordep
e nd
abl
esoft
waree
ngi
nee
rin
g.
1
1.3 Saf
ety
Saf
ety-
cri
tic
als y
stemsaresyst
emswhe r
eitise s
sent
ialtha tsys
tem opera
tionis
al
wayssafe
;thatis
,thes
yste
ms houl
dneverd
ama gepeopleo rthesys
tem’senvir
on-
mentevenifthesyst
emf a
ils
.Example
sofs af
ety-c
rit
ica
ls ys t
emsincl
ud econtr
ol
300 Cha
pter11 ■ Dependabi
l
ityands
ecur
it
y
1. Pri
marysafe
ty-c
rit
icalsoftwareThisi
ss o
ftwa r
ethatise mbe dde
dasac on-
t
roll
erinasystem.Ma lfuncti
oningofsuchs oft
wa r
ec anc auseahardware
malf
uncti
on,whichresultsinhuma ninj
uryore n
vironme nt
a ldama
ge .The
i
nsuli
npumps oft
ware,introduce
di nChapter1,isane xampl eofaprimary
sa
fet
y-cr
it
ica
lsyste
m.Sys t
emf ai
lur
ema yleadtouserinjury.
2. S
e c
ondarysafety-c
r i
ti
calsoft
wareThi si
ss of
twa r
ethatcani ndire
ctl
yr e
sultin
a
ni nj
ury.Ane xamp l
eo fsuchsoft
wa r
eisac ompu t
er-a
idede ngineer
ingdesign
s
ystem whosema l
funct
ioningmightresul
tinade s
ignfaultintheobjectbeing
d
e s
igned.Thi
sf aul
tma yc aus
einjuryt
ope opleift
hed esi
gne dsyst
emma l
func-
t
ions.Anothere xampleofas econdarysafety-cr
it
icalsys t
emi stheme nt a
l
h
e a
lthcaremanage mentsyste
m, MHC- PMS. Fa i
lur
eofthissystem,whe r
ebya n
u
ns t
ablepat
ientma yno tbetrea
tedp r
oper
ly,c oul
dleadtot hatpati
entinj
uring
t
hems e
lvesorothers.
Systemrelia
bil
ityandsys
tems af
etya
rerelat
edbutare
lia
blesyste
mc anbe
unsaf
eandvicevers
a.Thesof
twaremayst
il
lbehav
einsuc
hawa yth
atthere
sul
tant
syst
em beha
viorle
adstoanacci
dent
.Ther
earefourr
eas
onswhysoft
wa r
esyst
ems
tha
tarere
lia
blearenotne
cess
ari
lysaf
e:
1. Wecanne v
erbe100% cer
tai
nthatasof
twar
es y
ste
mi sfaul
t-
freea
ndfau
lt-
t
oler
ant.Undet
ect
edf a
ult
sca nbedormantforalongt i
mea ndsof
twar
e
f
ail
uresca
noccuraf
termanyyear
so fr
eli
abl
eoperat
ion.
2. Thes pecif
ica
tionmaybei nc ompl e
teinthatitdoesnotde s
cri
betherequi
red
behaviorofthesyst
emi nsomec ri
ti
calsit
uat
ions.Ahighpe r
cent
ageofsyst
em
malfuncti
ons(Boehme tal
.,1975 ;Endres,
1975;Lutz,1993;Nakaj
oandKume ,
1991)a r
etheresul
tofs
pe c
ificat
ionrathert
hand e
signerro
rs.Inast
udyoferr
ors
i
ne mbe ddedsyst
ems,Lutzc oncludes:
...dif
fi
cul
ti
eswi
threqu
ireme
ntsa
retheke
yrootcaus
eoft
hes
afe
ty-
re
lat
edsof
twar
eer
ror
s,whic
hhavep
ers
ist
edunt
il
int
egra
ti
ona
nds
yst
em
t
esti
ng.
3. Hardwarema l
functi
onsmayc aus
ethesyst
emt obeha
vei nanunpredi
cta
ble
way,andpre
sentthesof
twar
ewithanunant
ici
pat
edenvi
ronment.Whencompo-
nent
sa r
ec l
osetop hys
ica
lfail
ure,t
heyma ybeha
veerrat
ical
lyandgenera
te
si
gnal
sthatareouts
idet
herangest
hatcanbehan
dledbythesoft
ware
.