软件架构文档与可复用资产解析
立即解锁
发布时间: 2025-08-22 00:53:04 阅读量: 2 订阅数: 6 


软件架构设计的核心实践与指南
### 软件架构文档与可复用资产解析
#### 1. 系统特性与架构描述框架
在软件架构设计中,有几个关键的系统特性需要考虑:
- **可访问性**:系统供残障人士使用的能力。
- **开发资源**:系统在人员、预算、时间和材料等已知约束条件下进行设计、构建、部署和运营的能力。
- **国际化**:系统独立于任何特定语言、国家或文化群体的能力。
- **位置**:系统克服其元素的绝对位置及它们之间距离带来的问题的能力。
- **法规遵循**:系统符合当地和国际法律、准法律规定、公司政策及其他规则和标准的能力。
- **可用性**:与系统交互的人员能够有效工作的便捷程度。
架构描述框架可用于不同系统的架构设计,架构师应根据系统的性质选择合适的视角,并且该框架具有可扩展性,必要时可添加视角。
#### 2. 视角与利益相关者
以下是架构的利益相关者及其主要职责:
| 角色 | 范围 | 主要职责 |
| ---- | ---- | ---- |
| 应用所有者 | 外部 | 委托(并资助)系统 |
| 业务管理员 | 外部 | 管理运营系统中与业务相关的元素 |
| 配置管理员 | 内部 | 定义配置管理存储库的结构以及其中的元素 |
| 开发人员 | 内部 | 执行系统的详细设计和实现 |
| 维护人员 | 外部 | 管理系统部署后的持续演进 |
| 项目经理 | 内部 | 从规划、人员配备、监控和风险管理等方面管理开发项目的执行 |
| 供应商 | 外部 | 提供开发或运行系统所需的软件或硬件元素 |
| 支持人员 | 外部 | 提供系统支持并执行诊断功能 |
| 系统管理员 | 外部 | 管理系统的运营执行 |
| 测试人员 | 内部 | 测试系统以确保其符合预期用途 |
| 用户 | 外部 | 使用系统的业务功能 |
视角总结如下:
| 视角 | 利益相关者 | 描述 |
| ---- | ---- | ---- |
| 需求视角 | 所有利益相关者 | 关注塑造架构的系统需求,包括功能需求、质量和约束条件 |
| 功能视角 | 所有利益相关者 | 关注支持系统功能(逻辑)的架构元素,包括构建系统的结构元素、它们之间的关系及其行为 |
| 部署视角 | 配置管理员、开发人员、维护人员、项目经理、供应商、支持人员、系统管理员、测试人员 | 关注支持系统分布的架构元素,包括位置、节点、设备及其连接 |
| 验证视角 | 应用所有者、项目经理、测试人员 | 关注评估系统是否能提供所需功能、展现所需质量并适应定义的约束条件 |
| 应用视角 | 业务管理员、开发人员、维护人员、供应商、系统管理员、测试人员 | 关注提供解决方案特定于应用程序行为的架构元素,即系统为满足业务需求必须提供的行为 |
| 基础设施视角 | 开发人员、维护人员、供应商、系统管理员、测试人员 | 关注提供与应用无关的解决方案行为的架构元素,即系统为支持业务目的必须提供的行为 |
| 系统管理视角 | 开发人员、维护人员、供应商、系统管理员、测试人员 | 关注系统部署到生产环境后有助于其运营的架构元素 |
| 可用性视角 | 开发人员、维护人员、供应商、系统管理员、测试人员 | 关注使系统满足指定可用性要求的架构元素,也关注系统从故障(使系统完全或部分不可用)中恢复的架构元素 |
| 性能视角 | 开发人员、维护人员、供应商、系统管理员、测试人员 | 关注使系统满足指定性能要求(如响应时间和吞吐量)的架构元素 |
| 安全视角 | 开发人员、维护人员、供应商、系统管理员、测试人员 | 关注使系统满足指定安全要求的架构元素,如对系统功能和资源的授权访问,也关注检测和从系统安全机制故障中恢复的架构元素 |
对于任何给定系统,可根据需要移除或添加视图。例如,如果构建的系统始终在单个节点上执行,则可以忽略部署视图;如果系统演进是架构的主要关注点,则可以添加演进视图。
#### 3. 工作产品
不同
0
0
复制全文
相关推荐










