Too often when I sit down with a struggling team, I hear something like this: “Agile works pretty well until the designers get involved…then when the testers come in things go from bad to worse.”
It should be obvious what’s wrong with this team: it’s not a team!
The ideal Agile team is small, co-located, cross-functional, self-managing, and customer aligned. Each of these is a topic all to itself but here we’re talking about cross-functional.
By cross-functional I mean all the resources you need are there and ready to go. The silos have to go away; the organizational and methodological walls have to come down. And everyone on the team must be a Jack or Jill of all trades, master of one; that is, every member needs deep expertise in one area—the business, design, development, testing, whatever—but is able and willing to do any or all of the above, whatever it takes to get the team’s work done. Spotify it.
If you’re stuck in organizational silos and can’t Spotify it? Kanban done well will move you in the right direction.
Otherwise, you’ll get local vs. global optimization. And, thus, sucky system performance and customer experience. Because, per Conway’s Law, your system architecture reflects your organizational structure.