All teams can take advantage of Agile principles and practices to reap benefits. Even non-Agile teams can be more cross-functional to reduce number of hand-offs and deliver faster.
WHAT is a Cross-Functional Team?
Traditional organizations commonly divide by functions required to deliver a product, often among a waterfall production process: Business Analysis, Project Managers, Solution Architects, Developers, Testers, Operations, and so on. That framework can work very efficiently for predictable low ambiguity / low change / low risk projects. However it works very poorly for projects that have ambiguity, experience scope changes, and carry known / unknown risks. Why? Because the handoffs back and forth between these functional teams make delivery extremely frustrating. In fact, they completely destroy the project timeline and often cause project delays.
Organizing into-cross functional teams significantly reduces the number of handoffs, decreases delivery time, and generally creates higher quality product. The idea is to form dedicated squads or teams that can deliver the product with minimal handoffs / dependencies outside them. Imagine forming a team that has an analyst, project manager, architect, developer, tester, and even operations person all in one team. Products are delivered through efficient collaboration within the team, not through artificial lengthy bureaucratic processes, handoffs, signoffs, etc. This approach is simply more efficient, no matter your organizational structure or even your process (PMI / Agile / Prince2).
WHY is it used?
- It’s simply faster to deliver the product because requires minimal handoffs
- Team collaboration is more flexible in managing a variety of changes then artificially created processes
- It commonly produces a higher quality product since different team members work collaboratively in one team and they naturally learn from each other… over time gaining a more holistic perspective of the product… and naturally creating a better product
- Team members commonly enjoy working on cross-functional teams because they learn so much from each other and increase their skills quickly
HOW to take advantage of it?
First stop and think… do your projects experience significant ambiguity, change, and risks? If so, regardless of your operational framework, align with different managers to form a “cross-functional squad” to deliver as specific project. Then proceed with your activities (business case, project plan, solution design, etc.) but do it collaboratively with each member allowed to contribute to every step (not just their own). This should result in no handoffs / signoffs and therefore no related delays. Take the same approach when faced with a change or previously unknown risk. At the end, Retrospect (another article I’ve published recently) at whether this approach was better and faster… and honestly more fun.
WHO should facilitate it?
Assuming you’re using this approach within the SDLC, PMI, Waterfall, or Prince2 framework… the Project Manager is the ideal person to keep this “squad” organized. Cross-functional team selection would happen based on your current organizational dynamics through managers, directors, etc.
Please Note: These benefits are more substantial and even cumulative if your team is actually using a complete Agile framework like Scrum or Scaled Agile (recommended).
But whether your team is just experimenting, in process of transition, or simply trying to learn… I hope this article helps you on your way.