软件工程详细设计文档模板16页doc.docx
《软件工程详细设计文档模板16页doc.docx》由会员分享,可在线阅读,更多相关《软件工程详细设计文档模板16页doc.docx(12页珍藏版)》请在冰豆网上搜索。
软件工程详细设计文档模板16页doc
软件开发中心
SoftwareDevelopmentCenter
详细设计说明书
项目名称<项目名称>
文档类别<文档类别>
文档编号<文档编号>
版本
密级<秘密>
二〇二〇年四月九日
版本修订记录
版本
日期
描述
作者
审核
1
引言
1.1.编写目的
{简要说明编写这份详细设计说明书的目的,指出预期的读者。
本详细设计说明书的编写目的是为了说明程序系统的各个层次中的每个软件对象(包括每个模块和程序)的设计考虑,以向系统实现(编码和测试)阶段提供关于程序系统实现方式的详细描述,从而成为编码的技术基础。
本详细设计说明书的适用读者为:
软件开发者、测试人员}
1.2.项目概况
{1.说明待开发的软件系统的名称
2.列出本项目的任务委托单位、开发单位、协作单位、用户单位
3.说明项目背景,叙述该项软件开发的意图、应用目标、作用范围以及其他应向读者说明的有关该软件开发的背景材料。
如果本次开发的软件系统是一个更大的系统的一个组成部分,则要说明该更大系统的组成和介绍本系统与其它相关系统的关系和接口部分
4.保密说明:
本项为可选项,一般的软件公司都会要求对软件开发的概要设计文档进行保密,不允许被复制、使用和扩散到公司之外的范围,如果需要强调则允许做相关的保密说明
5.版权说明:
本项为可选项,若有必要,才要作有关的描述。
}
1.3.术语定义
{列出本文档中所引用到的专门术语的定义和首字母缩写词、缩略语的原文,以便对详细设计说明书进行适当的解释}
1.4.参考资料
{列出所本文档所使用的参考资料,包括:
A本软件开发所经核准的合同或标书或可行性报告等文档
B软件开发计划书
C需求分析报告
D测试方案(若存在初稿的话)
E概要设计说明书
F与本项目有关的已发表的文件或资料
G本文件中各处引用的文件、资料,所采用的软件开发标准和规范
注意:
必须列出文件、资料的作者、标题、编号、发表日期和出版单位,以说明这些文件资料的来源。
若某些文档有保密要求的,则要说明其保密级别。
2系统概述
{概要地介绍本软件系统,只要求提供影响详细设计的一般因素,不必太详细地描述大量细节,本章主要目的仅仅是使本详细设计说明书更加易于理解,建议根据系统设计的实际需要可以有选择地从以下方面进行概要描述:
系统体系结构、系统功能分布和层次结构、程序实现风格或方式}
2.1.系统体系结构
{画出系统的体系结构图,以说明系统体系结构的实现技术,所用到的数据库主体的描述、如何实现访问数据库、如何划分程序的主体部分}
2.2.系统功能分布和层次结构
{主要介绍本软件系统程序组织的结构,包括各个功能模块的划分,可以用模块层次结构图来表示,以说明各个模块之间的相互调用关系,或者也可以用一系列的图表来列出本程序系统内的每个程序(包括各个模块或子程序)的名称、标识符和它们之间的层次结构关系。
程序组织的层次结构关系可用表格形式进行描述,建议如下表:
模块名称
模块编号
子模块名称
功能说明
子模块编号
}
3程序设计详细描述
{从本章开始,逐个地给出程序组织结构中各个层次的每个程序的设计考虑,每一程序模块的详细设计描述单独为一节,标题格式为:
模块名称(模块编号)设计说明,例如:
3.1主界面untMsgMain{frmMsgMain}(000101)设计说明。
对每个程序模块(包括存储过程的设计),建议分别从以下几个方面进行描述:
注明该功能模块的编号和模块名称
模块功能简述
界面(包括屏幕编号,屏幕图片,控件说明)
所调用的模块(包括控件)的说明
变量说明
函数/过程列表
函数/过程说明(包括输入、输出和处理逻辑)
测试要求:
主要说明本模块进行单元测试的要点或注意事项
出错处理
尚未解决的问题
参考以下范例,允许根据实际需要进行裁剪:
3.1.客户开销户分类(Sp05210102)设计说明
模块编号
052盘后查询
源程序文件
Sp05210102
源程序名称
客户开销户分类
功能
查询客户的开销户情况汇总,包括开户数、销户数,正常客户.
源码类型
后台SP
相关源程序文件
khkxhfl05210102.jsp
修改历史纪录
修改人
日期
描述
XieYing
05/22/2000
Initial
被调用模块
Web前台
khkxhfl05210102.jsp
调用模块
输入参数
iyybdm
Char(3)
营业部代码
iksrq
Char(8)
开始日期
ijsrq
Char(8)
结束日期
输出参数
oerror
Char(20)
错误代码
otext
Char(100)
错误信息
结果集列表
Numeric
柜台开户数
Numeric
柜台销户数
Numeric
条码开户数
Numeric
条码销户数
Numeric
银行开户数
Numeric
银行销户数
Numeric
沪A股开户数
Numeric
沪A股销户数
Numeric
深A股开户数
Numeric
深A股销户数
Numeric
沪B股开户数
Numeric
沪B股销户数
Numeric
深B股开户数
Numeric
深B股销户数
数据域说明
临时表
要访问的表
要做修改的表
客户基本资料Khjbzl
股东代码表Gddmb
客户条码khtm
客户银行帐号Khyhzh
报表
提示信息
备注
逻辑处理说明
分解参数。
(包括参数出错处理)
调用SP《WEBMENUCHK》,传入参数ibycs4(userid)、ibycs5(菜单代码)、ibycs6(password)、ibycs7(客户端IP)执行权限校验,获得其返回参数oerror,otext.
3.If(SP《WEBMENUCHK》的返回参数oerror<>“CCS0000”)then
把SP《WEBMENUCHK》的返回参数oerror,otext.分别赋给
此sp的返回参数oerror,otext.并返回。
Endprogram。
Else
3.1计算数据
柜台开户:
SELECTCOUNT(*)
FROM《客户基本资料KHJBZL》
WHERE开户时间前8位满足输入日期或日期段
AND营业部代码=输入的营业部代码。
柜台销户:
SELECTCOUNT(*)
FROM《客户基本资料KHJBZL》
WHERE销户时间前8位满足输入日期或日期段
AND营业部代码=输入的营业部代码。
银行开户:
SELECTCOUNT(*)
FROM《银行表_客户银行帐号KHYHZH》
WHERE开户时间前8位满足输入日期或日期段
AND营业部代码=输入的营业部代码。
银行销户:
SELECTCOUNT(*)
FROM《银行表_客户银行帐号KHYHZH》
WHERE销户时间前8位满足输入日期或日期段
AND营业部代码=输入的营业部代码。
条码开户:
SELECTCOUNT(*)
FROM《客户条码表KHTM》
WHERE开户时间前8位满足输入日期或日期段
AND营业部代码=输入的营业部代码。
条码销户:
SELECTCOUNT(*)
FROM《客户条码表KHTM》
WHERE销户时间前8位满足输入日期或日期段
AND营业部代码=输入的营业部代码。
深A股开户:
SELECTCOUNT(*)
FROM《股东帐号表GDDMB》
WHERE开户时间前8位满足输入日期或日期段
AND市场代码=“2”/*深A*/
AND营业部代码=输入的营业部代码。
深A股销户:
SELECTCOUNT(*)
FROM《股东帐号表GDDMB》
WHERE销户时间前8位满足输入日期或日期段
AND市场代码=“2”/*深A*/
AND营业部代码=输入的营业部代码。
深B股开户:
SELECTCOUNT(*)
FROM《股东帐号表GDDMB》
WHERE开户时间前8位满足输入日期或日期段
AND市场代码=“4”/*深B*/
AND营业部代码=输入的营业部代码。
深B股销户:
SELECTCOUNT(*)
FROM《股东帐号表GDDMB》
WHERE销户时间前8位满足输入日期或日期段
AND市场代码=“4”/*深B*/
AND营业部代码=输入的营业部代码。
沪A股开户:
SELECTCOUNT(*)
FROM《股东帐号表GDDMB》
WHERE开户时间前8位满足输入日期或日期段
AND市场代码=“1”/*沪A*/
AND营业部代码=输入的营业部代码。
沪A股销户:
SELECTCOUNT(*)
FROM《股东帐号表GDDMB》
WHERE销户时间前8位满足输入日期或日期段
AND市场代码=“1”/*沪A*/
AND营业部代码=输入的营业部代码。
沪B股开户:
SELECTCOUNT(*)
FROM《股东帐号表GDDMB》
WHERE开户时间前8位满足输入日期或日期段
AND市场代码=“3”/*沪B*/
AND营业部代码=输入的营业部代码。
沪B股销户:
SELECTCOUNT(*)
FROM《股东帐号表GDDMB》
WHERE销户时间前8位满足输入日期或日期段
AND市场代码=“3”/*沪B*/
AND营业部代码=输入的营业部代码。
股东开户:
沪A股开户+深A股开户+沪B股开户+深B股开户
股东销户:
沪A股销户+深A股销户+沪B股销户+深B股销户
if取数据出错then
非“CCS0000”的错误代码赋值给本sp的返回参数oerror;
出错信息返回给本sp的返回参数otext;
返回参数;
endprogram;
elseif没有取到数据
该数据强制为其缺省值;
3.2取表Cxtjlsb中,字段“序列号”的最大值,并加1,作为此次插入的一批数据的序列号
insert
序列号;柜台开户数;柜台销户数;条码开户数;条码销户数;银行开户数;银行销户数;股东开户数;沪A股开户数;深A股开户数;沪B股开户数;深B股开户数。
IntoCxtjlsb
declarecursorfor
select
柜台开户数;柜台销户数;条码开户数;条码销户数;银行开户数;银行销户数;股东开户数;沪A股开户数;深A股开户数;沪B股开户数;深B股开户数。
Where表中字段“序列号”=此批插入数据的序列号。
opencursor
3.5把SP《WEBMENUCHK》的返回参数oerror,otext.分别赋给
此sp的返回参数oerror,otext.并返回。
3.6endprogram。
输入界面
屏幕编号:
a
主要控件说明:
输出界面
屏幕编号:
b
主要控件说明:
测试要求
出错处理
遗留问题
}
4公用接口程序设计说明
{给出各类公用接口的程序的设计考虑,如全局变量、公用界面、公用函数和过程等。
}
4.1.全局变量
{罗列各个全局变量的属性要求,包括全局变量名称、说明、数据类型、长度、取值范围等信息}
4.2.公用界面
{要求描述清楚公用界面的界面布局情况,以及界面上所涉及到的各种数据项的相关属性,与界面相关的详细处理说明(有逻辑算法和计算公式,则要详细说明)、输入和输出数据要求等等,要求要附有界面的书面格式,可详细注明参见某个图表或某个相关附件}
4.3.公用函数和过程
{介绍公用函数和过程所实现的主要功能,说明公用函数和过程所需调用的输入参数、输出参数以及逻辑处理和相关算法描述,并注明该公用函数和过程的适用范围,对其逻辑算法的描述建议参考第三章中程序设计详细描述的范例格式进行说明}
4.4.公用表辞典
{罗列公用表的数据结构,以及适用的范围,建议参考以下格式:
公用表名
字段名
数据类型
中文名称
适用范围
表1
字段名1
CHAR
(1)
名称1
所有软件模块
}
附件
{罗列与本详细设计报告相关的文档资料,可包括以下内容:
数据库设计的有关文档资料,如:
数据字典
用户界面有关约定、相关报表或模板格式、各种常规底稿模板等
编程语言程序设计规范
其它相关资料}