架构设计文档

架构设计文档
架构设计文档

架构设计文档版本号:XXX

XX项目组

修订状况

目录

1. 引言 (4)

1.1 目的 (4)

1.2 范围 (4)

1.3 定义、首字母缩写词和缩略语 (4)

1.4 参考资料 (4)

2. 软件系统架构设计概述 (4)

2.1 背景 (4)

2.2 软件系统架构设计策略与原则 (4)

2.3 关键功能性需求 (5)

2.4 非功能性需求及解决方案 (5)

2.5 软件系统架构设计蓝图 (6)

3. 软件系统架构设计 (6)

3.1 系统分层架构视图 (6)

3.2 用例视图 (6)

3.3 逻辑视图 (7)

3.4 部署视图 (7)

3.5 进程视图(可选) (7)

3.6 实现视图(可选) (7)

4. 关键技术设计 (7)

4.1 公共构件设计 (7)

4.2 接口设计 (8)

4.3 数据架构设计 (8)

4.4 安全架构设计 (8)

4.5 UI架构设计 (8)

4.6 运维架构设计 (8)

[说明:文档模板中蓝字部分为模板说明和示例,黑字部分为内容要求。黑字部分不允许删除,对于对项目不适用的部分,在相应的章节中进行说明]

1.引言

1.1目的

[阐明此软件系统架构设计文档的目的。]

1.2范围

[简要说明此软件系统架构设计文档的范围:它的相关项目,以及受到此文档影响的任何其他事物。]

1.3定义、首字母缩写词和缩略语

[本小节应提供正确解释此软件系统架构设计文档所需的全部术语的定义、首字母缩写词和缩略语。这些信息可以通过引用项目术语表来提供。]

1.4参考资料

[本小节应完整列出此软件系统架构设计文档中所明确引用的任何文档。每个文档应标有标题、来源。这些信息可以通过引用附录或其他文档来提供。]

2.软件系统架构设计概述

2.1背景

[简要说明此软件系统架构设计文档的背景,描述系统解决方案如何适应组织的发展前景。]

2.2软件系统架构设计策略与原则

[描述软件系统架构设计的策略与原则,如应用框架、开放性原则,应用XML作为规范传输数据等。]

2.3关键功能性需求

[整理和引述对于软件系统架构总体设计来说关键性的功能性需求,这里需要对业务建模和需求分析的结果进行整理、分类和抽象。如ctais系统中的联机事务处理业务(实时柜台业务),文书流转,批量数据查询,批处理业务,报表处理等。] [功能性需求的描述可以采用用例视图的形式,可以从需求分析产生的用例模型中进行抽取]。

2.4非功能性需求及解决方案

整理和引述对于软件系统架构总体设计来说关键性的非功能需求与约束,以及针对这些非功能性需求与约束,在架构设计中考虑的解决方案。这些非功能性需求与约束来自但不限于软件需求过程产生的非功能性需求。例如:安全性、保密性、市售产品的使用、可移植性和重复使用。需要考虑来自用户基础架构设备的约束,技术标准的约束,地理配置约束等,还应记录适用的特殊约束(规范):设计与实施策略、开发工具、团队结构、时间表、遗留代码等。

2.4.1性能需求及解决方案

包括可支持的并发数目,响应速度,处理性能等,要描述具体的解决方案,例如:采用IBM 595高性能机器,应用服务支持集群部署,当用户增加时,可以增加集群中机器数量,Web与应用分离。

2.4.2可靠性需求及解决方案

针对可靠性需求给出解决方案。

2.4.3安全性需求及解决方案

针对安全性需求给出解决方案。

2.4.4可维护性需求及解决方案

针对可维护性需求给出解决方案。

2.4.5可扩展性需求及解决方案

针对可扩展性需求给出解决方案。

2.4.6可移植性需求及解决方案

针对可移植性需求给出解决方案。

2.4.7可管理性需求及解决方案

针对可管理性需求给出解决方案。

2.4.8集成与互操作需求及解决方案

针对集成与互操作需求给出解决方案。

2.4.9其他约束及解决方案

针对其他约束给出解决方案。

2.5软件系统架构设计蓝图

描绘软件系统架构总体设计的“架构蓝图”,即软件系统架构总体设计的各个部分的分工及协作。架构蓝图可以作为后续各部分的引论,阐述应用架构、数据架构、基础设施架构、安全架构和运维架构之间的边界和依赖关系。

3.软件系统架构设计

推荐使用RUP 4+1视图来展现软件系统架构,其中用例视图、逻辑视图与部署视图为必选章节,进程视图与实现视图为可选章节,根据需要可以自行增加。

3.1系统分层架构视图

[对应用体系架构进行分层的阐述,包括横向(技术体系架构层次,Tiers)和纵向(标准功能的实现对象层次,Layer),并具体阐述各层的边界、提供的服务内容和包含的公共构件以及各层之间的关联和协作方式。]

3.2用例视图

[用例视图是系统用例模型中的一部分,它展示在构架方面具有重要意义的系统用例。用例视图描述代表重要核心功能的场景集、用例集,或者在构架方面的涉及范围很广(使用了许多构架元素)的场景,以及那些强调或阐明了构架的某一具体的细微之处的场景。]

3.3逻辑视图

[逻辑视图是架构设计中的核心视图。它展示在构架方面具有重要意义的设计元素。

逻辑视图描述最重要的类、和这些类到包和子系统,再到层的组织形式。它还要描述最重要的用例实现,例如构架的动态方面。]

[针对关键用例的实现应用软件设计的模板,作为软件系统架构设计的附件共同提交] 3.4部署视图

[部署视图描述系统的物理配置,包括硬件、网络、以及运行在物理节点上的软件构件。

对于具有复杂网络配置或处理器配置的系统,部署视图为必选。对于单处理器系统或那些基本不进行分布处理的简单系统,部署视图为可选。]

3.5进程视图(可选)

[进程视图关注进程、线程、对象等运行时概念,以及相关的并发、同步、通信等问题。]

3.6实现视图(可选)

[实现视图关注程序包,不仅包括要编写的源程序,还包括可以直接使用的第三方

SDK和现成框架、类库,以及开发的系统将运行于其上的系统软件或中间件。]

4.关键技术设计

[针对软件系统中关键的技术性问题的解决方案给出说明。包括但不限于公共构件、系统接口设计、数据架构设计、系统安全架构设计、UI架构设计、运维架构设计等内容,可分别使用独立的章节或独立文档进行说明,并不一定严格按以下章节进行。]

4.1公共构件设计

[阐述软件系统抽象的公共构件,包括层次、提供的服务等,同时也要确定公共构件

的抽取规则。]

4.2接口设计

[阐述软件系统对外及系统内各层、各子系统之间的接口规范,例如:CTAIS系统的前后端接口规范。]

4.3数据架构设计

[阐述与数据架构特定相关的一些问题,尤其是在应用架构的描述中不易阐述清楚的问题,例如:主题数据库模型、数据访问层设计等。]

4.4安全架构设计

[阐述软件系统架构中与安全相关的问题与策略,包括权限管理、身份认证、安全服务、安全部署和针对数据的安全控制原则与权限模型。]

4.5UI架构设计

[阐述软件系统展现的UI架构设计,包括布局、风格等。]

4.6运维架构设计

[阐述架构中与软件系统上线后运维相关的问题,包括故障检查与恢复、系统监控管理等。]

相关主题
相关文档
最新文档