1、系统设计方案模板系统设计方案模板1 引言1.1 编写目标说明编写具体设计方案关键目标。具体设计关键任务是对概要设计方案做完善和细化。说明书编制目标是说明一个软件系统各个层次中每个程序(每个模块或子程序)和数据库系统设计考虑,为程序员编码提供依据。假如一个软件系统比较简单,层次极少,本文件能够不单独编写,和概要设计说明书中不反复部分合并编写。方案关键是模块实施步骤和数据库系统具体设计描述。1.2 背景应包含以下多个方面内容: A. 待开发软件系统名称B. 该系统基础概念, 如该系统类型、隶属地位等C. 开发项目组名称D. 项目代号(项目计划所采取代号);E. 说明遵从IT标准和标准,符合企业IT
2、 ABBs 1.3 参考资料列出具体设计汇报引用文件或资料,资料作者、标题、出版单位和出版日期等信息,必需时说明怎样得到这些资料。1.4 术语定义及说明列出本文档中用到可能会引发混淆专门术语、定义和缩写词原文。2 设计概述2.1 任务和目标说明具体设计任务及具体设计所要达成目标。2.1.1 需求概述对所开发软件概要描述, 包含关键业务需求、输入、输出、关键功效、性能等,尤其需要描述系统性能需求。2.1.2 运行环境概述对本系统所依靠于运行硬件,包含操作系统、数据库系统、中间件、接口软件、可能性能监控和分析等软件环境描述,及配置要求。2.1.3 条件和限制具体描述系统所受内部和外部条件约束和限制
3、说明。包含业务和技术方面条件和限制和进度、管理等方面限制。2.1.4 具体设计方法和工具简明说明具体设计所采取方法和使用工具。如HIPO图方法、IDEF(I2DEF)方法、ER 图,数据步骤图、业务步骤图、选择CASE工具等,尽可能采取标准规范和辅助工具。3 系统具体需求分析关键对系统级需求进行分析。首先应对需求分析提出企业需求深入确定,并对因为情况改变而带来需求改变进行较为具体分析。3.1 具体需求分析包含:l 具体功效需求分析l 具体性能需求分析l 具体资源需求分析l 具体系统运行环境及限制条件分析3.2 具体系统运行环境及限制条件分析接口需求分析包含:l 系统接口需求分析l 现有硬、软件
4、资源接口需求分析l 引进硬、软件资源接口需求分析4 总体方案确定着重处理系统总体结构确定及界面划分问题。4.1 系统总体结构确定对系统组成、逻辑结构及层次进行确定,对应用系统、支撑系统及各自实现功效进行确定,细化集成设计及系统工作步骤,尤其要注意因软件引进造成系统本身结构和企业其它系统结构改变。包含:l 系统组成、逻辑结构及层次确定l 应用系统结构确定l 支撑系统结构确定l 系统集成确定l 系统工作步骤确定4.2 系统具体界面划分4.2.1 应用系统和支撑系统具体界面划分应用系统和支撑系统之间界面包含系统主服务器和其它服务器服务范围及访问方法,网络及数据库对应用系统支撑方法,全局数据管理和存取
5、方法等。4.2.2 系统内部具体界面划分系统各功效之间界面包含覆盖范围,模块间功效调用包含到系统模块及方法,全局数据格式,系统性能要求等。5 系统具体设计5.1 系统结构设计及子系统划分对系统组成及逻辑结构进行设计前确定。划分系统功效模块或子系统(假如有或有必需,尤其是大型软件系统)。5.2 系统功效模块具体设计按结构化设计方法,在系统功效逐层分解基础上,对系统各功效模块或子系统进行设计。此为具体设计关键部分之一。用层次图描述系统总体结构、功效分解及各个模块之间相互调用关系和信息交互,用IPO图或其它方法描述各模块完成功效。以上提议采取HIPO图进行功效分解和模块描述,更高要求提议采取IDEF
6、0方法进行功效模型设计。具体设计应用系统各个组成模块完成功效及其相互之间关系,用IPO或结构图描述各模块组成结构、算法、模块间接口关系,和需求、功效和模块三者之间交叉参考关系。每个模块描述说明可参考以下格式:模块编号:模块名称:输入:处理:算法描述:输出:其中处理和算法描述部分关键采取伪码或具体程序语言完成。对具体设计更高要求提议用IDEF0图进行各功效模块设计。假如对软件需进行二次开发(包含功效扩展、功效改造、用户界面改造等),则对应设计工作应该设置子课题完成。5.3 系统界面具体设计 系统界面说明应用系统软件多种接口。整个系统其它接口(如系统硬件接口、通讯接口等)在对应部分说明。 5.3.
7、1 外部界面设计 依据系统界面划分进行系统外部界面设计,对系统全部外部接口(包含功效和数据接口)进行设计。5.3.2 内部界面设计设计系统内部各功效模块间调用关系和数据接口。5.3.3 用户界面设计要求人机界面内容、界面风格、调用方法等,包含所谓表单设计、报表设计和用户需要打印输出等设计。此部分内容可能比较多。6 数据库系统设计此数据库设计可单独成册,尤其对大型数据库应用系统,即有一个单独数据库设计说明书。6.1 设计要求6.2 信息模型设计确定系统信息类型(实体或视图),确定系统信息实体属性、关键字及实体之间联络,具体描述数据库和结构设计,数据元素及属性定义,数据关系模式,数据约束和限制。6
8、.3 数据库设计6.3.1 设计依据说明数据被访问频度和流量,最大数据存放量,数据增加量,存放时间等数据库设计依据。6.3.2 数据库种类及特点说明系统内应用数据库种类、各自特点、数量及怎样实现互联,数据怎样传输。6.3.3 数据库逻辑结构说明数据库概念模式向逻辑模式转换所采取方法论及工具,完成数据库概念模式向逻辑模式转换。具体列出所使用数据结构中每个数据项、统计和文件标识、定义、长度及它们之间相互关系。此节内容为数据库设计关键部分。6.3.4 物理结构设计列出所使用数据结构中每个数据项存放要求、访问方法、存取单位和存取物理关系等。 建立系统程序员视图,包含:l 数据在内存中安排,包含对索引区
9、、缓冲区设计;l 所使用外存设备及外存空间组织,包含索引区、数据块组织和划分;l 访问数据方法方法6.3.5 数据库安全 说明数据共享方法,怎样确保数据安全性及保密性。6.3.6 数据字典 编写具体数据字典。对数据库设计中包含到多种项目,如数据项、统计、系、文卷模式、子模式等通常要建立起数据字典,以说明它们标识符、同义名及相关信息。 7 信息编码设计 7.1 代码结构设计 确定信息分类编码总体方案,进行分类代码结构设计。 7.2 代码编制 按代码结构编制信息代码 8 系统配置 系统软件硬件配置资源明细及配置方案。这部分针对概要设计对应部分加以补充和 细化,输出为可操作具体方案。8.1 配置标准
10、 说明系统配置标准,如依据目标、需求、资源、阶段等配置,尤其需要包含系统具体性能需求。8.2 硬件配置 列出开发及运行系统所需要硬件平台、工具等,说明采取依据。将各层硬件及网络配置方案列出图及表,并加以说明。8.3 软件配置 列出开发及运行本系统所需要软件平台(操作系统、数据库、网络平台等)、软件辅助工具及使用周期,说明采取依据。将系统软件配置(如网络管理软件、数据库管理软件、用户端软件等)方案列出图表,并加以说明。9 关键技术 关键技术指项目所采取关键技术或技术难点、新技术(假如有话)。 在具体设计阶段应确定概要设计中关键技术设置,对每一项关键技术深入明 确具体处理方案。9.1 关键技术提出
11、 说明关键技术提出标准。9.2 关键技术通常说明 说明关键技术名称、必需性、技术难点、进度、计划等(能够用表格)。9.3 关键技术实现方案具体介绍各项关键技术实现方案 。10 系统测试计划 系统测试方案及计划,要求包含从顶层到底层各模块。概要设计后期测试计划关键放在集成测试,而具体设计后应该提供具体单元测试计划。 测试计划和方案部分可单独编写成册。10.1 测试策略 说明系统调试环境、工具,集成测试方法(从下而上或从上而下),模块测试次序,步骤, 并给出辅助模块或驱动模块及测试用例, 说明这些测试用例选择标准。10.2 测试方案10.3 预期测试结果10.4 测试进度计划11 验收标准 明确工
12、程验收措施及步骤,对包含到各项验收标准、计量标准及质量标准进行说明。12 维护设计 维护设计针对系统运作部分问题展开,具体条目参考概要设计方案。假如此部分 在概要设计方案中已经足够具体而且可操作,在具体设计里也可省略。12.1 系统可靠性和安全性 系统在运行可靠性和安全性方面对用户需求满意程度和特殊设计、考虑(假如有话)。12.2 系统及用户维护设计 对通常见户日常维护操作和系统管理日常维护进行设计,如备份、恢复操作,数据物理安全。12.3 系统扩充系统功效扩充、容量扩大和可移植性、开放性等方面说明 。12.4 错误处理12.4.1 犯错类别 如系统对可能出现一些错误和故障作了专门设计考虑, 给出这些错误或故障定义和对错误进行编码。12.4.2 犯错处理 说明将使用恢复或再开启技术, 使软件从故障点恢复实施或软件从头开始重新运行方法。12.5 系统调整及再次开发问题 未来可能对系统进行部分调整、限制和再次开发等问题,和具体设计中还未处理但开发者认为在开发阶段必需处理问题。