Published on December 8, 2009

This post was previously on the Pathfinder Software site. Pathfinder Software changed its name to Orthogonal in 2016. Read more.

According to the latest figures from the Standish Group, only 32% of software development projects are successful. If you follow our list of 10 patterns and avoid the antipatterns, your success rate should be a lot higher than that.

The first two installments were #10, Tools and Infrastructure and #9, Respect the Process

#8: The Team

Once you have the tools and the method, you need a team to take advantage of them.

Throwing together a group of individuals to make sure you have enough bodies and hoping they form a team is usually not a recipe for successful software development, but we see this all too often in projects we are called into rescue.

The key concept here is that a team is more than just a group of individuals thrown together. As in sports, you need talented players at each position, a cohesive team, and proficient coaches. For software development projects, our teams typically have between four to eight core members, with core skill sets of agile project management, user experience design and software development.

Once you’ve assembled a good team, you need to let them be a team. My brother Dietrich has a good take on this in a recent post:

“At Orthogonal, we’re often called on to introduce Agile practices into projects and organizations. One of the more subtle changes we introduce is that of the self-organizing team. This is where developers (and BA’s, IA’s, etc.) share responsibility for organizing their own work, rather than depend on managers telling them what to do. At the same time they also become accountable for this work and the ultimate success of the project. The former “managers” become obstacle removers, freeing up the team members to do their best work.”

By taking this approach, you not only get better motivation, enhanced teamwork and better results, you are in much better shape to handle the turnover and change that is inevitable in any organization: If one member of a team leaves or you need to scale up the team, you’re in much better shape with a self-organizing team, especially if they’re pairing.