制定软件架构设计策略:
1、 全面认识需求。下面的这个图可以用作全面需求分析图。
| 功能需求 | 质量属性 | 约束 |
组织级 | 软件系统实现的功能 |
| 成本,上线时间,业务限制 |
用户级 | 软件系统实现的功能 | 易用性,性能,持续可用性,鲁棒性 | 用户的计算机水平有限 |
开发级 | 软件系统实现的功能 | 可扩展性,可重用性,可移植性,易理解性,易测试性 | 开发语言的约束 |
2、 关键需求决定架构。十全十美,面面俱到的架构设计是不存在的,即便存在,也是失败的。这个地方和老子的思想倒是十分的相似“有无相生,高下相形”。只分析和重点关注关键的功能性需求和重要的质量属性需求。
3、 多视图探寻架构。架构级设计是分层式的分而治之,子系统是功能性分而治之。
4、 尽早验证架构。采用原型技术和框架技术。