资源描述
密级:
****项目
详细设计说明书
(J2EE)
中创软件工程股份有限公司
二ОО*年**月**日
文件修订记录
变更版本
修订日期
原因与修改情况描述
位置(页/段落/章节号
修订人
审核人
[详细设计说明书编写要求:关于封面、目录、正文等排版要求请参阅项目文件排版指导;正文的内容参照以下要求组织,本模板只提供参考,根据项目的不同特点,对有关章节可做必要的剪裁与调整。]
1 引言
1.1编写目的
说明一个软件系统中的每一个程序的设计思路。该文件可作为公司软件开发人员、综合测试人员的指导性文件。
1.2背景
1、 开发的软件系统的名称
列出本软件系统的中文全称、英文全称及英文表示简称。
2、 开发的软件系统的最终用户或适用的领域。
1.3定义
列出本文件中用到的专门术语定义和外文首字母组词的原词组。
1.4参考资料
列出相关的参考资料,如:
a) 与本项目有关的上级机关的批文;
b) 属于本项目的其他已发表的文件;
c) 本文件中各处引用的文件、资料,包括所需用到的软件开发标准;
d) 与该项目工作产品有关的法律法规要求。
列出这些文件资料的标题、文件编号、作者、发表日期和出版单位等,说明能够得到这些文件资料的来源。
2 总体设计
2.1源码目标码组织
2.1.1多项目管理
对于需要划分多个子项目的项目,必须对各子项目划分及源码组织方式进行描述。
2.1.2模块的组织
给出系统中各模块的划分及相互之间的依赖关系。
例如:
给出对系统子系统模块及包的组织的详细说明。
模块名
模块发布名称
模块说明
权限管理
cvicse-rbac.jar
负责系统的认证及授权
2.1.3包的组织
模块名
包路径
包的说明
权限管理
com.cvicse.rbac
其中:包路径的定义及描述要求如下:
(1) 命名规则:com.cvicse.产品名称. + “子包名称”;用户有特殊要求的情况下可以不遵循该规则。[注:该部分内容是否由企管部统一管理?]
(2) 各产品必须在上述描述的系统包内划分package. 系统内的通用包内的内容由系统自己决定,通用包命名为common。
(3) 在设计文档中必须清楚地进行定义,并描述各package之间的依赖关系。
(4) 要求在每个包的路径下利用package.html 描述该包的涵盖的领域说明,并作为配置项进行管理。
包描述的层次必须能够满足项目组内每个成员理解的需要。
2.1.4层次的划分
给出对系统中业务层、控制层、展现层等各层次的说明及各层次之间关系的说明。
2.1.5界面源码存放路径
资源为(如JSP、CSS等)
给出对各系统、子系统、模块的JSP/CSS/图片存放路径统一的处理要求和约束条件。
模块名称
路径
路径的说明
2.2共性设计
在此章节,对项目中用到的各构件的共性部分,进行设计说明。
对于Action及ActionForm的描述限制于Struts开发,其它内容适用于J2EE开发。
该部分设计要求至少包括如下内容:
(1) 采用的整体框架模式,各技术层次源码划分及组织规则,必须明确各个层次的相关职责。如MVC框架,必须描述清楚M、V、C各元素的代码组织方式及命名规则机制则必须写清楚。再如:如在实现中曾家BO(BusinessObject)层面或DAO层面,必须对其承担的职责进行清晰的划分。DAO对于CRUD操作的命名规则进行清晰描述。
(2) 事务处理模式
(3) 日志处理模式
(4) 异常处理模式
(5) 错误信息处理模式
(6) 数据库资源获取规则
(7) 界面模式及界面展现约束
(8) 配置文件要求
(9) 通用业务处理模式,包括分页处理等等
如struts,给出对struts配置文件的说明和统一的处理要求和约束条件,如模块化建义、ActionMapping等。
3 系统功能设计
设计原则是代码文档一体化,尽量利用Java Doc 来描述详细设计。
在本章节对系统的各子系统、模块进行设计说明。
每一小节,就是一个子系统模块的详细设计。
3.1Xxxxx模块
3.1.1功能概述
3.1.2页面流
3.1.2.1 xxxx jsp [尽量在原型中进行描述]
3.1.2.2原型界面
在此仅需指明相关路径。
3.1.2.3查询条件
在该区域:说明对应的提交路径, 必须说明HIDDEN等特殊需要描述的内容。
输入Label
名称
类型
是否可空
校验规则
匹配条件
说明[包括默认值]
认可年度
不可
=
船级社国籍
不可
=
注:
FORM 表单元素类型说明:
HIDDEN
TEXT: 文本输入框,默认情况下与数据库的对应字段
SELECT: SELECT 必须说明是否需要参数标签,如果需要则描述为 SELECT[标签名称],如果包括检索条件则表示为 SELECT[标签名称,条件]
CHECKBOX
TEXTAREA
BUTTON
RADIO
HIDDEN
FILE
PASSWORD
校验规则说明:
DECIMAL(16,2,正负号) ,其中+或-表示允许输入正负号,如Decimal(16,2),表示可输入正负号. Decimal(16,2,+) 表示不允许输入负号, DECIMAL(16,2,-), 表示只能输入负号
MONEY(10,2,正负号): 与DECIMAL的输入校验相同。
DATE(YYYY-MM-DD)
DATETIME(YYYY-MM-DD HH:MI:SS)
TIME(HH:MI:SS)
EMAIL: 电子邮件
TELEPHONE: 座机电话,输入模式位 0531-2963478 6462
MOBILEPHONE: 移动电话,全数字输入,不超过11位
IDCARD :身份证号码
TEXT[5,10] 最小输入5个字符,最大可输入10个字符,默认情况下与对应数据结构的字段长度相同。对于数据结构固定长度char的字段,其表示方式为TEXT[10,10],表示输入的字符数必须为10个字符。 对于没有最小字符串限制的输入表示为 TEXT[10].
领域内可根据自己的需要定义相应的规则,
匹配条件:
%Like 表示右匹配,
%like% 表示中间匹配,
Like% 表示右匹配
=
>
<
<>
说明: 其它需要注释的项目
3.1.2.4查询结果列表
列表的排序方式
内容标题内容分步【居中、居左、居右】模式
信息项目
格式
说明
3.1.2.5保存更新项目
该区域明确对应的ActionPath
对于该部分内容,如果存在界面原型,则该部分内容仅需描述HIDDEN变量或其它特殊校验的输入项目说明。
输入Label
名称
类型
是否必输
校验规则
说明
Hidden
必输
TEXT
可输
Select[标签名]
备注:凡是不再此描述的内容,参照界面原型及数据库设计要求。
3.1.2.6其它URL[非FORM]关联关系
连接 名称
连接的URI
相关参数
展现模式
说明
连接名称:表示连接对象的展示名称或展示内容所在HTML TABLE的column名称,如
<a href=”/templet/news.jsp”> 展示新闻</a>, 则连接的名称为“展示新闻”。
再如,展示新闻标题列表,根据新闻标题可连接到对应的新闻。则连接的名称为“新闻标题”。
相关参数:必须说明参数的名称
展现模式:模式对话框、非模式对话框、新窗口、当前窗口
说 明:其他需要说明的内容。
3.1.2.7界面处理提交前动作说明[针对FORM提交]
该部分内容仅描述界面相关的动作处理,如涉及的输入关联的逻辑校验,客户端数值计算等。
动作名称
处理说明
其它说明
保存
3.1.3java 类说明
类型
类名称
功能简述
3.1.4业务逻辑处理说明
注:该部分内容建议在Action中进行描述,除非需要更加细节的阐述
处理时序[对于相类似的处理,可以在概要设计中进行说明,在此仅仅参照概要设计即可]
对于复杂的逻辑,需要利用活动图进行描述
(1) 清楚描述不同的条件分支
(2) 清楚的描述对于状态或标志的更改
(3) 描述清楚业务执行过程中需要操作的DAO对象及相关的操作
(4) 错误处理描述[建立统一的出错信息表]
(5) 提示信息描述
(6) 可以利用UML的活动图描述业务逻辑或时序图对对象间的协作进行描述。
条件
涉及的DAO
对于数据库状态的改变
出错提示
成功信息
3.1.5业务代码设计
XX代码
项目
说明
规范目标
用于对货票属性进行编码规范化管理
编码规则
1位字符,规则如下:
0或空格-普通货票、1-国际联运、2-水路联运、3-军用后付
取值范围
可空格或者0、1、2、3
字段名称
HPSX
数据类型
Char(1)
使用范围
集装箱系统
数据维护
当货票属性代码变更时,由铁道部电子中心负责统一维护,保证数据的一致性。可通过数据库的数据维护功能来实现,不能在应用系统中单独设立维护模块来维护。
规范来源
行业标准
3.1.6标签设计[应涵盖系统中所有状态]
应用范围: 利用电子商务事业部开发cvicse-commons.jar 包
参数设计: 参数的名称与表名相对应
序号
标签中文名称
标签名称
标签类型
数据定义
使用说明
1
船舶航线
tagCbhx
config
1|国内; 2|国际;3|港澳
<param:select type="tagCbhx" property=" " styleId=" " nullStr=""/>
<param:display type="tagCbhx" name=" " property=" "/>
2
sql
必须说明连接的数据源
3.1.7JavaDoc
对业务逻辑和算法进行详细描述,生成JavaDoc文档。
展开阅读全文