johanna rothman chapter 2 building the cross-functional...
TRANSCRIPT
Johanna Rothman
Chapter 2
Building the Cross-Functional
Collaborative Team
Copyright © 2017
The team that delivers features…
… is the team that believes they are a product development team
What the team might need?
… data base skills, data base administration and/or data modeling skills, documentation skills (can “write”)
… the team needs to be able to assess performance, reliability or any other system quality
… a Product Owner with sufficient time to dedicate to the team
… responsible for providing a Priority Ordered Product Backlog
… specifying the Features and the user needs associated with each feature
The team that delivers features…
requires… a development methodology “coach”
“Agile approaches require people to change their
mindsets and culture.”
Rothman calls “… everyone on the team a developer”
“All” dedicated to a single purpose… to release features
on a frequent basks
What are the requirements the team must fulfill?
What are the team requirements?
• The team has all the people (with skills and capabilities) it needs to complete the work
• Team does not change people for a given feature
• The team has a shared goal for its project!
• The team “owns” its work!
• Members commit to their work and they own their artifacts, including the code and test
• The does not change the people inside an iteration
• The team is stable, so they can learn to work together and learn…
• If the team uses iterations, no one changes what the team commits to for that iteration
Agile team roles
The Product Owner
Decides which features the team will work on in each
iteration… and when
(priority ordered Product Backlog)
The team makes its own work decisions
… and owns them
The team decides how the team will do the work.
Team Size Matters
Communication Quickly Become Complex
Team Size Matters
Communication Quickly Become Complex
6 people have 6 5 connections
Half of the 30 are redundant6 × 5
2= 15
(15 unique connections)
When teams are too large…
Eight persons require 24 communication paths
“Once you get to 21 paths, many of us don’t talk with
the entire team.”
A group of ten will “naturally” divide into smaller sub
teams that actually can work together
With large feature requirements, management most
often creates large teams!
What alternatives?
What to do with a large team?
Create smaller cross-functional teams
Make stories smaller
Organize by feature or feature set… and have “feature
teams” with each with no more than six members
Feature sets could be distributed to each team
With team size greater than nine… to reduce the size,
individual team members may be able to take on more
responsibilities
Asking teams to organize themselves?
Manager’s mistake… assigning people to cross-functional
teams
Without little knowledge of individual skills, experience and “what
a team member wants to learn”…
… and not knowing what each individual’s experience has been
The “you, you … and you” approach
“When team members self-select their areas of interest, they
have purpose.
They start to exercise their autonomy so they can build
more mastery…
Let the team members decide what features to work on and
whom to work with”
Asking the team to organize themselves
Gather team…
Explain the teams that are needed (admin, diagnostics,
search, etc.)
Post on wall a set of charts… each with a feature name
Members line-up by the chart with the feature they
would like to work on
Member names are recorded (along with their
“capabilities”) for each feature chart
Identify capabilities that might be missing (Product
Owner, UI/UX, testing… etc.)
Asking the team to organize themselves
Feature teams with missing capabilities… may qualify
as a “full feature” team
One alternative… have team members work in pairs
collaborating, learning and acquiring the needed
capabilities
“In Rothman’s experience, teams of 4 to 6 people are
just about the right size
… In agile teams, there’s a couple of developers, a
tester, and a product owner…”
The team’s Social Contract
Creating a agile culture “… what people can say, how
they treat each other, and what the organization rewards
The social contract helps team members articulate how
they are willing to work in the form of values and
working agreements.”
The team (or its members) may say one thing and do
something… else
Teams… considering their values
Values are how people treat each other
An activity to identify your team’s values:
Ask everyone to meet for about 30 minutes
Each member has an index card and a magic marker
Each member fills in the sentence:
“I don’t like it when someone/people …”
Write down anywhere from 2 to 5 of these sentences
Divide the team into pairs
Each pair selects one card…
Write down a statement that counters the negative statement
“I don’t like it when someone/people …”
The statements that counter the negative statement
Example
“I don’t like it when some people tell me what to do”
Counter statement
“I like it when people discuss our technical approach as a
team”
Continue until each pair addresses all the statements
Have the pairs read each “like it when…” statement
Capture the counter statements … post these in clear
view of all members of the team
Next… the team’s working agreements
The way team members intend to work together…
For example:
Core hours – so everyone knows when members are available
What does “done” mean?
What a team member expectations for meetings… attendance, lateness, laptop/phone use?
Testing - what the team automates and when
How the team responds to emergencies… support, collaboration
Working agreements shape expectations
Sustainable Pace agreement … day in and day out –week after week
Table 3 – Adaptation of Hackman’s Type of Teams
Manager-Led Self-Directed Self Managed Self-Governing
Who is Responsible for: Teams Teams Teams Teams
Setting the overall direction Manager Manager Team Team
Designing the team & its
organizational context
Manager Manager Team Team
Monitoring & managing
work process and progress
Manager Team, except for
hiring & firing
Team Team
Executing team tasks Teams Teams Teams Teams
Agile teams … self-organizing
“No team moves from manager-led to self-management
in a short time.”
Typically, there is not continuum leading from
manager-management to team self-management
Managers create teams and set their overall direction
Agile teams direct their own work and deliver their work as
done
… and manage and monitor progress
Those connected to the team, but not a member of the
team… serve the team
SCRUM Example… the Scrum Master serves the team
Tuckman’s Model of Group Development
Independence
Return to
Independence
Forming
Storming
Norming
Performing
Adjourning
Next Steps
Dependence
/ Inter dependence
Four Stages of Team Development
STAGE FORMING STORMING NORMING PERFORMING
General
Observations
Uncertainty about
rules, looking
outside for
guidance.
Growing confidence
in team, rejecting
outside authority.
Concern about
being different,
wanting to be part
of team.
Concern with
getting the job done.
Content Issues Some attempt to
define the job to be
done.
Team members
resist the task
demands.
There is an open
exchange of views
about the team’s
problems.
Resources are
allocated efficiently;
processes are in
place to ensure that
the final objective is
achieved.
Process Issues Team members look
outside for guidance
and direction.
Team members
deny the task and
look for the reasons
not to do it.
The team starts to
set up the
procedures to deal
with the task.
The team is able to
solve problems.
Feelings Issues People feel anxious
and are unsure of
their roles. Most
look to a leader or
coordinator for
guidance.
People still feel
uncertain and try to
express their
individuality.
Concerns arise
about the team
hierarchy.
People ignore
individual
differences and
team members are
more accepting of
one another.
People share a
common focus,
communicate
effectively and
become more
efficient and
flexible as a result.
Four Stages of Team Development
Four Stages of Team Development
STAGE FORMING STORMING NORMING PERFORMING
General
Observations
Uncertainty about
rules, looking
outside for
guidance.
Growing confidence
in team, rejecting
outside authority.
Concern about
being different,
wanting to be part
of team.
Concern with
getting the job done.
Content Issues Some attempt to
define the job to be
done.
Team members
resist the task
demands.
There is an open
exchange of views
about the team’s
problems.
Resources are
allocated efficiently;
processes are in
place to ensure that
the final objective is
achieved.
Process Issues Team members look
outside for guidance
and direction.
Team members
deny the task and
look for the reasons
not to do it.
The team starts to
set up the
procedures to deal
with the task.
The team is able to
solve problems.
Feelings Issues People feel anxious
and are unsure of
their roles. Most
look to a leader or
coordinator for
guidance.
People still feel
uncertain and try to
express their
individuality.
Concerns arise
about the team
hierarchy.
People ignore
individual
differences and
team members are
more accepting of
one another.
People share a
common focus,
communicate
effectively and
become more
efficient and
flexible as a result.
Four Stages of Team Development
Four Stages of Team Development
STAGE FORMING STORMING NORMING PERFORMING
General
Observations
Uncertainty about
rules, looking
outside for
guidance.
Growing confidence
in team, rejecting
outside authority.
Concern about
being different,
wanting to be part
of team.
Concern with
getting the job done.
Content Issues Some attempt to
define the job to be
done.
Team members
resist the task
demands.
There is an open
exchange of views
about the team’s
problems.
Resources are
allocated efficiently;
processes are in
place to ensure that
the final objective is
achieved.
Process Issues Team members look
outside for guidance
and direction.
Team members
deny the task and
look for the reasons
not to do it.
The team starts to
set up the
procedures to deal
with the task.
The team is able to
solve problems.
Feelings Issues People feel anxious
and are unsure of
their roles. Most
look to a leader or
coordinator for
guidance.
People still feel
uncertain and try to
express their
individuality.
Concerns arise
about the team
hierarchy.
People ignore
individual
differences and
team members are
more accepting of
one another.
People share a
common focus,
communicate
effectively and
become more
efficient and
flexible as a result.
Four Stages of Team Development
Four Stages of Team Development
STAGE FORMING STORMING NORMING PERFORMING
General
Observations
Uncertainty about
rules, looking
outside for
guidance.
Growing confidence
in team, rejecting
outside authority.
Concern about
being different,
wanting to be part
of team.
Concern with
getting the job done.
Content Issues Some attempt to
define the job to be
done.
Team members
resist the task
demands.
There is an open
exchange of views
about the team’s
problems.
Resources are
allocated efficiently;
processes are in
place to ensure that
the final objective is
achieved.
Process Issues Team members look
outside for guidance
and direction.
Team members
deny the task and
look for the reasons
not to do it.
The team starts to
set up the
procedures to deal
with the task.
The team is able to
solve problems.
Feelings Issues People feel anxious
and are unsure of
their roles. Most
look to a leader or
coordinator for
guidance.
People still feel
uncertain and try to
express their
individuality.
Concerns arise
about the team
hierarchy.
People ignore
individual
differences and
team members are
more accepting of
one another.
People share a
common focus,
communicate
effectively and
become more
efficient and
flexible as a result.
Four Stages of Team Development
Four Stages of Team Development
There is no substitute for working together on their
work to move to norming and performing
http://apppm.man.dtu.dk/index.php/Four_Stages_of
_Team_Development
Recognize Team Traps in creating collaborating
cross-functional teams
1. Your team is a component team
2. Everyone on your team is a narrow expert
3. The developers and testers don’t work together, but
work in staggered iterations
4. The team’s membership isn’t stable, so the team has
trouble learning to work together
5. The team pushes to finish work
6. The team cannot solve its own problems
7. Team members have a history and culture of individual
work, not collaborative work
Trap 1: Your teams are component teams
• Cross functional teamwork missing capabilities
• These teams need to rely on help from other teams…
• What’s missing may mean that the team cannot
deliver a feature through the architecture
• A solution to add the missing person with the needed
expertise… the “adding” may be difficult
• Adding “visitors” is an interrupt… affecting WIP and
collaboration
Trap 2: Everyone on your team is a narrow expert
Ability to work outside
of core area
Functional area,
discipline,
of specialty
Trap 3: Developers & Testers don’t work together,
but work in staggered iterations
“… developers and testers not united in a single cross-
functional team”
Here’s the problem… The iteration duration is the
duration of development and testing… and whatever is
needed to complete the work the team committed to get
to “done”
When developers finish 1st, they create WIP for testers
Developers create WIP for themselves when bugs are
found
Trap 3: Developers & Testers don’t work together,
but work in staggered iterations
“… developers and testers not united in a single cross-
functional team”
Here’s the problem… The iteration duration is the
duration of development and testing… and whatever is
needed to complete the work the team committed to get
to “done”
When developers finish 1st, they create WIP for testers
Developers create WIP for themselves when bugs are
found
Trap 3: Developers & Testers don’t work together,
but work in staggered iterations
Sequential work based on expertise (hand-offs) results
in longer iterations
Staggered development and testing is not agile or lean
Two weeks of development
Two weeks of testing
This duration is the entire
timebox that counts
(five to six weeks)
Trap 3: Developers & Testers don’t work together,
but work in staggered iterations
Possible help
Use a task board that shows where work is waiting …
and where the need is
Measure WIP to see how much work is waiting … and
waiting for who?
“Staggered development and testing is not agile…”
Trap 4: Team Membership is unstable
Manager dysfunction
“Concerned” that teams are not working at maximum
capacity…
Team members are assigned to “a couple of teams or
several projects”
The more stable a team membership is, the easier it is
for a team to become a “norming and performing team”
Trap 5: The team pushes its pace
Manager dysfunction
… again, teams are pushed into doing more or doing the
work “faster”
“Developing great products requires everyone to be at
their best at all times”
… no work overtime
“The fastest way to destroy technical excellence and
creativity”
Trap 6: The team requires permission from distant
managers to solve problems
Organizations with “powerful” functional managers or
PMOs…
… that dictate who works on your team and when and
… what your team can do
Not understanding the problems this means for teams
should be inexcusable…
As a leader, instead of dictating…
Take a chance and allow teams to experiment with its process
Be the person who can facilitate the team’s problem-solving
process
Build your influencing & upward-coaching skill to “teach”
those at the top
Trap 7: Team Members are apprehensive and adverse
to buying into Collaboration
Telling people … “let’s all be a team” is useless
Telling people … “they shouldn’t feel that way” is also
useless
Things that can be done:
• Ask team members to experiment in short timeboxes as a
means of working together
• If the organization rewards only individual work, forget it!
• Discuss with team members the differences between flow
efficiency and resource efficiency… and the benefits of the
former
• Conduct one-on-ones to better understand each persons
concerns about collaborating
“Now try this”
Teams should self-assess…
… retrospectives!
Does the team have people that cover all the roles and
capabilities needed?
If the team is short on people, how can get the people that are
needed?
Is your team larger than nine? … a warning sign would be the
lack of collaboration