公司名称
{ 项目名称 }
软件总体设计文档
文件状态:
[√] 草稿
[
[
] 正式发布
] 正在修改
文件标识:
当前版本:
作
审
者:
核:
完成日期:
项目名称,软件总体设计文档
版 本 历 史
版本/状态
作者
审核
起止日期
备注
公司名称
Page 2 of 8
项目名称,软件总体设计文档
目目 录录
0. 文档介绍 ......................................................................................................................................... 4
0.1 文档目的与范围 .......................................................................................................................4
0.2 读者对象 ....................................................................................................................................4
0.3 参考文献 ....................................................................................................................................4
0.4 术语与缩写解释 .......................................................................................................................4
1. 系统概述 ......................................................................................................................................... 5
2. 设计约束 ......................................................................................................................................... 5
3. 开发与运行环境 .............................................................................................................................5
4. 软件的总体结构图 ........................................................................................................................ 6
4.1 结构图 A ....................................................................................................................................6
4.2 结构图 B .................................................................................................................................... 6
5. 功能模块设计概述 ........................................................................................................................ 6
5.1 模块命名规则 ........................................................................................................................... 6
5.2 模块汇总 ....................................................................................................................................6
6. 数据库设计概述 .............................................................................................................................7
6.1 数据库环境说明 .......................................................................................................................7
6.2 数据库命名规则 .......................................................................................................................7
6.3 表汇总 ........................................................................................................................................ 7
7. 用户界面设计概述 ........................................................................................................................ 7
8. 综合考虑 ......................................................................................................................................... 8
8.1 稳定性和可扩展性 ...................................................................................................................8
8.2 性能分析 ....................................................................................................................................8
8.3 复用和移植 ............................................................................................................................... 8
8.4 防错与出错处理 .......................................................................................................................8
8.5 其它 ............................................................................................................................................ 8
公司名称
Page 3 of 8
项目名称,软件总体设计文档
0. 文档介绍
0.1 文档目的与范围
0.2 读者对象
0.3 参考文献
提示:列出本文档的所有参考文献(可以是非正式出版物),格式如下:
[标识符] 作者,文献名称,出版单位(或归属单位),日期
0.4 术语与缩写解释
缩写、术语
解 释
…
公司名称
Page 4 of 8
项目名称,软件总体设计文档
1. 系统概述
提示:(1)说明本系统“是什么”,(2)描述本系统的主要功能。
2. 设计约束
提示:
(1)需求约束。体系结构设计人员从需求文档(如《用户需求说明书》和《软件需求规
格说明书》)中提取需求约束,例如:
本系统应当遵循的标准或规范
软件、硬件环境(包括运行环境和开发环境)的约束
接口/协议的约束
用户界面的约束
软件质量的约束,如正确性、健壮性、可靠性、效率(性能)、易用性、清晰性、
安全性、可扩展性、兼容性、可移植性等等。
(2)隐含约束。有一些假设或依赖并没有在需求文档中明确指出,但可能会对系统设计
产生影响,设计人员应当尽可能地在此处说明。例如对用户教育程度、计算机技能的一
些假设或依赖,对支撑本系统的软件硬件的假设或依赖等。
3. 开发与运行环境
提示:说明本系统应当在什么样的环境下开发和运行,有什么强制要求和建议?
类别
标准配置
最低配置
开发环境
测试环境
运行环境
公司名称
Page 5 of 8
项目名称,软件总体设计文档
4. 软件的总体结构图
提示:
(1)将系统分解为若干子系统,绘制各种结构图(例如层次结构图、数据流图),说明
各子系统的主要功能。(尽可能简单明了,但是能够阐述清楚系统的结构)。
(2)说明“如何”以及“为什么”(how and why)如此分解系统。
(3)说明各子系统如何协调工作,从而实现原系统的功能。
4.1 结构图 A
4.2 结构图 B
5. 功能模块设计概述
5.1 模块命名规则
提示:说明源文件、类、函数、变量等命名规则
5.2 模块汇总
子系统 A
模块名称
…
子系统 B
模块名称
…
公司名称
设计概述
设计概述
Page 6 of 8
项目名称,软件总体设计文档
6. 数据库设计概述
6.1 数据库环境说明
提示: 说明所采用的数据库系统,设计工具,编程工具,有关配置等
6.2 数据库命名规则
提示:说明表、字段等命名规则
6.3 安全性设计说明
提示:考虑用户密码、访问权限等等
6.4 表汇总
表名
表 A
表 B
表 C
设计概述
7. 用户界面设计概述
提示:说明界面设计要素,注意事项,界面原型等。
公司名称
Page 7 of 8
项目名称,软件总体设计文档
8. 综合考虑
8.1 稳定性和可扩展性
提示:在“软件”生命周期内,判断哪些需求是不变的,预测哪些需求可能发生的变化。
在总体设计的时候,既要使总体结构稳定,又要适应需求变化。
8.2 性能分析
提示:
(1)本系统应当具备哪些性能指标才能满足用户的需求?
(2)如何实现性能指标?
8.3 复用和移植
提示:
(1)本系统复用了什么东西(说明出处)?如何解决被复用成果的质量问题?
(2)本系统中哪些东西是可以被将来的系统复用的?有什么构思?
(3)如何使本系统的功能代码和用户界面代码区分开来
8.4 防错与出错处理
提示:
(1)如何预防系统出错?
(2)如果系统出错了,如何处理以减少危害?
8.5 其它
公司名称
Page 8 of 8