软件设计方案说明书的编写
关于软件设计方案说明书的编写,其根本目的有两个,一是便于项目内部各职能的成员进行沟通和项目执行时的依据(比如编码、测试等),二是作为项目的一部分,是项目文档的一部分。软件设计方案说明书的格式和内容,一般应当包括如下内容:
软件设计方案说明书
目录
1 引言... 2
1.2 背景... 2
1.3 参考资料... 2
1.4 术语定义及说明... 2
2 设计概述... 2
2.1 任务和目标... 3
2.1.1 需求概述... 3
2.1.2 运行环境概述... 3
2.1.3 条件与限制... 3
2.1.4 详细设计方法和工具... 4
3 系统详细需求分析... 4
3.1 详细需求分析... 4
3.2接口需求分析... 4
4 总体方案确认... 5
4.1 系统总体结构确认... 5
4.2 系统详细界面划分... 5
4.2.1 应用系统与支撑系统的详细界面划分... 5
4.2.2 系统内部详细界面划分... 6
5 系统详细设计... 6
5.1 系统结构设计及子系统划分... 6
5.2 系统功能模块详细设计... 6
5.3 系统界面详细设计... 7
5.3.1 外部界面设计... 7
5.3.2 内部界面设计... 7
5.3.3 用户界面设计... 7
6 数据库系统设计... 8
6.1 设计要求... 8
6.2 信息模型设计... 8
6.3 数据库设计... 8
6.3.1 设计依据... 8
6.3.2 数据库种类及特点... 8
6.3.3 数据库逻辑结构... 9
6.3.4 物理结构设计... 9
6.3.5 数据库安全... 9
6.3.6 数据字典... 10
7 信息编码设计... 10
7.1 代码结构设计... 10
7.2 代码编制... 10
其中各条目的内容要求如下:
1.1 编写目的
此方案说明书编制的主要目的是说明废钢识别软件系统各个层次中的每个程序(每个模块或子程序)和数据库系统的设计考虑,为软件开发、编码、测试提供依据。
如果一个软件系统比较简单,层次很少,本文件可以不单独编写,和概要设计说明书中不重复部分合并编写。
方案重点是模块的执行流程和数据库系统详细设计的描述。
1.2 背景
应包含以下几个方面的内容: A. 待开发软件系统名称;
. 该系统基本概念,如该系统的类型、从属地位等; C. 开发项目组名称。
1.3 参考资料
列出详细设计报告引用的文献或资料,资料的作者、标题、出版单位和出版日期等信息,必要时说明如何得到这些资料。
1.4 术语定义及说明
列出本文档中用到的可能会引起混淆的专门术语、定义和缩写词的原文。
2 设计概述
2.1 任务和目标
说明详细设计的任务及详细设计所要达到的目标。
2.1.1 需求概述
对所开发软件的概要描述, 包括主要的业务需求、输入、输出、主要功能、性能等,尤其需要描述系统性能需求。
2.1.2 运行环境概述
对本系统所依赖于运行的硬件,包括操作系统、数据库系统、中间件、接口软件、可能的性能监控与分析等软件环境的描述,及配置要求。
2.1.3 条件与限制
详细描述系统所受的内部和外部条件的约束和限制说明。包括业务和技术方面的条件与限制以及进度、管理等方面的限制。
2.1.4 详细设计方法和工具
简要说明详细设计所采用的方法和使用的工具。如HIPO图方法、IDEF(I2DEF)方法、E-R
://doc.guandang.net/b277d9e1d5b74db2f76b1b4d5.htmlar图,数据流程图、业务流程图、选用的CASE工具等,尽量采用标准规范和辅助工具。
3 系统详细需求分析
主要对系统级的需求进行分析。首先应对需求分析提出的企业需求进一步确认,并对由于情况
变化而带来的需求变化进行较为详细的分析。
注:如果不采用服务器推送,则需要在客户端定时检测废钢识别结果,这种简易方法在软件设计上可以简化很多(不需要开发C++服务软件),节省开发时间,但对服务器硬件(CPU,内存,硬盘)的压力会比较大,对于客户端数量少的情况可以考虑。
3.1 详细需求分析
包括:
详细功能需求分析 详细性能需求分析 详细资源需求分析
详细系统运行环境及限制条件分析
3.2 详细系统运行环境及限制条件分析接口需求分析
包括:
系统接口需求分析
现有硬、软件资源接口需求分析 引进硬、软件资源接口需求分析
4 总体方案确认
着重解决系统总体结构确认及界面划分问题。
4.1 系统总体结构确认
对系统组成、逻辑结构及层次进行确认,对应用系统、支撑系统及各自实现的功能进行确认,细化集成设计及系统工作流程,特别要注意因软件的引进造成的系统本身结构和公司其他系统的结构变化。包括:
系统组成、逻辑结构及层次确认 应用系统结构确认 支撑系统结构确认 系统集成确认 系统工作流程确认
4.2 系统详细界面划分
4.2.1 应用系统与支撑系统的详细界面划分
应用系统与支撑系统之间的界面包括系统主服务器与其他服务器的服务范围及访问方式,网络及数据库对应用系统的支撑方式,全局数据的管理与存取方式等。
4.2.2 系统内部详细界面划分
系统各功能之间的界面包括覆盖范围,模块间功能调用涉及到的系统模块及方法,全局数据格式,系统性能要求等。
5 系统详细设计
5.1 系统结构设计及子系统划分
对系统的组成及逻辑结构进行设计前确认。
划分系统功能模块或子系统(如果有或者有必要,特别是大型的软件系统)。
5.2 系统功能模块详细设计
按结构化设计方法,在系统功能逐层分解的基础上,对系统各功能模块或子系http://doc.guandang.net/b277d9e1d5b74db2f76b1b4d5.html统进行设计。此为详细设计的主要部分之一。
用层次图描述系统的总体结构、功能分解及各个模块之间的相互调用关系和信息交互,用IPO图或其他方法描述各模块完成的功能。以上建议采用HIPO图进行功能分解与模块描述,更高的要求建议采用IDEF0方法进行功能模型设计。
详细设计应用系统的各个构成模块完成的功能及其相互之间的关系,用IPO或结构图描述各模块的组成结构、算法、模块间的接口关系,以及需求、功能和模块三者之间的交叉参照关系。
每个模块的描述说明可参照以下格式: 模块编号: 模块名称: 输入: 处理: 算法描述: 输出:
其中处理和算法描述部分主要采用伪码或具体的程序语言完成。 对详细设计更高的要求建议用IDEF0图进行各功能模块的设计。
如果对软件需进行二次开发(包括功能扩展、功能改造、用户界面改造等),则相应的设计工作应该设立子课题完成。
5.3 系统界面详细设计
系统界面说明应用系统软件的各种接口。整个系统的其他接口(如系统硬件接口、通讯接口等)在相应的部分说明。
5.3.1 外部界面设计
根据系统界面划分进行系统外部界面设计,对系统的所有外部接口(包括功能和数据接口)
进行设计。
5.3.2 内部界面设计
设计系统内部各功能模块间的调用关系和数据接口。
5.3.3 用户界面设计
规定人机界面的内容、界面风格、调用方式等,包括所谓的表单设计、报表设计和用户需要的打印输出等设计。此部分内容可能比较多。
6 数据库系统设计
此数据库设计可单独成册,尤其对大型的数据库应用系统,即有一个单独的《数据库设计说明
书》。
6.1 设计要求
确定系统信息的类型(实体或视图),确定系统信息实体的属性、关键字及实体之间的联系,详细描述数据库和结构设计,数据元素及属性定义,数据关系模式,数据约束和限制。
6.2 信息模型设计
6.3 数据库设计
6.3.1 设计依据
说明数据被访问的频度和流量,最大数据存储量,数据增长量,存储时间等数据库设计依据。
6.3.2 数据库种类及特点
说明系统内应用的数据库种类、各自的特点、数量及如何实现互联,数据如何传递。
6.3.3 数据库逻辑结构
说明数据库概念模式向逻辑模式转换所采用的方法论及工具,完成数据库概念模式向逻辑模式的转换。详细列出所使用的数据结构中每个数据项、记录和文件的标识、定义、长度及它们之间的相互关系。此节内容为数据库设计的主要部分。
6.3.4 物理结构设计
列出所使用的数据结构中每个数据项的存储要求、访问方法、存取单位和存取物理关系等。
建立系统程序员视图,包括:
数据在内存中的安排,包括对索引区、缓冲区的设计;
所使用的外存设备及外存空间的组织,包括索引区、数据块的组织与划分;
访问数据的方式方法。
6.3.5 数据库安全
说明数据的共享方式,如何保证数据的安全性及保密性。
6.3.6 数据字典
编写详细的数据字典。对数据库设计中涉及到的各种项目,如数据项、记录、系、文卷模式、子模式等一般要建立起数据字典,以说明它们的标识符、同义名及有关信息。
7 信息编码设计
7.1 代码结构设计
确认信息分类编码总体方案,进行分类代码结构设计。
7.2 代码编制
按代码结构编制信息代码
软件设计方案说明书的编写相关推荐
- 软件需求说明书 概要设计说明书 项目开发计划 详细设计说明书 模版
一.软件需求说明书 1引言 2 1.1编写目的 2 1.2背景 2 1.3定义 2 1.4参考资料 2 2任务概述 2 2.1目标 2 2.2用户的特点 3 2.3假定和约束 3 3需求规定 3 3. ...
- 软件需求说明书(GB856T——88)基于协同的在线表格forture-sheet
软件需求说明书的编写提示 1引言 1.1产品目的 制造一个功能丰富,配置简单的在线表格组件,开箱即用,产品对位所有办公用户,可以大量用户同时在线进行协同合作办公,可以大大的提高工作效率. 1.2产品范 ...
- 机房收费文档之软件需求说明书
软件需求说明书的编写提示 引言 编写目的 为了方便说明该软件的需求,特意编制软件需求说明书.一方面用来与用户交流核对需求,另一方面提供给软件开发者和维护,使他们根据软件需求来进行软件的开发和维护.确保 ...
- 软件需求说明书 编写实例
你的工程应该有个好的起点.一个小组要带领客户进入需求启发阶段而且你要写软件需求说明书.这份说明有些大,但客户会很重视,所以说明必须得到赞同. 现在你正在设计其中的一个特性,已经发现了需求的一些问题.你 ...
- 软件需求说明书谁负责写_新手入门软件测试需要掌握哪些知识点?
新手入门软件测试小知识点 这些软件测试常识你必须牢记:01软件测试(软件测试存在的意义) 1.发现程序中的错误而执行程序的过程 2.检验产品是否符合用户需求 3.提高用户体验 02软件测试原则(常识) ...
- “渴了么”软件详细说明书
软件详细设计说明书 超能陆战队 2015年5月 目 录 1 引言.................................................. ...
- 指法练习软件需求说明书
指法练习软件需求说明书 996 班 黄涛 99031176 ------------------------------------------------------------------ ...
- 四、软件概要设计说明书-模板
四.软件概要设计说明书 1.引言 2 1.1编写目的 2 1.2项目背景 2 1.3定义 2 1.4参考资料 2 2.任务概述 3 2.1目标 3 2.2运行环境 3 2.3需求概述 3 2.4条件与 ...
- 软件需求说明书(文档模板)
软件需求说明书(文档模板)- - 其中的数据描述部分在实际工作中比较少涉及. 在上一次的文档中增加新模块 业务需求,详细描述为 现状.业务概述.业务组成.业务描述.业务流程. 功能需求也相应作了扩充, ...
- 机房收费系统—软件需求说明书
软件需求说明书 1引言 1.1编写目的 编写此软件需求说明书是为了让软件开发人员对开发的系统做一个全面的分析,更好的了解用户的需求,以便开发出让客户满意的产品. 同时也让该系统使用人员对系统的设计 ...
最新文章
- Elgg网站迁移指南
- Android数据库新王者-Realm入门教程
- RocketMQ-初体验RocketMQ(05)_RocketMQ架构解读
- 全志 修改485转CAN串口回显 Patch
- mysql数据库英文句子翻译_MySQL文档翻译(八)附英文原文---性能优化概览
- linux postgres恢复数据库,从纯文本格式的备份文件恢复数据库
- python作业:高级FTP程序
- 论文浅尝 - ECIR2021 | 两种实体对齐方法的严格评估
- Ubuntu 安装 Java EE
- C++程序设计一(进制转换)
- 《圈圈教你玩USB》 第二章 USB 硬件系统设计_测试程序的编写和调试——看书笔记
- Qt中QTableView应用
- 外地户籍应届毕业生落户上海申请及办理流程(包括海外)
- 制作(转换)ico图标
- 无版权素材网站,免费、可商用
- php通过imap获取腾讯企业邮箱信息后的解码处理
- K8s实战一:基本概念与命令二
- 微信注册验证成功之后不跳转_微信为什么会被限制登录?被限制后我们该怎么办?...
- 日本房地产泡沫经验及其借鉴
- 【青少年编程】【三级】接苹果
热门文章
- 【Python分子动力学】
- 安装SPSS激活时提示could not create the Java virtual machine
- 手把手教你在Linux环境下安装Python3
- 蘑菇街直播实战技巧带你解决直播开发难题
- 艾肯MICU声卡安装调试教程
- 最详细的联发科刷机教程MediaTek SP Flash Tool教程MTK通用驱动Windows 10 MTK VCOM USB Preloader Drivers
- MacOS安装svn客户端
- pytorch、CUDA、cuDNN下载和环境变量设置
- Oracle数据库基础入门
- 学会提问pdf_原来只要1分钟,Word、PPT、PDF文件就能随意互相转换,快学学