软件设计文档模板(如何才能写出好的软件设计文档?)

小科普 149

1. 原则与目标

软件设计中处理问题的过程要保证简单、清晰,一个功能只处理好一个问题,如果处理不好,那么这个问题就是多个问题,从而要设计多个功能,总体要求:把复杂的事情简单化,把简单的事情条理化。

软件设计规范

2. 要求

产出物:

1) 《概要设计说明书》

2) 数据模型

3) 《详细设计说明书》

3. 数据模型

1) 字段定义、长度、类型、命名继承《数据库设计规范》;

2) 规范化与反规范化:

综合考虑范式要求与系统实现的方便性,平衡这两方面的要求;

综合考虑查询的方便性与数据冗余如何保证数据的一致性两方面的应用,平衡这两方面的应用;

3) 完整性:数据项需明确是否非空选项,保证数据的完整性;

4) 一致性:相同数据项的命名、类型、长度应保持一致;

5) 关联性:表与表采用弱关联,系统数据的正确性需要业务处理逻辑来保证;过程表可以关联结果表,结果表不能关联过程表,结果表尽可能做到无状态;

6) 可维护的数据项不能做主键;

7) 主键和外键(数模中体现,数据库中不体现)要建立索引;

8) 所有字段都需要有域类型,属于域类型的数据项类型需要引用域,不允许重复定义;

9) 字段需注释,注释内容与格式要统一,格式上注释第一行为字段中文名称,字典字段的注释要包含枚举值,并且枚举值要和业务变更同步;

10) 每个表中尽量有修改时间与创建时间,并且保证非空性;尽量有备用和备注字段,用于系统运维。

4. 功能设计

1) 合适性:功能性需求与非功能性需求需要综合考虑。功能性需求要精简,功能模型未明确定义的辅助功能(包括查询型、汇总型等)尽量不加,除非该功能操作太多的表,保证功能粒度的一致性与合理性,解决问题的明确性及系统业务过程的简单性;明确功能约束并说明清楚;

2) 稳定性:明确哪些是不变的功能,形成稳定的结构;

3) 扩展性:明确哪些是可变的功能,使可变的功能易于扩展;

4) 复用性:抽取公用的东西,加强公共功能的复用;

5) 单一性:同样的功能只在一个地方出现,禁止在多个地方出现。

5. 页面设计

1) 功能性:满足业务功能,达到用户基本的功能需求;

2) 清晰性:信息要清晰明确,防止晦涩语言或描述不清楚的地方;

3) 易用性:分区分层与页面布局合理,符合用户操作习惯;

4) 友好性:页面样式风格应贴近工作氛围,使用户可以很好地融入系统;

5) 交互性:应有必要的信息提示与操作步骤引导,降低系统对使用人员要求;

6) 整体风格的一致性;

7) 必输项采用*表示,在页面原型中标识;如果不输入点击保存,提示请输入XXX!,在详细设计不用描述;

8) 复选框选择后操作提示

明细、导出、打印:如果为选择或选择多条记录,提示请选择一条记录!,在详细设计不用描述;

删除:如果不支持批量删除,提示请选择一条记录!,如果支持批量删除,提示请选择记录,如果已选记录不符合删除条件,提示记录不能删除:xxx(原因)!,删除时询问确认删除?,在详细设计不用描述;

修改:如果未选择或选择多条记录,提示请选择一条记录!,如果已选记录不符合修改条件的记录,提示记录不能修改:xxx(原因)!,在详细设计不用描述;

9) 操作成功后提示

新增记录保存成功后,提示[单据编号] [单据类型]生成成功!;

修改记录保存成功后,提示[单据编号] [单据类型] [操作类型]成功!(操作类型:修改、派工等);

删除记录功能后,提示删除成功!;

10) 操作失败后提示[操作类型]失败:xxx(原因)(操作类型:修改、派工等);

11) 查询条件可多选时,已选择项在文本框中的展示格式:项1,项2,项3,各选择项间以,(英文半角逗号)分隔;

12) 通用帮助框:通用帮助框的查询条件应支持默认匹配父页面的查询条件,即通用帮助框的链接支持传递参数。

6. 接口设计

1) 接口中方法的返回不能为void,至少也要通知调用者,操作是否成功

2) 接上条,凡是返回操作是否成功的方法,返回类型要设置为int而不是boolean

3) 方法名只能使用英文,尽量简单易懂,驼峰规则,首字母小写,不得含有数字

4) 方法名最好使用动宾结构。

5) 接口中所有方法都必须写注释。

6) 接口中所有方法都必须是public的。

7) 每个方法的位置应当是明确的,不要将不属于某接口的方法放入该接口中,也不要写功能重复的方法。

7. 兼容性、扩展性

1) 稳定性:系统的扩展首先要保证系统的稳定,尽量明确哪些是不变的,哪些是可变的,可变的部分放在具体的实现,抽象不变的接口,最有效的方式是职责单一;

2) 扩展性:分析明确可变部分,使可变部分通过不同的实现或配置达到系统扩展;

3) 简单性:尽量通过简单的配置或很方便地实现相应的接口,达到系统扩展;配置的地方尽量少,配置的内容尽量少,配置的功能与影响是十分明确。

功能设计说明书模板

1. 文档介绍

1.1编写目的

说明文档的编写目的

1.2文档范围

说明文档的主要内容

1.3读者对象

说明文档的读者对象

1.4术语与缩写解释

术语或缩写

解释

1.5参考资料

序号

文档名称

文档编号

版本

发布日期

1

2

2系统概述

2.1系统说明

介绍系统的名称、任务提出者、开发者、用户群

2.2项目背景

介绍项目的背景,在什么样的背景下产生该产品

2.3系统任务

介绍产品的目标与愿景,产品要能满足什么样的需求,要达到什么样一个效果

3.需求说明

3.1整体需求

描述产品的整体需求,产品要能满足什么需求,要达到什么效果

3.2功能需求

描述产品的功能性需求,产品要包含哪些功能或者服务接口。首先要指定需求的编号规则,然后按照规则对功能性需求进行模块划分和编号,最后要对每一个需求进行详细描述

3.3需求编号规则

描述需求的编号规则

3.4总体模块划分

描述需求的模块划分情况

4.功能性需求

4.1模块1编号

模块名称

模块简介

模块功能列表

序号

一级功能

二级功能

功能名称

功能编号

功能名称

功能编号

1

2

3

4

4.1.1一级功能1编号

描述本功能

4.1.1.1二级功能1编号

描述本功能

4.1.1.2二级功能2编号

描述本功能

4.1.2二级功能2编号

描述本功能

4.1.2.1二级功能1编号

描述本功能

4.1.2.2二级功能2编号

描述本功能

4.2模块2编号

模块名称

模块简介

模块功能列表

序号

一级功能

二级功能

功能名称

功能编号

功能名称

功能编号

1

2

3

4

4.2.1一级功能1编号

描述本功能

4.2.1.1二级功能1编号

描述本功能

4.2.1.2二级功能2编号

描述本功能

4.2.2二级功能2编号

描述本功能

4.2.2.1二级功能1编号

描述本功能

4.2.2.2二级功能2编号

描述本功能

5.界面设计

5.1界面的功能

5.1.1前台界面

功能列表或图示

5.1.2后台界面

功能列表或图示

5.2界面关系

5.2.1页面1

页面说明

说明

页面迁移图

图示

页面截图

截图

5.2.2页面2

页面说明

说明

页面迁移图

图示

页面截图

截图

上一篇:

下一篇:

  推荐阅读

分享