Some Research on Agile Software Developmentfeldt/presentations/feldt_2010...Some Research on Agile...

Post on 12-Jun-2020

0 views 0 download

transcript

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

Motivation in 22 agile devs [Whitworth2007]

tisdag den 23 november 2010

Motivation in 22 agile devs [Whitworth2007]

Daily meeting

Ease of Interaction

Enjoyment &

Excitement

tisdag den 23 november 2010

Motivation in 22 agile devs [Whitworth2007]

Daily meeting

Ease of Interaction

Enjoyment &

Excitement

Planning Game

Adjust to individual needs

tisdag den 23 november 2010

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

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

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

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

Personality and Teams

[Acuna2009]

tisdag den 23 november 2010

Input - Process - Output Model

[Acuna2009]

tisdag den 23 november 2010

Personality and Teams

[Acuna2009]

tisdag den 23 november 2010

Linking Personality to Views & Attitudes

tisdag den 23 november 2010

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

tisdag den 23 november 2010

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

PersonalityTest

tisdag den 23 november 2010

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

PersonalityTest

SE Views & Attitudes

tisdag den 23 november 2010

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

PersonalityTest

SE Views & Attitudes

Patterns?

tisdag den 23 november 2010

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

PersonalityTest

SE Views & Attitudes

Patterns?

tisdag den 23 november 2010

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

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

PersonalityTest

SE Views & Attitudes

Patterns?

tisdag den 23 november 2010

Linking Personality to Views & Attitudes

47 Industrial SW Engineers

PersonalityTest

SE Views & Attitudes

Patterns?

Prefer working (with)?

tisdag den 23 november 2010

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

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

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

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

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

[Kniberg2008]

?

tisdag den 23 november 2010

Up to 2006

tisdag den 23 november 2010

Introduction & Adoption

Human & Social Factors Perceptions Comparisons

tisdag den 23 november 2010

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

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

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

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

XP Buy-in [Gray2006]

tisdag den 23 november 2010

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