some research on agile software developmentfeldt/presentations/feldt_2010...some research on agile...

34
Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of Software Engineering HOSE Lab (H uman-fO cused SE ) tisdag den 23 november 2010

Upload: others

Post on 12-Jun-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Some Research on Agile Software Development

Robert FeldtSAST Väst, Lindholmen, 2010-11-23

Division of Software EngineeringHOSE Lab (Human-fOcused SE)

tisdag den 23 november 2010

Page 2: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Motivation in 22 agile devs [Whitworth2007]

tisdag den 23 november 2010

Page 3: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Motivation in 22 agile devs [Whitworth2007]

Daily meeting

Ease of Interaction

Enjoyment &

Excitement

tisdag den 23 november 2010

Page 4: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Motivation in 22 agile devs [Whitworth2007]

Daily meeting

Ease of Interaction

Enjoyment &

Excitement

Planning Game

Adjust to individual needs

tisdag den 23 november 2010

Page 5: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Motivation in 22 agile devs [Whitworth2007]

Daily meeting

Ease of Interaction

Enjoyment &

Excitement

Planning Game

Re-prio & re-planning

Adjust to individual needs

tisdag den 23 november 2010

Page 6: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Motivation in 22 agile devs [Whitworth2007]

Daily meeting

Ease of Interaction

Enjoyment &

Excitement

Planning Game

Re-prio & re-planning

Motivation

Collective Participation

Adjust to individual needs

tisdag den 23 november 2010

Page 7: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Motivation in 22 agile devs [Whitworth2007]

Daily meeting

Ease of Interaction

Enjoyment &

Excitement

Planning Game

Re-prio & re-planning

Motivation

Collective Participation

Adjust to individual needs

Short iterations

Regular Delivery & Feedback

tisdag den 23 november 2010

Page 8: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Motivation in 22 agile devs [Whitworth2007]

Daily meeting

Ease of Interaction

Enjoyment &

Excitement

Business Value Focus

Clear Objective

Common goal

Planning Game

Re-prio & re-planning

Motivation

Collective Participation

Adjust to individual needs

Short iterations

Regular Delivery & Feedback

tisdag den 23 november 2010

Page 9: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Personality and Teams

[Acuna2009]

tisdag den 23 november 2010

Page 10: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Input - Process - Output Model

[Acuna2009]

tisdag den 23 november 2010

Page 11: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Personality and Teams

[Acuna2009]

tisdag den 23 november 2010

Page 12: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Linking Personality to Views & Attitudes

tisdag den 23 november 2010

Page 13: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

tisdag den 23 november 2010

Page 14: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

PersonalityTest

tisdag den 23 november 2010

Page 15: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

PersonalityTest

SE Views & Attitudes

tisdag den 23 november 2010

Page 16: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

PersonalityTest

SE Views & Attitudes

Patterns?

tisdag den 23 november 2010

Page 17: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

PersonalityTest

SE Views & Attitudes

Patterns?

tisdag den 23 november 2010

Page 18: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

PersonalityTest

SE Views & Attitudes

Patterns?

Younger,Many things same time,

Parts of projects,Male

tisdag den 23 november 2010

Page 19: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

PersonalityTest

SE Views & Attitudes

Patterns?

tisdag den 23 november 2010

Page 20: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

PersonalityTest

SE Views & Attitudes

Patterns?

Prefer working (with)?

tisdag den 23 november 2010

Page 21: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

PersonalityTest

SE Views & Attitudes

Patterns?

Prefer working (with)?

Take decisions affecting quality?

tisdag den 23 november 2010

Page 22: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Personality and Software Engineering

Intense personality <->

multiple projects

parts of projects

Age & Gender differences

Higher Extraversion <->

prefer team work

prefer plan & schedule

Higher Openness <->

whole project responsibility

[Feldt2010]

tisdag den 23 november 2010

Page 23: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Agile (RE) Practices - Pro / Con

Saves time

Customer drives

Face2Face communication & User stories

Requires trust

Not all user groups represented

Customer on site

Iterative req engineering

Clearer reqs

Customer relation

Minimal docs when problems

Cost & schedule estimation

Non-functional requirements[Cao2008]

tisdag den 23 november 2010

Page 24: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Agile Practices - Pro / Con

“Extreme” Prioritization

“Business Value” to narrow

Managing Change through Constant replanning

Fewer changes

Smaller changes

Architecture suffers

“Refactoring” not enough

Clearer reasons

Re-prio is easier Instable with re-prio

[Cao2008]

tisdag den 23 november 2010

Page 25: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Agile Practices - Pro / Con

Prototypes

Unrealistic dev speed expectations

Test-driven DevelopmentTests capture reqs

Freedom to experiment

Requires close customer collab

Developers resist

Quicker feedback

Reviews & Acceptance testsStatus report to

customersHard to create acc.tests

[Cao2008]

tisdag den 23 november 2010

Page 26: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

[Kniberg2008]

?

tisdag den 23 november 2010

Page 27: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Up to 2006

tisdag den 23 november 2010

Page 28: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Introduction & Adoption

Human & Social Factors Perceptions Comparisons

tisdag den 23 november 2010

Page 29: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Agile practices easy to introduce and work well

Difficult to intro in large/complex organizations

Benefits:Customer collaboration

Defect handling processesLearning among developers

Estimation of time/cost easier

Some studies saw pair programming as inefficient

XP works best with experienced teams

Introduction & Adoption

Human & Social Factors Perceptions Comparisons

tisdag den 23 november 2010

Page 30: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Introduction & Adoption

Human & Social Factors Perceptions Comparisons

XP well accepted in different organizations (hierarchical structure to little or no control)

Good interpersonal skills and trust important for successful XP teams

Individual autonomy must be balanced with team autonomy

Making progress tracking visible and audible important

Important standardization of collaborative work

tisdag den 23 november 2010

Page 31: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Introduction & Adoption

Human & Social Factors Perceptions Comparisons

Customers liked more (give/get) feedback

On-site customer stressful/unsustainable

Developers more satisfied with work and product

Pair programming considered tiring since it required focused concentration

Pair programming hard when skills differ much

Test-driven development was difficult

tisdag den 23 november 2010

Page 32: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Introduction & Adoption

Human & Social Factors Perceptions Comparisons

Agile can more easily incorporate changes and show business value

Can be combined with traditional stage-gate project management

Subjects believe agile increases productivity

tisdag den 23 november 2010

Page 33: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

XP Buy-in [Gray2006]

tisdag den 23 november 2010

Page 34: Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile Software Development Robert Feldt SAST Väst, Lindholmen, 2010-11-23 Division of

Sources• Dybå & Dingsöyr, “What do we know about agile sw dev?”, IEEE Software,

2009

• Feldt et al, “Links Between the Personalities, Views and Attitudes of Software Engineers”, IST, 2010

• Whitworth et al, “Motivation & Cohesion in Agile Teams”, XP Conf 2007

• Gray et al, “Forming successful XP teams”, AGILE Conf. 2006

• Cao et al, "Agile Requirements Engineering Practices: An Empirical Study," IEEE Software, vol. 25, no. 1, pp. 60-67, Jan./Feb. 2008.

• Kniberg, H., Slides on “Agile and Lean Software Development”, Crisp AB, 2008.

• Acuna et al, “How do Personality, Team Processes and Task Characteristics Relate to Job Satisfaction and Software Quality?”, IST, 2009.

tisdag den 23 november 2010