1、1软件开发文档封面格式文档编号_版 本 号_文档名称: _项目名称: _项目负责人:_编写_ _年_月_日校对_ _年_月_日审核_ _年_月_日批准_ _年_月_日开发单位_2一、可行性分析报告1.引言1.1 编写目的 【阐明编写本报告的目的。】1.2 项目背景 【包括:a. 开 发软件的名称;b.任务的提出者、开发者及用户;c.本项目与其它软件或系统的关系。】1.3 定义 【列出本文档中用到的专门术语的定义和缩写词的原文。】1.4 参考资料 【列出有关资料的作者、标题、 编号、发表日期、出版单位或资料来源,可包括:a.本项目经核准的计划任务书、合同或上级机关的批文;b.与本项目有关的已发表
2、的资料;c.本文档中所引用的资料和所采用的软件标准或规范。】2.可行性研究的前提2.1 要求 【列出并说明建议开发软件的基本要求,如 a.功能;b.性能;c.输出;d.输入;e.基本的数据流程和处理流程;f.安全与保密要求; g.与本软件相关的其它系统;h.完成期限。】2.2 目标 【可包括,a.人力与设备费用的节省;b.处 理速度的提高;c.控制精度或生产能力的提高;d.管理信息服务的改进;e.决策系统的改进;f.人员工作效率的提高等。】2.3 条件、假定和限制 【可包括,a.建议开发软件的最短寿命;b.进行系统方案选择比较的期限;c.经费来源和使用限制;d.法律和政策方面的限制;e. 硬件
3、、软件、运行环境和开发环境的条件和限制; f.可利用的信息和 资源;g.建议开发软件投入使用的最迟时间。】2.4 可行性研究方法2.5 决定可行性的主要因素3.对现有系统的分析3.1 处理流程和数据流程3.2 工作负荷3.3 费用支出【如人力、设备、空 间、支持性服 务、材料等项目开支】3.4 人员【列出所需人员的专业技术类别和数量】3.5 设备3.6 局限性【说明现有系统存在的问题以及为什么需要开发新的系统。】4.新系统技术可行性分析4.1 对系统的简要描述4.2 处理流程和数据流程34.3 与现有系统比较的优越性4.4 采用新系统可能带来的影响4.4.1 对设备的影响4.4.2 对现有软件
4、的影响4.4.3 对用户的影响4.4.4 对系统运行的影响4.4.5 对开发环境的影响4.4.6 对运行环境的影响4.4.7 对经费支出的影响4.5 技术可行性评价 【包括,a.在限制条件下,功能目标是否能达到;b.利用现有技术,功能目标能否达到;c.对开发人员数量和质量的要求,并说明能否满足;d.在规定的期限内,开发能否完成。】5.新系统经济可行性分析5.1 支出5.1.1 基建投资5.1.2 其它一次性支出5.1.3 经常性支出5.2 效益5.2.1 一次性效益5.2.2 经常性效益5.2.3 不可定量收益5.3 收益/投资比5.4 投资回收周期5.5 敏感性分析【敏感性分析是指一些关键性
5、因素,如:系统生存周期长短、系统工作负荷量、处理速度要求、设备和软件配置变化对支出和效益的影响等分析。】6.社会因素可行性分析6.1 法律因素【如合同责任、侵犯版权等问题的分析】6.2 用户使用可行性【如用户单位的行政管理、工作制度、人员素质等能否满足要求。】7.其它可供选择的方案【逐个阐明其它可供选择的方案,并重点说明未被推荐的理由】8.结论意见【结论意见可能是:a.可着手组织开发;b.需待条件(如资金、人力、 设备4等)具备后才能开发;c. 需 对开发目标进行某些修改;d.不能进行或不必进行(如技术不成熟,经济上不合算等);e.其它。】二、项目开发计划1.引言1.1 编写目的 【阐明编写本
6、项目开发计划的目的。】1.2 项目背景 【包括:a. 本 项目的委托单位、开发单 位和主管部门;b.本系统与其它系统的关系。】1.3 定义 【列出本文档中用到的专门术语的定义和缩写词的原文。】1.4 参考资料 【可包括:a.本项目经核准的计划任务书、合同或上 级机关的批文;b.本文档中所引用的资料、规范等,列出这些资料的作者、 标题、编号、发表日期、出版单位或资料来源。】2.项目概述2.1 工作内容 【简明说明本项目的各项主要工作,介绍所开发软件的功能、性能等。若不编写可行性报告,则应在本节给出较详细的介 绍】2.2 条件与限制 【阐明为完成本项目应具备的条件、开发单位已具备的条件以及尚需创造
7、的条件。必要时还应说明用户及项目合作者所承担的工作、完成期限及其它条件与限制】2.3 产品 2.3.1 程序【列出应交付的程序名称、使用的语言及存储形式。】2.3.2 文档【列出应交付文档。】2.4 运行环境【包括硬件环境、软件环境。 】2.5 服务【阐明开发单位可向用户提供的服务。如人员培训、安装、保修、维护和其它运行支持】2.6 验收标准3.实施计划3.1 任务分解【任务的划分及各项任务的负责人。】3.2 进度【按阶段完成的项目,用图表说明开始时间、完成时间。 】3.3 预算3.4 关键问题【说明可能影响项目的关键性问题,如设备条件、技术难点或其它风险因素,并说明对策。】4.人员组织与分工
8、5.交付期限56.专题计划【如测试计划、质量保证计划、配置管理计划、人 员培训计划、系统安装计划等。】三、需求分析说明书1.引言1.1 编写目的 【阐明编写本需求说明书的目的。】1.2 项目背景 【包括:a. 本 项目的委托单位、开发单 位和主管部门;b.本系统与其它系统的关系。】1.3 定义 【列出本文档中用到的专门术语的定义和缩写词的原文。】1.4 参考资料 【可包括:a.本项目经核准的计划任务书、合同或上 级机关的批文;b.项目开发计划;c.本文档中所引用的资料、标准和 规范等,列出这些资料的作者、标题、编号、发表日期、出版 单位或资料来源。】2.任务概述2.1 目标2.2 运行环境2.
9、3 条件与限制 3.数据描述3.1 静态数据3.2 动态数据【包括输入数据和输出数据。】3.3 数据库描述【给出使用数据库的名称和类型。】3.4 数据字典3.5 数据采集4.功能要求4.1 功能划分4.2 功能描述5.性能需求5.1 数据精确度5.2 时间特性【如响应时间、更新处理时间、数据 转换与传输时间、运行 时间等。】5.3 适应性【在操作方式、运行环境、与其它 软件的接口以及开发计划等发生变化时应具有的适应能力。】6.运行需求66.1 用户界面【如屏幕格式、报表格式、菜 单格式、输 入输出时间等。】6.2 硬件接口6.3 软件接口6.4 故障处理7.其它需求【如可使用性、安全保密、可维
10、护性、可移植性等。】四、概要设计说明书1.引言1.1 编写目的 【阐明编写本说明书的目的。】1.2 项目背景 【包括:a. 本 项目的委托单位、开发单 位和主管部门;b.本系统与其它系统的关系。】1.3 定义 【列出本文档中用到的专门术语的定义和缩写词的原文。】1.4 参考资料 【列出有关资料的作者、标题、 编号、发表日期、出版单位或资料来源,可包括:a. 本项目经核准的计划任务书、合同或上 级机关的批文;b.项目开发计划;c.需求分析说明书;d.测试计 划(初稿);e.用户操作手册(初稿);f.本文档中所引用的资料、标准和规范。】2.任务概述2.1 目标2.2 运行环境2.3 需求概述2.4
11、 条件与限制 3.总体设计3.1 处理流程3.2 总体结构和模块外部设计3.3 功能分配4.接口设计4.1 外部接口【包括用户界面、软件接口与硬件接口】4.2 内部接口【模块之间的接口】5.数据结构设计5.1 逻辑结构设计5.2 物理结构设计5.3 数据结构与程序的关系76.运行设计6.1 运行模块的组合6.2 运行控制6.3 运行时间7.出错处理设计7.1 出错输出信息7.2 出错处理对策【如设置后备、性能降级、恢复及再启动等。 】8.安全保密设计9.维护设计【说明为方便维护工作的设施,如维护模块。】五、详细设计说明书1.引言1.1 编写目的 【阐明编写本说明书的目的。】1.2 项目背景 【
12、包括项目来源、委托单位、开 发单位和主管部门。 】1.3 定义 【列出本文档中用到的专门术语的定义和缩写词的原文。】1.4 参考资料 【列出有关资料的作者、标题、 编号、发表日期、出版单位或资料来源,可包括:a. 本项目经核准的计划任务书、合同或上 级机关的批文;b.项目开发计划;c. 需求分析说明书;d.概要设计说明书;e.测试计划(初稿);f.用户操作手册(初稿);g.本文档中所引用的资料、标准和规范。】2.总体设计2.1 需求概述2.2 软件结构【如给出软件系统的结构图】3.程序描述3.1 功能3.2 性能3.3 输入项目3.4 输出项目3.5 算法【本模块所选用的算法】3.6 程序逻辑
13、【详细描述本模块实现的算法,可采用:a.标准流程图;b.PDL 语言;c.N-S 图;d.PAD;e.判断表等描述算法的图表。】3.7 接口3.8 存储分配83.9 限制条件3.10 测试要点【给出测试本模块的主要测试要求。】六、用户操作手册1.引言1.1 编写目的 【阐明编写本手册的目的。】1.2 项目背景 【说明项目来源、委托单位、开 发单位和主管部门。 】1.3 定义 【列出本文档中用到的专门术语的定义和缩写词的原文。】1.4 参考资料 【列出有关资料的作者、标题、 编号、发表日期、出版单位或资料来源,可包括:a. 本项目经核准的计划任务书、合同或上 级机关的批文;b.项目开发计划;c.
14、需求分析说明书;d.概要 设计说明书;e.详细设计说明书;f.测试计划(初稿);g.本文档中所引用的资料、标准和规范。 】2.软件概述2.1 目标2.2 功能2.3 性能a.数据精确度 【包括输 入、输出及处理数据的精度。】 b.时间特性【如响应时间、处理时间、数据 传输时间等。 】 c.灵活性 【在操作方式、运行环境需作某些变更 时本软件的适应能力。】 3.运行环境3.1 硬件【列出本软件系统运行时所需的硬件最小配置,如 a.计算机型号、主存容量;b.外存储器、媒体、记录格式、设备型号及数量; c.输入、输出设备;d.数据传输设备及数据转换设备的型号及数量。】3.2 支持软件【如:a. 操作
15、系 统名称及版本号;b.开发工具名称及版本号;c. 数据库管理系统名称及版本号;d.其它必要的支持软件。】4.使用说明4.1 安装和初始化【给出程序的存储形式、操作命令、反馈信息及其含意、表明安装完成的测试实例以及安装所需的软件工具等。】4.2 输入【给出输入数据或参数的要求】4.2.1 数据背景【说明数据来源、存储媒体、出 现频度、限制和质量管理等。】4.2.2 数据格式【如:a. 长度; b.格式基准;c. 标号;d.顺 序;e.分隔符;f.词汇表;g.省略和重复;h.控制。 】94.2.3 输入举例4.3 输出【给出每项输出数据的说明】4.3.1 数据背景【说明输出数据的去向、使用频度、
16、存放媒体及质量管理等。 】4.3.2 数据格式【详细阐明每一输出数据的格式,如:首部、主体和尾部的具体形式。】4.3.3 举例4.4 出错和恢复【给出:a. 出 错信息及其含意;b.用户应采取的措施,如修改、恢复、再启动。】4.5 求助查询【说明如何操作】5.运行说明5.1 运行表【列出每种可能的运行情况,说明其运行目的。】5.2 运行步骤【按顺序说明每种运行的步骤。】5.2.1 运行控制5.2.2 操作信息【包括: a.运行目的; b.操作要求;c. 启 动方法;d.预计运行时间;e.操作命令格式及说明;f.其它事项。】5.2.3 输入/输出文件【给出建立或更新文件的有关信息,如: a.文件
17、的名称及编号;b.记录媒体;c. 存留的目 录;d.文件的支配(说明确定保留文件或废弃文件的准则,分发文件的对象,占用硬件的优先级及保密控制等。) 】5.2.4 启动或恢复过程6.非常规过程【提供应急或非常规操作的必要信息及操作步骤,如出错处理操作、向后备系统切换操作以及维护人员须知的操作和注意事项】7.操作命令一览表【按字母顺序逐个列出全部操作命令的格式、功能及参数说明。】8.程序文件(命令文件)和数据文件一览表【按文件名字母顺序或按功能与模块分类顺序逐个列出文件名称、标识符及说明】9.用户操作举例七、测试计划1.引言1.1 编写目的 【阐明编写本测试计划的目的。】1.2 项目背景 【说明项
18、目来源、委托单位、开 发单位和主管部门。 】1.3 定义 【列出本文档中用到的专门术语的定义和缩写词的原文。】1.4 参考资料 【列出有关资料的作者、标题、 编号、发表日期、出版单位或资料10来源,可包括:a.本项目经核准的计划任务书、合同或上级机关的批文;b.项目开发计划;c.需求分析说明书;d.概要设计说明书;e.详细设计说 明书;f.用户 操作手册;g.本测试计划中所引用的 资料、标准和规范。】2.任务概述2.1 目标2.2 运行环境2.3 需求概述2.4 条件与限制 3.计划3.1 测试方案3.2 测试项目【列出组装测试和确认测试中每一项测试的内容、名称、目的和进度。】3.3 测试机构
19、及人员【测试机构名称、负责人和职责。】4.测试项目说明【按顺序逐个对测试项目作出说明:】4.1 测试项目名称就测试内容4.2 测试用例4.2.1 输入【输入的数据和输入命令。】4.2.2 输出【预期的输出数据。】4.2.3 步骤及操作4.2.4 允许偏差【给出实测结果与预期结果之间允许偏差的范围。】4.3 进度4.4 条件【给出本项测试对资源特殊要求,如设备、软件、人 员等。】4.5 测试资料【说明本项测试所需的资料。】5.评价5.1 范围【说明所完成的各项测试说明问题的范围及其局限性。】5.2 准则【说明评价测试结果的准则。】八、测试分析报告1.引言1.1 编写目的 【阐明编写本报告的目的。】1.2 项目背景 【说明项目来源、委托单位、开 发单位和主管部门。 】1.3 定义 【列出本文档中用到的专门术语的定义和缩写词的原文。】