1 The need for collaborative software design

This chapter covers

  • Understanding the need for collaborative software design
  • Discovering how collaborative modeling improves design decisions
  • Exploring a brief history of software design
  • Recognizing collaborative software design as a catalyst for better design decisions

Great technical teams working closely with well-meaning business stakeholders can still deliver software that fails to meet an organization’s needs. We see it every day. Software teams become too focused on finding solutions without fully appreciating the context of the organization. Business stakeholders can be reluctant to voice their concerns in technical sessions. Tensions escalate, and conflicts go unresolved.

Effective software requires effective collaboration, and just like every other aspect of software development and design, collaboration is a skill you have to learn and practice. Visual collaboration tools can be a key strategy in doing so because they can clarify assumptions and foster improved collaboration between development teams and stakeholders. But tools alone can’t guarantee effective collaboration; someone needs to guide people during collaboration: a facilitator. Fortunately, there are techniques and practices you can use to facilitate effective collaborative design, whether you’re a project leader, a business stakeholder, or anyone in a team that is involved in building software.

1.1 Design decisions gone wrong at BigScreen

1.1.1 Understanding the landscape

1.1.2 BigScreen’s attempt at refactoring

1.2 BigScreen: How collaborative modeling helped to improve design decisions

1.2.1 Our approach for BigScreen

1.2.2 The new architecture

1.2.3 A brief history of software design

1.2.4 The Agile theater

1.2.5 Enabling teams to do collaborative software design

1.3 Collaborative software design as a catalyst for better design decisions

1.3.1 Collaborative modeling, design, and architecture

1.3.2 Collaborative modeling ingredients and potential benefits of facilitation

1.3.3 The effect of social dynamics on collaborative modeling sessions

1.3.4 Collaborative decision-making

Summary

sitemap