Title: Agile Experience
1Agile Experience
- communication and collaboration in agile software
development teams
Elizabeth Whitworth 7th September, 2006
2Research quest?on
- What is the experience of being in an agile
software development team?
3Research quest?on
How do agile practices structure and mediate the
experience of individuals developing software?
What are the socio-psychological
characteristics surrounding agile practices and
individuals within a software development team?
4Study data
- 18 one-on-one interviews
- agile software development literature and
community interaction
5Content of interviews
- cohesive vs. non-cohesive teams
- agile vs. non-agile teams
- personal experiences and/or team activity
- project characteristics
6Grounded theory
- theory generation
- line-by-line coding
- memoing and analysis of data
- results of study
- high level understanding
- confirmation from participants
7Cohesive teamwork
- strong feelings of excitement
- teams that clicked,gelled,really worked
together
agile methodologies were seen to support team
cohesiveness more so than traditional software
development methodologies
8Agile practices
- the planning game
- continuous integration
- iterative development and delivery
9Agile practices
- daily stand-ups
- information radiators
- shared team rooms
- pairing
10Ease speed
- Agile culture
- openness, honesty
- ? transparent environment
- trust, respect
- ? action-based culture
- whole team involvement and availability
- ? frequent interaction and immersion
11Collective activity
- Buy-in to shared team goals
- provide the most business value to the customer
in the least amount of time
12Collective activity
- prioritization chunking of activity
- development around working software
- ? ? ? ? ? ?
- reduce cognitive load
- importance and immediacy
- discipline and rigor
- clear measures of success
13holistic awareness understanding
- of team
- of project
- of product
- Context-rich information exchange and activity
14holistic awareness understanding
- team
- familiarity and understanding
- observe and refine working relationships
- project
- involvement and interest
- helping and support
- product
- purpose and meaning
- opportunistic action and collaboration
15Whole team awareness feedback
- constant feedback
- whole team awareness and understanding
- commitment towards team goals
- frequent and noticeable progress
- for example
- highly visible information radiators
- daily or weekly team meetings
16 Whole team awareness feedback
- whole team agreement, approval, and action
- frequent and informal team interactions
- ? ? ? ? ? ? ? ? ? ? ? ? ?
- social accountability and responsibility
- recognition and appreciation
- support and motivation
- shared team goals
- self-regulating teams
17Conclusion
- detailed and transparent planning and activity
- certainty in the project environment
- social accountability and support
- Holistic understanding and competence
- security and control
- investment and involvement
- pride and ownership
- balance of structure and freedom
- individual freedom and initiative
- ability to assess relative importance of goals
18Next steps
- further investigation
- observational studies
- psychological literature
- areas for future study
- critical success factors
- negative phenomena
- agile practices
- application
- non-traditional contexts
19 Quest?ons
20(No Transcript)
21(No Transcript)
22(No Transcript)
23Conceptual framework
- Teamworking
- Self-regulating, self-managing,
high-performance
sociotechnical systems theory the study of the
relationships and inter-relationships between the
social and technical parts of any system. -
Coakes (2000)
systems thinking holistic, emergent effects,
dynamics of regulation
24Study focus the agile system
- This study involved the agile system made up of
individuals, agile technology, and the group as a
whole
Particularly the relationships between system
entities interdependencies emergent effects,
such as flow feedback and feedforward
mechanisms effects of technology
25Interview data
- 18 interviews
- five developers, three interaction designers,
five project managers, two agile coaches, three
developers/project managers - Recruited at conferences, and through contacts in
the agile software development community - 5 members of the same software development team
- Software development community
- agile software development conferences and
workshops - practitioner literature (print and online )
- online correspondence
26Conducting interviews
- Example Questions (initial)
- Could you pick a software development team that
you found particularly enjoyable or exciting to
work in and describe it to me? - Could you describe the physical space the team
was in? - What was the experience of working in such a
team? - Did you feel that being in the same room
effected your interactions with your team-mates?
How so? - Example Questions (later)
- Did you feel like you were part of the team?
Why/why not? - Did you feel that you were able to approach your
team members to ask for help? Why/why not? - How was responsibility divided among team
members? How did you ensure that everything that
needed to get done got done?
27Coding
- Coding occurred line-by-line and provided a means
of comparison across diverse participant
experiences - Common themes were extracted as categories and
explored across situations/participants
28Theoretical categories
- Theoretical categories and related properties and
dimensions were developed based on codes and
memos - Diversity of data in this study, and complex
nature of interactions made it difficult to
define a core category about which to construct a
comprehensive theory
29(No Transcript)
30(No Transcript)
31extra notes - awareness
32extra notes - conclusion
- Success, progress and change