I was speaking at a conference a few weeks ago and got a question about Cross-Functional Teams. The way he asked the question, it was clear what he meant - he meant "how do I get QA to work with my development team?" It may shock you to hear me say that having a SCRUM team of Developers and Testers does NOT mean the team is cross functional. I'll explain:
In football you have catchers, running-back, quarterbacks, defensive lineman, etc. If the opposing team fumbles the ball right in front of a lineman what does he do? Stand there and say "Where are they guys who are supposed to run this ball? I don't run the ball. HELP!!!" No. He grabs the ball and runs as fast as he can...sometimes even being responsible for the game-winning touchdown. That's what we mean by being cross functional. How does this football player know what to do? He knows it's his responsibility. He knows the rules of the game. In addition to his squad work, he works with the rest of the team on real plays in true game scenarios.
So what am I saying? Have the SKILL SETS on the team is one thing. Having people who are given permission to, expected to be and TRAINED TO BE cross-functional is something else. Cross-Functionality isn't just a skill set it's a MINDSET that breaks silos across disciplines and hierarchies. It has to be taught, recognized, and rewarded because it isn't easy. The risk of not being cross functional? Bottlenecks and your organizational "dropping the ball" in the market, losing to competition, and falling behind on the innovation curve.
Check back for a post about how incentives can help.