1、系统平台软件架构设计文档版本项目名称版本:软件架构设计文档日期:修订历史记录日期版本说明作者详细信息章洪岩目录TOCo1-5hzHYPERLINKlbookmark47oCurrentDocument简介5HYPERLINKlbookmark51oCurrentDocument目的5HYPERLINKlbookmark55oCurrentDocument范围5HYPERLINKlbookmark59oCurrentDocument定义、首字母缩写词和缩略语5HYPERLINKlbookmark63oCurrentDo
2、cument参考资料5HYPERLINKlbookmark67oCurrentDocument概述5HYPERLINKlbookmark71oCurrentDocument整体说明5HYPERLINKlbookmark75oCurrentDocument简介5HYPERLINKlbookmark79oCurrentDocument构架表示方式5HYPERLINKlbookmark83oCurrentDocument构架目标和约束5HYPERLINKlbookmark87oCurrentDocument用例视图
3、6HYPERLINKlbookmark91oCurrentDocument核心用例6HYPERLINKlbookmark95oCurrentDocument用例实现6HYPERLINKlbookmark99oCurrentDocument逻辑视图6HYPERLINKlbookmark103oCurrentDocument逻辑视图6HYPERLINKlbookmark107oCurrentDocument分层64.2.1应用层64.2.2业务层74.2.3中间层74.2.4系统层7HYPERLINKlbookmark11
4、1oCurrentDocument架构模式7HYPERLINKlbookmark115oCurrentDocument设计机制7HYPERLINKlbookmark119oCurrentDocument公用元素及服务7HYPERLINKlbookmark123oCurrentDocument进程视图7HYPERLINKlbookmark127oCurrentDocument部署视图7HYPERLINKlbookmark131oCurrentDocument实施视图8HYPERLINKlbookmark135o
5、CurrentDocument概述8HYPERLINKlbookmark139oCurrentDocument层8HYPERLINKlbookmark143oCurrentDocument部署8HYPERLINKlbookmark147oCurrentDocument数据视图8HYPERLINKlbookmark151oCurrentDocument大小和性能8HYPERLINKlbookmark155oCurrentDocument质量8HYPERLINKlbookmark159oCurrentDocum
6、ent其它说明8HYPERLINKlbookmark163oCurrentDocument附录A指南8HYPERLINKlbookmark167oCurrentDocument附录B规范9HYPERLINKlbookmark171oCurrentDocument附录C模版9HYPERLINKlbookmark175oCurrentDocument附录D示例9软件架构设计文档简介软件构架文档的简介应提供整个软件构架文档的概述。它应包括此软件构架文档的目的、范围、定义、首字母缩写词、缩略语、参考资料和概述目的本文档将从构架方面对系统进行综
8、息可以通过引用附录或其他文档来提供概述本小节应说明此软件构架文档中其他部分所包含的内容,并解释此软件构架文档的组织方式整体说明简介在此简单介绍软件架构的整体情况,包括用例视图、逻辑视图、进程视图、实施视图和部署视图的简单介绍。另外,简要介绍各种视图的作用和针对的用户构架表示方式本节说明当前系统所使用的软件构架及其表示方式。还会从用例视图、逻辑视图、进程视图、部署视图和实施视图中列出必需的那些视图,并分别说明这些视图包含哪些类型的模型元素构架目标和约束本节说明对构架具有某种重要影响的软件需求和目标,例如:安全性、保密性、市售产品的使用、可移植性、分销和重复使用。还应记录可能适用的特殊约束
10、在此用图形的方式显示此软件架构的分层、子系统、包之间的关系,并且加入必要的文字说明,特别是架构的分层、机制和模式的说明在此,还需要将和本系统有接口关系的其它系统都表示出来,这样可以清楚的看到本系统和其它系统的接口逻辑视图,并且还需要将在本系统中负责接口的子系统表示出来分层在此说明逻辑分层的每一层和每一层中的包、子系统。对于每个重要的包,都用一个小节来加以说明,其中应包括该包的名称、简要说明以及显示该包中所有重要的类和包的图。对于该包中的每个重要类,应包括其名称、简要说明,还可选择包括对其部分主要职责、操作和属性的说明下面预先设置应用层、业务层、中间层和系统层,实际使用中可以根据需要进行
13、量级进程(成组的轻量级进程)的情况。本节的内容按照各个通信或交互的进程组来进行组织。说明进程之间的主要通信模式,例如消息传递、中断和会合根据项目的实际情况,此节可以省略不写部署视图本节说明用来部署和运行该软件的一种或多种物理网络(硬件)配置。对于每种配置,它至少应该指出执行该软件的物理节点(计算机、CPU)及其互连情况(总线连接、LAN连接、点到点连接等)在此还需要包括在安装部署时要注意的特殊问题,可能还有和安装部署有关的设计内容在此还需要表示本系统和其它系统的在部署上的关系,比如本系统部署的物理节点和其它系统部署的物理节点之间的连接等实施视图本节说明实施模型的整体结构、软件分解为实
14、施模型中的层和子系统的情况,以及所有在构架方面具有重要意义的构件概述本小节指定并定义各个层及其内容、添加到指定层时要遵循的规则以及各层之间的边界。还应包括一个显示层间关系的构件图如果使用JAVA做为实施语言,要求明确指定各层各子系统的包前缀层对于每个层,都用一个小节来加以说明,其中包括该层的名称和一个构件图,并列举位于该层的子系统如果使用JAVA做为实施语言,要求明确指定各子系统内分区的包前缀部署在此说明各个部署单元、每个部署单元的实施元素。在J2EE中,即表示要将应用打成多少个包,每个包的名称以及每个包包含的源文件数据视图从永久性数据存储方面来对系统进行说明。如果几乎或根本没有永久性数据,或者设计模型与数据模型之间的转换并不重要,那么本节就为可选根据项目的实际情况,此节可以省略不写大小和性能说明软件中会对构架产生影响的主要尺寸特征,以及目标性能约束质量说明软件构架如何促成诸如可扩展性、可靠性、可移植性等所有系统能力(而非功能)的实现。如果这些特征具有特殊的意义(例如在安全性或保密性方面的意义),则应该对它们进行详细的说明其它说明在