Académique Documents
Professionnel Documents
Culture Documents
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide1
Objectives
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide2
Topics covered
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide3
Software change
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide4
Importance of evolution
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide5
Imp
Spec
Star
t
Rele
Oper
V
a
lid
Rele
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide6
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide7
Lehmans laws
Law
Description
Continuing change
Increasing complexity
Organisational stability
Conservation of
familiarity
Continuing growth
Declining quality
Feedback system
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide8
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide9
Software maintenance
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide10
Maintenance is inevitable
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide11
Types of maintenance
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide12
F
a
ult
(1
7%)
F
u
nc
Softw
add
adap
mo
(1
8%)
(65
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide13
Maintenance costs
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide14
S
y
stem
S
y
stem
$
45
0
0
5
0
1
0
1
5
0
2
0
2
5
0
3
0
3
5
0
40
5
0
De
v
elopm
Mai
Development/maintenance costs
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide15
Team stability
Contractual responsibility
Staff skills
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide16
Maintenance prediction
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide17
W
h
ts
at
wil
W
h
ts
at
of
par
th
to
most
lik
change
Pred
main
W
h
a
ma
Pred
sy
Predi
main
chan
cost
W
h
a
How
m
ma
reques
ov
expect
Maintenance prediction
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide18
Change prediction
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide19
Complexity metrics
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide20
Process metrics
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide21
Evolution processes
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide22
Cha
pro
New
Ch
Soft
pro
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide23
Change
Impac
Rele
Ch
S
y
s
request
anal
ysis
plan
imp
tio
r
e
Platf
S
y
st
F
ault
re
adap
enh
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide24
Change implementation
Propo
Requ
R
e
em
qu
So
a
e
chang
anal
ysis
upd
tin
de
v
el
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide25
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide26
Emergency repair
Chan
Anal
ys
e
Mo
D
v
e
r
resour
ce
ques
sou
ce
sy
c
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide27
System re-engineering
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide28
Advantages of reengineering
Reduced risk
Reduced cost
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide29
S
y
stem
Des
N
w
speci
tion
imp
sy
F
o
ar
d
inee
rw
eng
Exist
Und
R
e
in
e
softw
ar
e
tr
ans
or
ma
tio
sys
sy
Softw
e-en
inee
r
Forward and re-engineering
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide30
Mo
Pr
og
ram
O
in
Orig
inal
pro
ram
docu
prog
ram
Rever
eng
ineer
Da
Prog
ram
Source
rein
mod
transla
Prog
ram
struct
impro
Stru
Re
in
prog
ram
da
The re-engineering process
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide31
Reverse engineering
Program modularisation
Data reengineering
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide32
A
u
ted
o
g
r
a
tom
Pr
m
o
g
r
a
ta
m
p
r
e
stru
e
s
A
u
ted
ce
tom
A
u
ted
est
tom
R
e
s
s
code
v
ewith
rsio
ual
ar
ch
a
In
e
Re-engineering approaches
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide33
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide34
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide35
High
Hig
Low
9
1
0
8
6
7
Lo
Low
Hi
2
5
134
S
yste
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide36
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide37
System end-users;
Business customers;
Line managers;
IT managers;
Senior managers.
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide38
Environment assessment
Application assessment
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide39
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide40
Environment assessment 1
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide41
Environment assessment 2
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide42
Application assessment 1
Factor
Questions
Understandability
Documentation
Data
Performance
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide43
Application assessment 2
Programming
language
Configuration
management
Test data
Personnel skills
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide44
System measurement
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide45
Key points
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide46
Key points
IanSommerville2004
SoftwareEngineering,7thedition.Chapter21Slide47