唐杨烱.唐昭武校尉曹君神道碑有这样的记载:“托无愧之铭,跋涉载劳於千仞,访他山之石,东西向逾万里。”诚所谓:它山之石,可以攻玉。
一、关于详细设计说明书
最近在准备一个项目的详细设计说明书。编制详细设计说明书的目的,在于说明一个软件系统各个层次中的每一个程序 (每个模块或子程序)的设计。详细设计基于需求调研分析成果和概要设计成果编制,是系统开发、测试、验收等项目过程的重要指导文件。也不难理解,为什么在电视剧生产量最大的中国,很多导演或演员总会叹息:没有好本子。
确实,一个好本子,可以让一个名不见经传的演员一炮走红;一个垃圾本子,则可能让一个很红的实力派演员被人称为奶油小生。
自然,也就会归结到我们的系列话题:互联网产品设计。详细设计说明书用来指导设计人员、开发人员、工程人员、测试人员更好地完成相关工作。文档的颗粒度越高,越有利于直接指导开发人员进行实现。
详
细设计是考验技术专家设计思维的重要关卡,详细设计说明书应当把具体的模块以最“干净”的方式(黑箱结构)提供给编码者,使得系统整体模块化达到最大。一
份好的详细设计说明书,可以使编码的复杂性减低到最低,实际上,严格的讲详细设计说明书应当把每个函数的每个参数的定义都精精细细的提供出来,从需求分析
到概要设计到完成详细设计说明书,一个软件项目就应当说完成了一半了。换言之,一个大型软件系统在完成了一半的时候,其实还没有开始一行代码工作。当然,
“胸中有丘壑”者例外。
做产品设计之前,可以在浏览器中输入
http://file.baidu.com
,在出现的浏览器界面中,再输入“详细设计说明书”,你会有许多意想不到的收获,没准你会轻松理解某个大型社区的详细设计。
一个典型的参考目录
这是一个典型的参考目录。
1. 综述... 4
1.1. 文档说明... 4
1.2. 编写目的... 4
1.3. 适用范围... 4
1.4. 名词、术语、缩略语定义... 5
1.5. 参考资料... 5
2. 项目概述... 5
2.1 项目背景... 5
2.2 项目名称... 6
2.3 项目单位... 6
2.4 项目目标... 6
3. 任务概述... 7
3.1 设计目标... 7
3.2 系统环境... 7
3.3 需求概述... 7
3.4 条件与限制... 8
3.5 详细设计的基本任务... 9
4. 总体设计... 9
4.1 设计方法论... 9
4.2 系统总体结构... 9
4.3 逻辑架构... 9
4.4 软件架构... 9
4.5 部署结构... 10
5. 功能设计... 10
5.1 功能划分... 10
5.2 子系统名称A.. 11
5.3 子系统名称B. 12
6. 级联设计... 13
6.1 系统级联概述... 13
6.2 级联应用场景... 13
6.3 级联设计方案... 13
7. 栏目与页面设计... 13
7.1 桌面栏目设计... 13
7.2 系统页面设计... 13
8. 外部接口设计... 14
8.1 平台内部接口... 14
8.2 第三方产品接口... 14
8.3 业务应用系统接口... 14
9. 程序结构描述... 15
9.1 程序目录结构... 15
9.2 代码目录规则... 15
9.3 数据命名规范... 15
10. 异常处理机制... 15
三、简明扼要的书写
说明书确实要尽量全,但不能因为“全”而忽略了条理性。篇幅所限,这里列举一个比较直观的实例。
为了说明“学生信息查询模块”,可以遵循以下步骤。
第一,功能流程图。如下图所示。
第二,功能描述。如下所示。
(1) 功能类型:查询数据
(2) 功能概述:显示查询结果
(3) 前提业务:无
(4) 后继业务:
(5) 功能约束:没有约束;
(6) 约束描述:
(7) 操作权限:面向所有用户
第三,界面中的动作说明,如下所示。
动作编号
|
动作名称
|
动作描述
|
A01
|
确定
|
点击按钮 提交数据到图书查询数据处理.jsp页面
|
A02
|
图书信息查询
|
点击按钮 将页面转至图书信息查询.jsp页面
|
第四,模块内部逻辑,如下所示。
01. Search.jsp用于显示界面的内容,给用户显示一个查询接口
02. Index.jsp用来调度所有的页面,它根据传入的参数来决定包含哪一个jsp页面来显示内容;
在index.jsp页面中,
它根据传入的参数来决定包含哪一个jsp页面来显示内容;则可以通过<jsp:include page=”<%= ……%>”/>,利用jsp:include标签来被动态加载发送到相应页面;
03. List.jsp 用来显示查询到的结果列表。
04. View.jsp用来显示查询到的学生的各项属性。
第五,存储分配。以学生文件为例。
序号
|
字段
|
字段名
|
类型
|
长度
|
精度
|
小数位数
|
默认值
|
允许空
|
主键
|
说明
|
1
|
XSID
|
学生编号
|
Int
|
10
|
|
|
1
|
|
√
|
自动编号
|
2
|
Name
|
姓名
|
nvarchar
|
10
|
|
|
|
|
|
|
3
|
Sex
|
性别
|
nvarchar
|
2
|
|
|
|
√
|
|
|
4
|
ZJH
|
证件号码
|
nvarchar
|
25
|
|
|
|
√
|
|
|
5
|
LXDH
|
联系电话
|
nvarchar
|
40
|
|
|
|
√
|
|
|
6
|
DJRQ
|
登记日期
|
datetime
|
8
|
|
|
|
√
|
|
|
7
|
YXQZ
|
有效期至
|
datetime
|
8
|
|
|
|
√
|
|
|
8
|
YJSS
|
已借书数
|
smallint
|
2
|
|
|
|
√
|
|
|
9
|
RuleID
|
学生规则ID
|
int
|
10
|
|
|
|
|
|
|
10
|
ZT
|
是否挂失
|
nvarchar
|
2
|
|
|
|
√
|
|
|
分享到:
相关推荐
### 大华监控主机使用说明书知识点总结 #### 一、重要安全须知 - **使用要求**:确保设备不置于阳光直射处或热源附近,避免安装在潮湿、多尘或多烟环境中;应平置或稳固安装,远离液体,避免堵塞通风口,并在规定...
以上是对DI-514路由器中文说明书中的关键知识点的详细解读,覆盖了产品的硬件规格、无线特性、路由器功能以及安全机制等方面,同时涵盖了连接设置、设置画面说明、各种实用的应用场景以及常见的问题解决方法。...
该软件不仅能够高效管理灯光系统的所有文档工作,还能生成详细的灯具清单和数量报告,让设计者无需现场实际布灯就能规划、展示和验证设计效果。 #### 二、产品组件与注册流程 WYSIWYG软件套装由三个主要组件构成:...
### Lenovo Ideapad Y485 使用说明书知识点总结 #### 第2章 学习基本操作 ...以上内容为Lenovo Ideapad Y485使用说明书的部分知识点总结,旨在帮助用户更好地理解和掌握笔记本的基本操作及进阶功能。
### 苹果华丽说明书知识点详解 #### 一、前言:了解 iPod nano - **产品简介**:iPod nano 是一款由苹果公司推出的便携式多媒体播放器,它集音乐播放、视频观看、图片浏览等功能于一体,是外出携带的理想选择。 - ...
下面将对标题和描述中提到的一些关键知识点进行详细说明。 1. **网站的基本类型**: - 宣传网站:主要用于展示企业形象、产品或服务信息。 - 企业门户网站:企业的官方入口,提供公司新闻、产品信息、联系方式等...
第三,实践类的操作系统书籍还是太少了,以至于你要想看看别人是怎么做的,除了读以《操作系统:设计与实现》为代表的极少数书籍之外,就是一头扎进源代码中,而结果有时相当令人气馁。我自己也气馁过,所以我在第二...
第三,实践类的操作系统书籍还是太少了,以至于你要想看看别人是怎么做的,除了读以《操作系统:设计与实现》为代表的极少数书籍之外,就是一头扎进源代码中,而结果有时相当令人气馁。我自己也气馁过,所以我在第二...
软件规格说明书(SRS)是需求分析的成果,软件设计要求低耦合性和高内聚性以提高可维护性。 14. **软件开发方法**:结构化方法包括结构化分析、设计和编程,通过数据流图等工具进行分析。软件测试和程序调试是不同...
- **实施过程**(1-3):详细介绍从设计到实现的具体步骤。 - **总结、技巧与窍门**(1-6):提供实用的建议和注意事项,帮助学生避免常见的错误。 - **Lesson 2:簇(Clusters)** - **簇介绍**(2-2):解释簇...
这个压缩包包含了一系列用于前端开发的资源,适合初学者和进阶者提升技能,进行毕业设计。 首先,`index.html`是网页的主入口文件,它定义了网页的基本结构,包括头部元信息、导航、主体内容等。HTML(超文本标记...
在电子设计领域,单片机(Microcontroller)是不可或缺的一部分,尤其在嵌入式系统中。AVR单片机作为Atmel公司(现已被Microchip Technology收购)的产品线,因其高效能、低功耗和易用性而广受欢迎。本教程主要关注...
- 系统测试:验证系统的功能和性能是否满足需求规格说明书的要求。 - 验收测试:确认产品是否满足业务需求,是否可以接受。 - **测试工具**:JUnit, TestNG, Selenium等。 #### 五、面向对象的基本概念 **知识点...