1.软件文档的重要性
根据软件工程学的基本原理,强调了软件=程序+文档的思想,软件文档是规范化软件生产的重要依据,他直接关系到软件开发过程的可见性和可控性,因此,软件文档编写在软件开发中具有重要的地位和作用。
2.软件文档的作用及分类
2.1软件文档的作用
文档作为计算机软件的重要组成部分,告诉用户如何操作和维护系统,提供关于未来改进和重新实施所需的信息,在开发人员、维护人员、管理人员、用户与计算机之间起着重要的桥梁作用。表现在:(1)项目管理的依据(2)技术交流的语言 (3)项目质量的保证(4)支持培训与维护(5)支持软件维护
2.2软件文档的分类
软件文档根据其产生和使用的范围,主要划分成三类:开发文档、用户文档和管理文档
2.3软工文档与使用者的关系
3各文档包含的内容及作用
可行性研究报告:对比原有系统说明该软件开发项目的实现在技术上、经济上和社会因素上的可行性,评述为了合理地达到开发目标可供选择的各种可能实施的方案,说明并论证所选定实施方案的理由。
项目开发计划:为软件项目实施方案制定出具体计划,应该包括具体的工作内容及其负责人员、开发的进度及期限、实施计划的人员分工、所需的硬件及软件资源等。项目开发计划应提供给管理部门,并作为开发阶段评审的参考。
软件需求说明书:也称软件规格说明书,其中对所开发软件的功能、性能、用户界面及运行环境等作出详细的说明。它是用户与开发人员双方对软件需求取得共同理解基础上达成的协议,也是实施开发工作的基础。
概要设计说明书:该说明书是概要设计阶段的工作成果,它应说明模功能划分、处理流程、程序的总体结构、输入输出以及接口设计、运行设计、 数据结构设计和出错处理设计等,为详细设计奠定基础。
详细设计说明书:着重描述每一模块是怎样实现的,包括实现功能、性能、 算法、逻辑流程、接口等。
数据库设计说明书: 包括外部设计和内部结构设计及对应的解释说明的数据字典。
数据要求说明书:该说明书应给出数据逻辑描述和数据采集的各项要求,是对原始来源数据的格式规范,为生成和维护系统数据文卷作好准备。
测试计划:为做好组装测试和确认测试,需为如何组织测试制定实施计划。计划应包括测试的内容、进度、条件、人员、测试用例的选取原则、测试结果允许的偏差范围等。
测试分析报告:测试工作完成以后,应提交测试计划执行情况的说明。对测试结果加以分析,并提出测试的结论意见,对软件能力分析,提出改进方向的建议。
项目开发总结报告:软件项目开发完成以后,应与项目实施计划对照,实际开发的产品的功能性能、进度、费用等是否达到预期的标准。此外还需对开发工作作出评价,总结出经验和教训。
操作手册:本手册为操作人员提供该软件各种运行情况的有关知识,特别是操作方法的具体细节。
用户手册:本手册详细描述软件的功能、性能、运行支持的软硬件环境和用户界面,使用户了解如何使用该软件。
开发进度月报:该月报系软件人员按月向管理部门提交的项目进展情况报告。报告应包括进度计划与实际执行情况的比较、 阶段成果、遇到的问题和解决的办法以及下个月的打算等。
4 软工文档与生存周期的关系
软件文档的编制是随着软件生存期各个阶段工作的开展而适时进行的,有的反应某一阶段的工作,有的则需要跨越多个阶段工作。
阶段 文档 | 可行性研究与计划 | 需求分析 | 软件设计 | 编码 与实现 | 集成 与测试 | 运行 与维护 |
可行性研究报告 | √ |
|
|
|
|
|
项目开发计划 | √ | √ |
|
|
|
|
软件需求说明书 |
| √ |
|
|
|
|
数据要求说明书 |
| √ |
|
|
|
|
测试计划 |
| √ | √ |
|
|
|
概要设计说明书 |
|
| √ |
|
|
|
详细设计说明书 |
|
| √ |
|
|
|
数据库设计说明书 |
|
| √ |
|
|
|
模块开发卷宗 |
|
|
| √ | √ |
|
用户手册 |
| √ | √ | √ |
|
|
操作手册 |
|
| √ | √ |
|
|
测试分析报告 |
|
|
|
| √ |
|
开发进度月报 | √ | √ | √ | √ | √ |
|
项目开发总结 |
|
|
|
| √ |
|
5 软件评审的内容
评审点 | 评 审 人 员 | 评 审 文 档 | 评 审 内 容 |
软件需求评审 | 软件开发人员 用户 管理人员 标准化人员 特邀专家 质量管理人员 | 软件需求说明书 数据要求说明书 项目开发计划 | 软件需求说明书是否覆盖了用户的所有要求; 软件需求说明书和数据要求说明书的明确性、完整性、一致性、可测试性、可跟踪性; 项目开发计划的合理性; 文档是否符合有关标准规定 |
概要设计评审 | 软件开发人员 管理人员 标准化人员 | 概要设计说明书 | 概要设计说明书是否与软件需求设计说明书的要求一致; 概要设计说明书是否正确、完整、一致; 系统的模块划分是否合理; 接口定义是否明确; 文档是否符合有关标准规定 |
详细设计评审 | 软件开发人员 管理人员 标准化人员 | 详细设计说明书 测试计划 数据库设计说明书 | 详细设计说明书是否与概要设计说明书的要求一致; 模块内部逻辑结构是否合理,模块之间接口是否清晰; 数据库设计说明书是否完全,是否正确反映详细设计说明书的要求; 测试是否全面、合理; 文档是否符合有关标准规定 |
鉴定 (验收) | 软件开发人员 用户 管理人员 特邀专家 标准化人员 承办方与交办方的上级领导 | 成套文档 | 开发的软件是否已达软件需求说明书规定的各项技术指标; 使用手册内容是否完整、正确; 文档是否齐全,是否符合有关标准规定 |