! "
# $% & '
%
The Agile approach
Extreme Programming (XP)
Implementing XP into a software project
Introducing HCI design into agile software
development
75% of the enterprise software products are considered to be a failure – there are not in use or do not fit customer’s requirements
Software errors cost US economy $59.5 billion annually (In Q2 of 2003 – investments of $200 billion in software development)
It is a common practice to hire inexperienced young programmers at minimum rates as testers, while taking too much time to resolve defects is considered wasteful and is not rewarded
"
-Individuals and interactions
over processes and tools
Working software
over comprehensive documentation
Customer collaboration
over contract negotiation
Responding to change
over following a plan
That is, while there is value in the items on
the right, we value the items on the left more.
-Adaptive
Crystal
DSDM
Extreme Programming
FDD
Lean Development
Scrum
All acknowledge
that the main issue
of software
development is
.
/0
,
1
Extreme Programming emerged by software practitioners
Differences from traditional methodologies
Emphasis on people
vs.
development activities & schedule
XP specifies how to behave; still leaves freedom
12 practices
4 values: feedback, simplicity, communication, courage
The meaning of ‘Extreme’
Beck, K. (2000). Extreme Programming explained, Addison Wesley.
45
-6. ' . '
.
2,1
Survey:
31 XP/Agile-methods early adopter projects
14 firms
Findings:
Cost reduction:
5-7% on average
Time to market compression:
25-50% reduction
1 +" &2332)" 9 :6 ;/
Stand-up meeting
The development environment
Pair programming
2,
:2,
, 6
XP encourages changes in the organizational
culture:
Cooperation (
vs.
knowledge-is-power)
Simplicity (
vs.
habit-of-increase-complexity)
Change in work habits
"
Strategic decision (Oct 2003)
Reduce the time from user requirement to software response
Reduce overspec
Increase suitability of product to need
Increase responsibility & professionalism
The support of leadership
Preparation (2004)
Learning and experience workshop
-Qualitative
(questions for example)How do teammates conceive the change?
What process characteristics can and should be measured?
In which frequency should each metrics be measured?
Quantitative
(questions for example)What is the work progress?
What is the status of the project resources?
What is the quality of the product?
How continuous is the integration?
Dubinsky Y., Hazzan O., Talby D., and Keren A. (2006). System Analysis and Design in a Large-Scale Software Project: The Case of Transition to Agile Development, The 8th
&
-0 200 400 600 800 1000 1200 1400 1600 1800 End of 1st Iteration End of 2nd Iteration End of 3rd Iteration End of 4th Iteration N u m b er o f T es t P oi n tsSuccessful Test Points Failed Test Points
Test Steps that did not run
& -
; 3
0 100 200 300 400 500 600 700 Account Bank Mortgage Warning Marketing Financing C om po ne nt N am eNumber of Test Points
3
4
0 50 100 150 200 250 300 350 400 450 0 1 2 3 4 5 6 7 8 Week Number D ay s3
4
-
; .
<= >
0 10 20 30 40 50 60 70 Account Bank Mortgage Marketing Financing Development (Overhead) S of tw ar e C om po ne nt s DaysRemaining Work Remaining Resources
0 5 10 15 20 25 30 35 Account Bank Mortgage Marketing Financing Development (Overhead) S o ftw ar e C om po ne nt s Days
Experienced participants emphasized
The real
feedback
they get every two weeks
The
fixed dates
of delivery
The ease of combining inexperienced people
The
awareness of problems
almost when occur
Younger participants were satisfied
From the
direct communication
with the customer
From the process itself
Most developers wrote the word "
people
" answering what
they liked most
The Catalogue Browsing Project
Implementing a new access paradigm
Speech based interface
"&') %
+ #
%
3 3
I prefer interfaces that do not include speech
3 3
I expect to use more speech interfaces in the future
2 4
Speech interfaces are annoying
1 4
1 Speech interfaces are fun
4 2
I feel uncomfortable with speech interfaces
1 1
2 1
Speech interfaces are slow
2 3
1 I use speech interface when I can
5 1
I have experience with speech interfaces
1 3
1 1
I like interfaces with speech features
SA A
D SD