6.1 软件架构有助于交付高质量的产品
软件架构是关于结构和愿景的,不思考软件架构(以及“大局”)会导致团队经常遭遇一些常见问题。
你的软件系统有良好定义的结构吗?
团队里每个人都以一致的方式实现特性吗?
代码库的质量水平一致吗?
对于如何构建软件,团队有共同的愿景吗?
团队里每个人都得到了足够的技术指导吗?
有适当的技术领导力吗
如果上面某些问题的答案是“不”,那就需要很好的团队和很好的运气才可能成功地交付一个软件项目。如果没人思考软件架构,最终结果往往看起来像一团乱麻(big ball of mud)。
思考软件架构能带来哪些好处?
总结如下:
让团队跟随一个清晰的愿景和路线图,无论这个愿景是一人所有还是整个团队共有;
技术领导力和更好的协调;
与人交流的刺激因素,以便回答与重要决策、非功能需求、限制和其他关注点相关的问题;
识别和减轻风险的框架;
方法和标准的一致性,随之而来的结构良好的代码库;
正在构建的产品的坚实基础;
对不同的听众,以不同层次的抽象来交流解决方案的结构。