软件架构的概念
本质
- 软件架构为软件系统提供了一个结构、行为和属性的高级抽象
- 软件架构风格是特定应用领域的惯用模式,架构定义一个词汇表和一组约束
作用
- 软件架构是项目干系人进行交流的手段
- 软件架构是可传递和可复用的模型,通过研究架构可能预测软件的质量
- 有助于循序渐进的原型设计
总结
架构设计是 【降低成本】【改进质量】【按时和按需交付产品】的关键因素
FQA
什么是架构?
架构设计就是按需分配,即将满足需求的职责分配到组件上
软件架构生命周期(SA流程)
整体流程
需求分析 → 设计 → 实现 → 构件组装 → 部署 → 后开发
1. 需求分析阶段
核心问题
- 如何根据需求构建 SA 模型
- 模型转换是否可追溯
2. 设计阶段(重点)
特点
- SA研究最核心阶段
- 使用 ADL(架构描述语言)
- 使用 4+1 视图模型
3. 实现阶段
说明
- 根据设计进行代码实现
4. 构件组装阶段
特点
- 在较高层次实现系统
- 强调效率
5. 部署阶段
作用
- SA 提供高层视图指导部署
6. 后开发阶段
特点
- 系统结构动态变化
- 包括:
- 内部执行变化
- 外部请求变化
- 支持结构恢复与重建