catarci/hcislides/agile.pdf · agile software development, agile 2006 conference, minneapolis,...

Post on 21-Mar-2020

10 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

���������� �������������

��������������

� ���������������

��������� ��! ���"������� ������������ ������������� ��� �

#���� �����������$%��������&�'

(���� ��)**+

%� � ��������

� The Agile approach

� Extreme Programming (XP)

� Implementing XP into a software project

� Introducing HCI design into agile software

development

� Summary

� 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

, ��������������� ������������

���������������� ���������������������������������������������� ������������� �!"�#$$%�&'��������������(������� '�)"

����'���*�� ������+"�&( ����#$$$)"��������������������������������,������- ���������� .�����������/��'�������� ��������!������&0)"

���� �������������� ���������'��'����'������������& ���)�� ���1���������( ���2%��2332"

"���������- ������

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.

http://agilemanifesto.org/

���������� �������������- �����

� Adaptive� Crystal� DSDM� Extreme Programming� FDD� Lean Development� Scrum

All acknowledgethat the main issue

of software development is

people: customers,

communication

.������/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�.������'����.�����������������'� ��

�������'�!�����������"7 ������233345������.� ���������������"7������2�'�'�������2338

.���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�����������������;/����������'�<������������� �������������������������"�#%8-#$="

����/0 ����, �� ������1

����������

�� ��� ��������� � ��

�������� � ������ �

3�����������

� On-site customer

� Planning game

� Small releases

� Simple design

� Metaphor ������������ ������ ������� ������� �

�����2,1�4 , �5� �"�������67� ���������� ������8�9��� �������������������

Release 2 starts

Week 8, Release 1, Iteration 4

Week 7, Release 1, Iteration 4

Week 6, Release 1, Iteration 3

Week 5, Release 1, Iteration 3

Week 4, Release 1, Iteration 2

Week 3, Release 1, Iteration 2

Week 2, Release 1, Iteration 1

Week 1, Release 1, Iteration 1

Business DayBusiness Day

Business Day

Business Day

Business Day

��������������

� Stand-up meeting � The development environment

� Pair programming � Testing (Test Driven Development) � Code standards� Refactoring � Simple design� Continuous integration� Collective ownership � Sustainable pace

������������ ������ ������� ������� �

/0 ����, �� �������, � � ��

Collective ownership

Pair programming

Sustainable pace

On-site customer

Planning game

Metaphor

Refactoring

Simple design

Coding standards

Testing

Continuous integration

Small releases

Human/Social Perspective

Code/Technical Perspective

2,�� � � �������� ��� �����

���������������� ���������������������

���������� ������������

Beck, K. (2000). eXtreme Programming explained, Addison Wesley.

�����:2,����, � � �6�

��� �������������

� XP encourages changes in the organizational

culture:

� Cooperation (vs. knowledge-is-power)

� Simplicity (vs. habit-of-increase-complexity)

� Change in work habits

� Change in customer’s conception, involvement and relationships with the software team

"������������������

�����:2,��������� ��

"����� �

� 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

� First pilot (2005)

�����������

����� ��- ����

� 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 International Conference on Enterprise Information Systems (ICEIS), 23-27 May 2006, Paphos, Cyprus.

��&��- � � �

0200400600800

10001200140016001800

End of 1stIteration

End of 2ndIteration

End of 3rdIteration

End of 4thIteration

Nu

mb

er o

f Tes

t Poi

nts

Successful Test Points Failed Test PointsTest Steps that did not run

Talby D., Hazzan O., Dubinsky Y., and Keren A. (2006). Agile software testing in a large-scale project, IEEE Software, Special Issue on Software Testing, July-August, 2006.

��&��- � � ��; 3�����������

0 100 200 300 400 500 600 700

Account

Bank

Mortgage

Warning

Marketing

Financing

Com

pone

nt N

ame

Number of Test Points

Iteration 1 Iteration 2 Iteration 3 Iteration 4

,�����- � � �

020406080

100120140160180

02/01

/2005

09/01

/2005

16/01

/2005

23/01

/2005

30/01

/2005

06/02

/2005

13/02

/2005

20/02

/2005

Days of Release

Num

ber

of C

heck

-in

Ope

ratio

ns

3� �4����

050

100150200250300350400450

0 1 2 3 4 5 6 7 8

Week Number

Day

s

Remaining Work Remaining Resources

��

3� �4�����- � � ��; .�����<�=�>

0 10 20 30 40 50 60 70

Account

Bank

Mortgage

Marketing

Financing

Development

(Overhead)

Sof

twar

e C

ompo

nent

s

Days

Remaining Work Remaining Resources

0 5 10 15 20 25 30 35

Account

Bank

Mortgage

Marketing

Financing

Development

(Overhead)

So

ftwar

e C

ompo

nent

s

Days

Remaining Work Remaining Resources

��

���� ���

� 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

Talby D., Hazzan O., Dubinsky Y., and Keren A. (2006). Reflections on Reflection in Agile Software Development, Agile 2006 Conference, Minneapolis, Minnesota.

��

����������������

� The Catalogue Browsing Project� Implementing a new access paradigm� Speech based interface� Involving agile and HCI design approaches� Collect user evaluation data and agile metrics� Thanks to Claudio Di Ciccio and Andrea Iannitti

��

!���"���#�$%��&������$�'��(�����"&'�

��

"&'�) ����*

��

"&'�) %�����+�#%�����

33I prefer interfaces that do not include speech

33I expect to use more speech interfaces in the

future

24Speech interfaces are annoying

141Speech interfaces are fun

42I feel uncomfortable with speech interfaces

1121Speech interfaces are slow

231I use speech interface when I can

51I have experience with speech interfaces

1311I like interfaces with speech features

SAADSDStatement

��

"&'�) ����%�����+�#%�����

39.161426.58S � Non-S

81.332854.66Non-S � S

Averaged Ssearch duration

Averaged Non-S search

durationAveraged search

durationGroup

Averaged search time in minutes

��

"&'�) �$�#�� ������

"&'�) �$�#�� �������) ����*

����� �

� Achieving the XP/Agile change� Learn by experience the approach and methodology� Foster customer collaboration� Test and measure all the way� Foster knowledge sharing� Maintain short iterations while sustainable pace

More about CBP under http://www.dis.uniroma1.it/~catalogue/

You are invited to contact us if you wish to participate in such a project

top related