How To Improve Cross-Functional Collaboration
Cross-functional teams are at the heart of Agile development. What is a cross-functional team? It’s generally defined as a group of experts in their individual functional areas working towards a common goal. Most of the “teams” I’ve come across fit this definition. We have everyone needed to deliver the product increment from end-to-end, so what’s the problem?
While we may have all the people, if they can’t all do the work and are unable to collaborate, we end up just creating a mini waterfall of handoffs inside the sprint between silos and specialties. Collaboration is at the heart of a truly agile team. So how do we tip the scales towards collaboration?
Once upon a time (you know, like last week) we decided that every single person on the team had to be busy every second of the work day. If someone wasn’t fully utilized we were throwing away money. Unfortunately when we break the backlog down and organize it in a way that each person has something to work on in their particular specialty we often leave the higher more valuable work in the backlog while we dig through lower value items in our balancing effort. This forces us to ask the question: Are we optimizing for busy-ness or value?
We order our backlogs based on value, but when work is pulled based on specialty (front-end, middle tier, database), the highest priority things have to be ignored in lieu of lower-priority items. The result is that your teams are still operating in silos, even if you’ve assembled a team that cuts across the different parts of delivering value. This makes planning complicated, causing dependencies to run rampant and work to never truly get done.
Symptoms Of Siloed Teams
I attended a session on collaboration at Scrum Gathering this year led by Jan Beaver. As he ticked through the symptoms of a siloed team below, I saw teams I’d worked with in the past in my head:
- People with nothing to do the last couple of days of each Sprint – usually “developers”
- People with nothing to do until the last couple of days of each Sprint – usually “testers”
- Gold-plated code, poor quality code
- Unfinished work most Sprints
- “We’ll test later”
- Internal team stovepipes that require handoffs
- Morale and motivation problems
- Lack of Teamwork
- Territoriality – “my work” vs. “our work”
- Silence in the team room
Two Activities To Improve Cross-functional Team Collaboration
How do we stop the silos? Conveniently, some really smart people have come up with activities to help identify silos and gaps allowing teams to create a plan to fix them. I’m going to show you a few favorites I’ve used in the past with incredible results.
Market of Skills
Time box: 1 hour
Materials: easel pad paper, markers, sticky notes and a team ready to have some fun.
This is a really fun activity that engages individuals and helps them identify ways they can help each other grow inside of a team structure. This activity takes about an hour at minimum. Leave enough time to really let participants dig in and get creative.
Setting the stage: Imagine you are at an open air market and you are setting up your booth. You want to “sell” your wares. So on your easel pad paper come up with a “Booth Name” then split it into the following three sections. First, you have your “Top of the Booth Skills”. These are skills you use every day that the team can depend on you to provide. Next, you will show them you “Below the counter skills”. These are the skills not many people know you have but could come in quite handy if utilized correctly. The third section will be your “ISO (In Search Of) Skills”. These are the things you want to learn or skills you want to gain.
After everyone sets up their “booths” it’s time to shop! Everyone will grab a pad of stickies and wander around hunting down skills they can offer and want to gain.
When you are done you may have something that looks like this:
This activity accomplishes a few great things with the team. It gives everyone an opportunity to get to know each other a bit better by allowing them to share skills, both fun, and day-to-day. More importantly, though, it affords the team a view of the opportunity for skill trading with each other, which will build a more collaborative, truly cross-functional team.
Time Box: 30 minutes
Materials: stickies, markers, big writing surface
My new favorite activity to quickly get it all out on the table and rapidly visualize skill silos and gaps is the Team Spectrograph. I learned about this one in Beaver’s Scrum Gathering session. I’ve run it with a few teams already and we were instantly able to see the issues and make a plan, all in about 30 minutes!
You start by handing the team a few pads of stickies and have them start writing out all the skills needed to get product increments from start to finish during the sprint. Draw a graph and plot those on the X-axis. Then, tick the Y-axis from 0-10. Each team member will grab a different color marker, write their name so we have a legend, and rate themselves from 0-10 in each of those skills. You will quickly start seeing skill specialists and identifying gaps.
With this team, though, we realized the silo risks weren’t just on the technical side. They also had business area skill silos, so we plotted those too.
The team then determined the riskiest ones and made a pairing rule: “When that type of work comes in, you don’t work alone.” They plan to revisit this activity every two months to see how they are tracking towards real cross-functionality. It’s recommended to transition the data into a spreadsheet program to plot the data on a line graph as whiteboards can be risky to just leave around waiting to get bumped into accidentally and erased.
Here’s to hoping that you can use either of these activities to take your “team” from a group of individuals working in adjacent silos to a team of people working collaboratively to achieve a common goal.
3 Responses to “How To Improve Cross-Functional Collaboration”
Great tools to generate awareness by visualizing competence silos. A first step towards easing up the silo borders.
Thank you! They are a lot of fun to do with the team, and they seem to genuinely enjoy them as well. The results are quite rewarding.
That’s awesome. I added it to Awesome List of resources on Agile Software Development: https://github.com/lorabv/awesome-agile-software-development/blob/master/Team.md. Star the repo to receive updates and add your favourites and/or let me know if there is a topic you would like this list to include.