Agile Team Dynamics by Bhavin Chandulal Javia

32
Agile Team Dynamics Bhavin Javia ThoughtWorks, B’lore [email protected] © ThoughtWorks 2010 18 th July 2010

description

AgileNCR 2010 conference was held in Gurgaon on 17th & 18th July 2010. This largest community driven conference was the Fourth edition of Agile NCR and was organized in collaboration with ASCI. This time the event was based on four major themes : 'Agile for newbies', ' Agile Adoption Challenges', 'Workshops and Software Craftsmanship', and ' Post Agile'.

Transcript of Agile Team Dynamics by Bhavin Chandulal Javia

Page 1: Agile Team Dynamics by Bhavin Chandulal Javia

Agile Team Dynamics

Bhavin Javia

ThoughtWorks, B’lore

[email protected]

© ThoughtWorks 2010

18th July 2010

Page 2: Agile Team Dynamics by Bhavin Chandulal Javia

Agenda

• How teams become “Agile” ?• Factors affecting Agile teams• Evolution of Team Dynamics • Q & A

© ThoughtWorks 2010 2

Page 3: Agile Team Dynamics by Bhavin Chandulal Javia

3

How teams become “Agile” ?

© ThoughtWorks 2010

Page 4: Agile Team Dynamics by Bhavin Chandulal Javia

© ThoughtWorks 2010 4

Agility

Page 5: Agile Team Dynamics by Bhavin Chandulal Javia

5

Manifesto of Agile Software Development

© ThoughtWorks 2010

Individuals and Interactions over Processes and Tools

Working Software over Comprehensive Documentation

Customer Collaboration over Contract Negotiation

Responding to Change over Following a Plan

“ while there is value in the items on the right, we value the items to the left more ”

Page 6: Agile Team Dynamics by Bhavin Chandulal Javia

6

Factors affecting Agile teams

© ThoughtWorks 2010

Customers

Distances

Time zones

Environment

Tools

People

Page 7: Agile Team Dynamics by Bhavin Chandulal Javia

© ThoughtWorks 2010 7

People

• Most important factor• Skills• Collective responsibility• Self organizing team• Relationships• Aspirations

Page 8: Agile Team Dynamics by Bhavin Chandulal Javia

© ThoughtWorks 2010 8

Customers

• Partners• Sponsors of innovation• Sponsors of growth• Relationship affects

team morale• Part of the team

Page 9: Agile Team Dynamics by Bhavin Chandulal Javia

© ThoughtWorks 2010 9

Distances

• Create hurdles for– Communication– Collaboration– Feedback– Relationship– Team work

Page 10: Agile Team Dynamics by Bhavin Chandulal Javia

© ThoughtWorks 2010 10

Time zones

• 24x7 work culture• Affects collaboration• Cultural issues

Page 11: Agile Team Dynamics by Bhavin Chandulal Javia

© ThoughtWorks 2010 11

Tools

• Right tool for the job• Tools forced top down

– fail on the ground

• Let the team choose• Shared toolset

Page 12: Agile Team Dynamics by Bhavin Chandulal Javia

© ThoughtWorks 2010 12

Environment

• Open work environment• No artificial barriers• Freedom of expression• Encourage innovation• Encourage “fail fast”• Positive energy

Page 13: Agile Team Dynamics by Bhavin Chandulal Javia

13

Evolution of Team Dynamics

© ThoughtWorks 2010

Page 14: Agile Team Dynamics by Bhavin Chandulal Javia

Agile Team Dynamics ?

• Challenges faced by the team• Practices and Processes evolved to solve challenges• Just “ the way an agile team works ”

© ThoughtWorks 2010 14

Forming Storming

Norming

Performing

Tuckman’s Group Development Model

Adjourning

Page 15: Agile Team Dynamics by Bhavin Chandulal Javia

15

Freelancer

• One man army• Collaborates only with customer • Independent decisions• Single point of failure

© ThoughtWorks 2010

Page 16: Agile Team Dynamics by Bhavin Chandulal Javia

16

Freelancer

© ThoughtWorks 2010

One man Army (must play all roles)

Takes up all roles,Learns from mistakes & failures

Independent Decisions (might remain unchallenged)

Takes opinion and support from the community

Single point of failure(increased risk to delivery)

Hires more freelancers or switches to a vendor

Page 17: Agile Team Dynamics by Bhavin Chandulal Javia

17

A Dev Pair

• Must be multi talented and multi functional• Team building starts• Easy collaboration with Customer• Introduction of Agile practices starts e.g. Pair Programming• Decisions get discussed/challenged• Sense of collective responsibility• Scaling issues begin to surface

© ThoughtWorks 2010

Page 18: Agile Team Dynamics by Bhavin Chandulal Javia

18

