Extreme Programming
Extreme Programming
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide1
Agile methods
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide2
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide3
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide4
Extreme programming
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide5
Selec
Bre
storie
Pl
stor
relea
Evalu
Rel
De
r
syste
soft
te
The XP release cycle
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide6
Small Releases
Simple Design
Refactoring
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide7
Collective Ownership
On-site Customer
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide8
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide9
Customer involvement
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide10
Requirements scenarios
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide11
Down
First,
Y
o
u
y
then
h
be
thro
card.
After
t
when
y
onto
.
y
Y
o
u
the
Y
o
u
tell
the
If
the
t
ke
a
so it. is
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide12
XP and change
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide13
Refactoring
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide14
Testing in XP
Test-first development.
Incremental test development from
scenarios.
User involvement in test development and
validation.
Automated test harnesses are used to run all
component tests each time that a new
release is built.
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide15
T
aT
sk1:
aT
sk2
a
sk3
Paym
fere
Th
select
.
If
has
a
subsc
system
Alter
,
the
ga
accou
.
If
t
of
,
may
i
date.
This
valid
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide16
eInput:
T
T
e
edit
st
st
4:
cr
c
A
string
the
mo
eCheck
T
sts:
year
.
is
Using
,
check
card
is
numbe
issuer
Outpu
OK or
Test case description
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide17
Test-first development
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide18
Pair programming
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide19
Problems with XP
Customer involvement
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide20
Problems with XP
Architectural design
Test complacency
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide21
Key points
IanSommerville2004
SoftwareEngineering,7thedition.Chapter17Slide22