Menü
Perspectives by ThoughtWorks - Edition 7 banner
Perspectives by ThoughtWorks - Edition 7 banner
Section 2: Teams

Uniting around a cause


Nimble, cross-functional teams are the lynchpin of the effective digital organization and the perfect example of collaboration in action. Bringing together people from different functions to focus on a single goal and replicating that process across the enterprise enables companies to tackle multiple product and service development initiatives simultaneously. And that’s arguably the only way to move, and innovate, at the speed and scale that today’s business environment requires. 


A team collaborating successfully, at the height of its powers and productivity, can be a beautiful thing. But a lot of cross-functional teams - around three-quarters, according to Harvard Business Review - are, to at least some extent, dysfunctional. Sometimes this is a result of structural problems; but in our experience, it also has a lot to do with how teams work. That’s why the business needs to emphasize a culture and processes that ensure the team exists in practice as well as name, and make team collaboration a reality. 





What it looks like


A blueprint for the collaborative team

Icon - Cross-Functional Composition

Cross-Functional Composition: It’s important that teams are diverse and cross-functional, blending designers, developers, representatives of the business, as well as other departments whose input may be needed in the product or service launch process, such as legal or finance. This ensures that teams are efficiently self-contained and empowered to deliver a successful experience from end to end, rather than needing to constantly stop and seek external approval. Working together throughout the product lifecycle also makes collaboration more seamless.

Icon - Pair Programming

Pair Programming: Though the team ultimately needs to collaborate as a whole, kick-starting collaboration in smaller units can accelerate the process. Pair programming, an agile development practice in which two developers work together; usually at the same workstation, but sometimes remotely, is a good example. Much more than just getting together to complete a task, it's an opportunity to forge bonds with teammates; to share knowledge, and to teach and learn, technically, and culturally; as well as understand what motivates and what discourages other team members.

Icon - Team Solution Reviews

Team Solution Reviews: Coming together to review complete products (or solutions) provides an opportunity for the whole team to share knowledge, and learn new techniques and skills. That reduces risk by increasing the team’s ‘bus factor’ - that is, the minimum number of team members whose departure would derail the entire project. Reviews are also a good opportunity to identify where collaboration proved most effective, and where it wasn’t realized or went wrong. 

Icon - Retrospectives

Retrospectives: A retrospective creates space for a team to reflect back on a period of activity, or milestone, to celebrate achievements and to create a plan for future improvements, together. This commitment to continuous learning and the recognition of progress made underlines the fact that collaboration has real-world outcomes, and cultivates a strong sense of team connection.

Icon - Fast Feedback and Iterative Delivery

Fast Feedback and Iterative Delivery: Feedback is the mechanism by which the team and individuals validate where their collaboration is generating the necessary results, and where it isn’t. More than identifying problems, the team also needs to cooperate to regularly feed insights back into processes and behaviors to speed up and improve the delivery of value. Shorter delivery iterations reduce feedback loops and help teams to build trust between different functional groups, giving business and other stakeholders the opportunity to respond to what has been delivered. These interactions in turn lay the groundwork for ongoing collaboration with other parts of the enterprise.

Icon - Test-Driven Development (TDD)

Test-Driven Development (TDD): TDD provides fast feedback on what is being developed, shaping an idea into implementation through a cyclical ‘fail-pass-refactor’ approach. With this approach, developers start a feature by writing high-level automated tests for that feature, before they begin implementing the solution. They then build out the software, using lower level tests for direction, until the tests are passed. After development is finished, the tests remain and are run with every build, creating confidence that the code continues to work as intended.

Why it matters


The common benefits of collaborative agile practices include:


  • Better product quality
  • Higher customer satisfaction
  • Improved team morale 
  • Greater team cohesion
  • Lower risk of complete project failure 
  • Productive mentoring relationships


What prevents it


Team collaboration can fail to produce the desired results if it isn’t oriented around specific goals. As Sunil Mundra, Principal Consultant at ThoughtWorks and the author of Enterprise Agility - Being Agile in a Changing World, notes, "blithely implementing change, just doing it" can create the illusion of agile without the impact.


“There's nothing wrong with starting that way - there are processes and ceremonies that are there to implement - but if you just do that the inertia that is still there from the systemic issues in the organization will overpower any green shoots you create at the team level, and you’ll be back to your original state,” he says. “If you don't understand the 'why' of what you’re doing, it's not going to give you any benefit.”


The other major threat to team collaboration is excessive hierarchy, which can stifle the open dialogue that needs to underpin it. “A lot of organizations are very much power struggles, which affects people's ability to deal with honest communication,” says ThoughtWorks Chief Scientist Martin Fowler. “That doesn‘t work at all with agile, which demands a much greater degree of transparency.”



How to make it happen


  • Emphasize the importance of shared values
  • Establish clear, common goals for teams to work towards
  • Highlight the links between team collaboration and high performance
  • Give teams the space and autonomy to fail, and learn 
  • Promote team bonding to build trust, motivation and momentum 
  • Embed agile practices to enhance communication and connections


Key technology drivers


Team collaboration may be viewed as a ‘soft’ concept, and any cross-functional team will include non-technologists. Yet at the same time, the realities of digital business and the pace of technological change mean collaboration-based development has to be rooted, to at least some extent, in ‘hard’ technology skills, capable of supporting processes like rapid prototyping and dynamically solutions in response to user feedback. 


"This is specific to the software world but there are parallels in the non-software world as well," Fowler explains. “Organizations are not giving the necessary attention to things like testing and development, refactoring and discretion, or the specific technical skills in their area. These really enable the shift between the first and second levels of the Agile Fluency Model, where technical expertise is required to get you to the levels of productivity and effective execution you're trying to attain."

Perspectives delivered to your inbox

Timely business and industry insights for digital leaders.