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.