详细设计说明书模版.docx
《详细设计说明书模版.docx》由会员分享,可在线阅读,更多相关《详细设计说明书模版.docx(19页珍藏版)》请在冰豆网上搜索。
详细设计说明书模版
公路水路交通运输信息共享与服务系统一期工程
(XX子系统)
详细设计说明书
文件状态:
[]征求意见稿
[√]正式发布
拟制
日期
文件编号
审核
日期
批准
日期
版本号
版本历史
版本/状态
作者
参与者
起止日期
修改内容
签字页
单位名称
代表人
日期
(承建单位)
(设计单位)
(监理单位)
(用户单位)
(建设单位)
(总集成单位)
目录
第一章概述1
1.1项目背景1
1.2编写目的1
1.3预期的读者1
1.4阅读建议1
1.5参考资料2
1.6术语2
1.7设计的前提与限制3
第二章XXX系统设计4
2.1平台功能要求4
2.2运行环境5
2.2.1平台安装网络环境5
2.2.2数据中心运行环境5
2.2.3客户端运行环境5
2.3主要界面6
2.3.1界面16
2.3.2界面n6
2.4功能结构6
2.4.1功能16
2.4.2功能n15
2.5接口设计17
2.5.1内部接口设计17
2.5.2软件接口设计17
2.5.3外部接口设计17
2.5.4可扩展接口设计17
2.6安全保密设计17
2.6.1用户使用权限设计17
2.6.2存储安全性设计17
2.6.3数据传输安全性设计17
2.7出错处理设计17
2.7.1出错信息17
2.7.2补救措施18
2.8维护设计19
第一章概述
一.1项目背景
一.2编写目的
根据XXX系统需求规格说明书和概要设计说明书内容,对需求规格说明书确定的功能需求和数据需求,在概要设计的基础上,结合原型开发过程设计的类、函数、数据库表结构和字段等,从总体设计、各子项(平台及各应用系统)程序设计的角度进行详细阐述,作为开发、测试、部署实施及验收的主要依据之一。
该文档和概要设计、数据库设计文档一起,作为设计评审的依据。
一.3预期的读者
●评审专家组成员;
●项目管理单位技术人员;
●项目开发单位项目经理、设计人员、开发人员、测试人员、文档管理人员等;
●项目监理单位具体负责人员;
●与本项目相关的其它人员。
一.4阅读建议
详细设计是在概要设计的基础上,对概要设计描述的功能点内容进一步细化,从功能实现的角度,详细描述功能接口、算法、输入输出、代码实现等内容,对于每一个实现的功能要附有代码或伪码,并标有注释描述。
因此,详细设计主要供设计开发人员阅读,作为开发人员开发的依据。
一.5参考资料
●
一.6术语
●元数据:
元数据是数据的数据,即对数据的描述性信息,包括用于描述结构化数据的内容、覆盖范围、质量、管理方式、数据的所有者等信息。
●源数据:
是指在进行数据交换时,数据所在地的原始数据。
●耦合:
耦合是指两个或两个以上的模块或子系统、系统的输入与输出之间存在紧密配合与相互影响。
●松耦合:
是指模块或子系统、系统间的独立性好,相互影响小,可移植性好,支持代码重用性。
●GIS:
英文GeographicInformationSystem,中文指地理信息系统。
●公路网:
一定区域内相互连通、交织成网状分布的公路系统。
●地理数据:
指表征地理圈或地理环境固有要素或物质的数量、质量、分布特征、联系和规律的数字、文字、图像和图形等的总称。
●地理信息:
有关地理实体的性质、特征和运动状态的表征和一切有用的知识,它是对地理数据的解释。
●信息系统:
具有数据采集、管理、分析和表达数据能力的系统,它能够为单一的或有组织的决策过程提供有用的信息。
●驱动:
某一类事情的统称.如访问ORACLE数据库、访问SYBASE数据库、获取气象信息等等。
●事件:
定义于某个函数,当这个函数被用户执行的同时,这个事件也同时被触发。
如给获取北京的气象信息这个函数定义一个插入数据中心的事件,当用户获取北京的气象信息的时候,获取到的气象数据同时被插入到相应的数据中心里。
●数据源:
DSN(DataSourceName),用于连接某个具体数据库的名称。
●度量指标:
竖型显示数据的统计信息。
全部以数字为主。
主要展示出金额,车数流量等类似的统计信息。
●纬度指标:
横向显示数据的明细信息。
根据横向条件来显示竖型统计信息的明细。
例如:
按区划来横向分析车数流量。
●分析策略:
根据竖型显示的数据和横向显示的数据显示出的的报表效果,做出一个什么样的分析。
以表示每出的一个分析报表都是有意义,有针对性的。
一.7设计的前提与限制
XXX系统详细设计说明书以需求规格说明书和概要设计为依据,设计的前提和限制条件是需求规格说明书规定的需求内容和概要设计描述的内容,对于没有规定和描述的内容,不纳入设计范畴。
如需求发生变更,则首先履行需求变更手续,更改需求规格说明书,然后相应的更改概要设计内容,此后才更改相应的详细设计内容。
第二章XXX系统设计
二.1平台功能要求
XXX系统,从逻辑功能来分,主要等。
整合平台功能需求如表(与需求规格说明书对应)所示。
例:
名称
功能点
详细功能点
功能简要说明
XXX系统
节点管理
交换节点管理
交换节点(适配器)注册。
功能节点管理
功能节点依托于交换节点进行分发以及采集数据。
事件管理
功能节点通过事件进行对数据的处理,用户可以根据事件对数据进行处理。
交换任务管理
数据抽取
实现源数据的抽取(包括清洗、过滤等)、转换、装载以及与底层的消息服务器进行通讯。
数据装载
根据抽取规则所抽取的数据装载到目标数据库中。
任务管理
对配置的数据抽取和数据装载的规则进行配置任务
系统管理
数据源管理
管理相关数据对象、基础数据对象等初始化配置。
用户管理
用来管理登陆平台的用户信息,增删改用户,分配角色,赋予权限。
时间设置
用来设置时间,保证平台时间与当前时间相同。
IP设置
对平台4个网口进行配置。
日志管理
列出整合库可记录的所有工作日志类型项,进行日志监控和管理。
日志查看
对记录的日志进行查看。
任务监控
查看平台所进行的交换任务。
驱动管理
平台的预留接口,可以任意对平台不断进行扩展。
密码修改
为登陆平台的用户进行修改密码。
表31XXX系统功能需求点列表
二.2运行环境
二.2.1平台安装网络环境
二.2.2数据中心运行环境
硬件环境要求
●
软件环境要求
●
网络环境要求
二.2.3客户端运行环境
硬件环境需求
●
软件环境需求
●
网络环境需求
二.3主要界面
二.3.1界面1
二.3.2界面n
二.4功能结构
图:
总体功能图
二.4.1功能1
增改XXX程序描述
功能
例:
本程序完成对驱动的增加和修改。
交换节点(适配器)注册。
性能
例:
一个驱动标识一个数据来源,包括来自数据库、其他业务系统接口。
能准备定位新驱动的数据来源等信息。
输入项
例:
●交换节点名称:
交换节点的唯一标识
●驱动名称:
驱动的唯一标识
●数据源:
用于连接节点数据库的唯一标识。
●描述:
用于显示在界面上的节点标签。
●所属单位:
标识交换节点的所属的单位。
输入的方式
例:
●交换节点名称:
用户可以页面编辑框中输入。
●驱动名称:
用户可在页面下拉框中选择。
●数据源:
用户可在页面的下拉框中选择。
●描述:
用户可以页面编辑框中输入。
●所属单位:
用户可以页面编辑框中输入。
输出项
例:
●成功:
返回成功信息。
●失败:
返回错误提示。
功能界面
例:
点击“节点管理”菜单下的“交换节点管理”,您可以看见所有的节点信息。
如图:
图318交换节点管理
您可以增加和删除交换节点。
●增加交换节点
点击“增加”按钮,进入“选择驱动”页面,选择驱动名称,点击“下一步”,填写相应信息,点击“保存”。
●删除节点
选择您需要删除交换节点的项目,可以多个,选择完毕后,点击“删除”按钮进行删除。
流程逻辑
例:
本程序首先得选择这个驱动,驱动再进行调用的动态库文件。
选择驱动后在系统数据库中的驱动基本信息表中增加相应的记录。
图319节点设置流程图
接口
例:
与驱动之间进行动态调用。
代码(伪码)实现
例:
/*增改交换节点,组织新交换节点报文*/
byte[]len=newbyte[18];
in.read(len);
Stringheadstr=null;//节点报文
headstr=newString(len);
Stringsrevicestatus=null;//声明节点状态变量
Stringsrevicekeytype=null;//声明加密方式变量
Stringsrevicerow=null;//声明节点报文行数变量
Stringsrevicerol=null;//声明节点报文列数变量
Stringsrevicecount=null;//声明报文字节数变量
srevicestatus=headstr.substring(0,1);//得到节点状态,并赋值
srevicekeytype=headstr.substring(1,2);//得到加密方式,并赋值
srevicerow=headstr.substring(2,6);//得到节点报文行数,并赋值
srevicerol=headstr.substring(6,10);//得到节点报文列数,并赋值
srevicecount=headstr.substring(10,18);//得到节点报文字节数,并赋值
存储分配
例:
本程序的涉及到的数据都存于系统数据库的节点基本信息表中。
当某个节点被调用时,系统会把这个节点的信息加载到内存中。
数据引用
例:
节点基本信息表
字段名
数据类型
字段说明
交换节点编号
字符型
用作节点基本信息表的主键,唯一标识一个驱动。
交换节点名称
字符型
能含有中文。
交换节点描述
字符型
可以为中文,作为显示在页面上的节点标签。
交换节点类型
字符型
标识该驱动获取数据的方式。
驱动
字符型
支撑驱动功能的动态库文件。
注释设计
例:
●加在模块首部的注释;
/*定义交换节点*/
●b.加在各分枝点处的注释;对各变量的功能、范围、缺省条件等所加的注释;
/*增加新节点*/
/*组织报文*/
/*发送报文*/
/*处理报文*/
/*连接数据库*/
/*插入新记录到节点基础表中*/
/*断开数据库*/
/*修改节点信息*/
/*组织报文*/
/*发送报文*/
/*处理报文*/
/*连接数据库*/
/*修改交换节点基础表中相应信息*/
/*断开数据库*/
模块测试计划
例:
增改交换节点模块采用交叉测试。
删除XXX程序描述
功能
例:
删除某个交换节点。
性能
例:
能把用户要删除的交换节点的基本信息从系统数据库的节点基础表中清除。
输入项
例:
●交换节点编号:
用于唯一标识一个交换节点。
输入的方式
例:
在页面上选择。
输出项
例:
●成功:
返回成功信息。
●失败:
返回错误提示。
功能界面
例:
点击“节点管理”菜单下的“交换节点”,您可以看见所有的节点信息。
如图:
图320节点展示
您可以删除节点。
●删除节点
点击“删除”按钮,弹出对话框,点击“确定”。
流程逻辑
例:
本程序通过用户页面提供的驱动编号,访问系统数据库中的驱动基础表,删除相应记录并清除内存中相应的驱动信息。
图321删除节点流程图
代码(伪码)实现
例:
/*删除交换节点*/
/*遍历节点列表,获取要删除的交换节点编号*/
for(introw=0;row{
configdtoconfigdto=newconfigdto();
UtilTool.strspilt(revicepackeg,"\n",row);
System.out.println(revicepackeg1);
if(Integer.parseInt(srevicerol)>0){
intitmp=0;
Stringstmp=null;
stmp=UtilTool.strspilt(revicepackeg1,"\t",0);
itmp=stmp.indexOf("_");
if(itmp>0)
{
itmp=itmp+1;
stmp=stmp.substring(itmp,stmp.length());
}
list.del(configdto);//删除节点
}
注释设计
例:
●加在模块首部的注释;
/*删除交换节点*/
●加在各分枝点处的注释;对各变量的功能、范围、缺省条件等所加的注释;
/*获取节点编号*/
/*组织报文*/
/*发送报文*/
/*连接数据库*/
/*删除相应节点记录*/
/*断开数据库*/
模块测试计划
例:
删除交换节点模块采用交叉测试。
二.4.2功能n
增改XXX程序描述
功能
性能
输入项
输入的方式
输出项
●
功能界面
流程逻辑
接口
代码(伪码)实现
数据引用
注释设计
模块测试计划
删除XXX程序描述
功能
输入项
输入的方式
输出项
功能节点管理界面
流程逻辑
代码(伪码)实现
注释设计
模块测试计划
二.5接口设计
二.5.1内部接口设计
二.5.2软件接口设计
二.5.3外部接口设计
二.5.4可扩展接口设计
二.6安全保密设计
二.6.1用户使用权限设计
二.6.2存储安全性设计
二.6.3数据传输安全性设计
二.7出错处理设计
二.7.1出错信息
例:
下表列出来系统可能出现的轻微错误及相应的处理办法:
可能出现错误
系统内部错误信息
处理方法
连接数据库错误
3001
检查用户输入用户名、密码和数据源名是否有误。
获取数据错误
3002
检查附加数据语法是否有误。
SOCKET通讯错误
3003
检查网络是否连通。
HTTP通讯错误
3004
检查网络和防火墙是否开启。
SOAP通讯错误
3005
检查网络。
用户操作错误
3006
后退,并重新操作。
用户输入错误
3007
检查用户输入的数据格式或数据类型是否合理。
模块接口错误
3008
检查软件内部接口是否完好。
二.7.2补救措施
为了保证数据交换平台的安全性,我们设计的数据交换平台有很完善的故障补救方案,包括下面几项:
●后备技术:
数据交换平台可以把数据以XML的格式发布给其他应用系统或其他用户,用户也可以通过手工的方式把数据导出到其他存储设备中。
●降效技术:
数据交换平台中以插件的方式,在系统中插入了一个批量导入导出数据的程序防止平台在数据交换的过程中遇到过大数据量时出现故障。
这个程序能够一次处理几百万的数据而且速度有一定的保障。
●恢复及再启动技术:
数据交换平台具有很强大的回滚功能。
当由于发生某些故障而导致数据中心有一些垃圾数据。
平台可以回滚到用户错误操作之前的状态。
二.8维护设计
●软件可扩展性
数据交换平台的模块化设计保证了新技术、新服务和新应用出现时能够灵活扩展,必要时能够很快的为用户定制和扩展插件。
对于从其他系统或者网络中获取数据,数据交换平台提供了数据交换平台企业智能代理来获取数据。
●硬件可扩展性
数据交换平台提供4路标准1000M以太网通讯接口,无须增加路由设备即可实现最多4种网关网络的互联。
第三章需求可追踪性
本章应包括:
a.从本规格说明中每个计算机软件配置项的需求到其所涉及的系统(或子系统)需求的可追踪性。
(该可追踪性也可以通过对第3章中的每个需求进行注释的方法加以描述).
注:
每一层次的系统细化可能导致对更高层次的需求不能直接进行追踪。
例如:
建立多个计算机软件配置项的系统体系结构设计可能会产生有关计算机软件配置项之间接口的需求,而这些接口需求在系统需求中并没有被覆盖,这样的需求可以被追踪到诸如“系统实现”这样的一般需求,或被追踪到导致它们产生的系统设计决策上。
b.从分配到被本规格说明中的计算机软件配置项的每个系统(或子系统)需求到涉及它的计算机软件配置项需求的可追踪性。
分配到计算机软件配置项的所有系统(或子系统)需求应加以说明。
追踪到接口需求中所包含的计算机软件配置项.