A Dev Pair

© ThoughtWorks 2010

Must be multi functional Pair splits, takes up different roles

Scalability challenges Code generation, Test automation frameworks begin to emerge

Lack of certain skills Forced learning happens,Specialists are hired for specific tasks

Page 19: Agile Team Dynamics by Bhavin Chandulal Javia

19

Small Collocated Team

• Team Structure– 2 Dev pairs – 1 BA – 1 QA

© ThoughtWorks 2010

Page 20: Agile Team Dynamics by Bhavin Chandulal Javia

20

Small Collocated Team

• Collective ownership and responsibility• Direct collaboration with customer• Distribution of workload• No communication overheads• Immediate and direct feedback• Overlap of roles

© ThoughtWorks 2010

Page 21: Agile Team Dynamics by Bhavin Chandulal Javia

21

Small Collocated Team

© ThoughtWorks 2010

Need for team space Team and customer move into an officeOpen, highly collaborative environment

Overlap of roles(confusion and conflicts)

Roles get defined and assigned

Page 22: Agile Team Dynamics by Bhavin Chandulal Javia

22

Small Distributed Team

• Team Structure– 1 Dev pair (onsite)– 1 BA (onsite)– 1 Dev pair (offshore)– 1 QA (offshore)

© ThoughtWorks 2010

Page 23: Agile Team Dynamics by Bhavin Chandulal Javia

23

Small Distributed Team

• Onsite team collaborates directly with Customer• Offshore team collaborates indirectly with Customer• Work gets done 24x7• Collaboration challenges surface• Division of responsibilities• Lack of context begins to hurt• Communication overheads due to distance/time differences• Feedback cycles become larger• Cultural issues surface

© ThoughtWorks 2010

Page 24: Agile Team Dynamics by Bhavin Chandulal Javia

24

Small Distributed Team

© ThoughtWorks 2010

Collaboration challenges Collaboration tools emergeWorking hours adjusted to create overlap

Lack of context Rotation of people between locationsDaily stand-up meetings and calls

Larger feedback cycles Collective code ownership encouragedContinuous Integration is introduced

Page 25: Agile Team Dynamics by Bhavin Chandulal Javia

25

Large Collocated Team

• Team Structure– 8 Dev pairs– 2 BAs– 2 QAs– 1 IM/PM

© ThoughtWorks 2010

Page 26: Agile Team Dynamics by Bhavin Chandulal Javia

26

Large Collocated Team

• Higher capacity to deliver• Collaboration with Customer gets indirect• Collective ownership begins to hurt• Difficult to roll out technical and process changes• Need for Managers become apparent• Need for Tracking tools felt

© ThoughtWorks 2010

Page 27: Agile Team Dynamics by Bhavin Chandulal Javia

27

Large Collocated Team

© ThoughtWorks 2010

Customer’s availability BAs become proxy customersUser stories get larger – well defined requirements

Collective ownership hurts Dev huddles, Dev lunches, Dev trainingIndividual BAs start owning features

Difficult to rollout changes(conflicts of opinion, lack of awareness)

Leadership from Tech leads/Sr Devs Technology/Process coaches called in

Page 28: Agile Team Dynamics by Bhavin Chandulal Javia

28

Large Distributed Team

• Team Structure– 2 Dev pairs (onsite)– 1 BA (onsite)– 1 PM (onsite)– 6 Dev pairs (offshore)– 2 BAs (offshore)– 2 QAs (offshore)– 1 IM (offshore)

© ThoughtWorks 2010

Page 29: Agile Team Dynamics by Bhavin Chandulal Javia

29

Large Distributed Team

• Collaboration becomes difficult• Customer availability and feedback becomes scarce• Collective ownership hurts more• Scaling challenges peak• High expectations from offshore team• Customers may not realize all the challenges• Localized groups of expertise begin to form• Difficult situations turn into ugly Blame Games• People become “email addresses” or “voices over phone”

© ThoughtWorks 2010

Page 30: Agile Team Dynamics by Bhavin Chandulal Javia

30

Challenges and Solutions

© ThoughtWorks 2010

Collaboration becomes difficult Tracking and collaboration tools usedTime overlap b/w two teams increasedSeparation of responsibilitiesDaily hand off calls

Scaling challenges peakHigh expectations of customer

Specialized sub-teams createdShowcases, Daily updates, ReportsFrequent releases

People become emails/voices,Blame games

Video conferencing introducedGreater rotation between teams soughtTeam ambassadorsTeam building activities – Outings, Goodies

Page 31: Agile Team Dynamics by Bhavin Chandulal Javia

© ThoughtWorks 2010 31

Q & A

Page 32: Agile Team Dynamics by Bhavin Chandulal Javia

© ThoughtWorks 2010 32

[email protected]