标准的软件开发过程 ,软件开发的标准过程包括六个阶段(瀑布型),而六个阶段需要编写的各类文件达14种之多,在每个阶段需要编写哪些文件?每个阶段都需要画哪种图?
1.可行性与计划研究阶段
- 可行性研究报告(预期读者:系统管理、开发、运维人员)
- 项目开发计划(预期读者:系统分析和开发人员)
1.1系统流程图
系统流程图是描述系统物理模型的一种传统工具。它是表达数据在系统各部件之间流动的情况,而不是对数据加工处理的控制过程,它是物理数据流图而不是程序流程图。系统流程图形象的呈现了软件的功能,即使不懂软件的人也可以轻松的看懂,可以说它是软件设计师与用户之间沟通、交流的有效工具。
1.2数据流图
数据流图是从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。如果说系统流程图能让用户更好的明白系统的功能,那么数据流图则让用户更加明白系统的工作原理。
1.3数据字典
数据字典就是数据的信息的集合,也可以说就是对上面提到的数据流图中的所有元素的定义的集合。数据字典的主要作用就是在软件的分析与设计阶段方便我们查阅不甚了解的数据的描述信息。
2.需求分析阶段
- 软件需求说明书(预期读者:开发人员与用户代表)
- 数据要求说明书(预期读者:数据库设计人员,系统测试人员)
- 初步的用户手册 (预期读者:系统用户)
2.1E-r图
E-r图的主要作用就是把用户的数据要求用可视化的图形呈现出来。
2.2状态转换图
状态转换图说白了就是系统的行为建模,就是通过描述系统的状态以及引起状态变化的事件来表示系统的行为,将系统运行时详细的状态变化呈现给用户。
3.设计阶段
- 概要设计说明书(预期读者:项目设计和编码人员)
- 详细设计说明书(预期读者:程序开发、测试人员与客户)
- 数据库设计说明书(预期读者:数据库设计师、数据库管理员)
- 测试计划 (预期读者:系统编码与测试人员)
程序流程图
程序流程图是对程序控制流程的直观描述。
4.实现阶段
- 用户手册完工(预期读者:系统用户)
- 操作手册 (预期读者:系统用户)
- 测试计划终稿(预期读者:系统编码与测试人员)
5.测试阶段
- 测试分析报告 (预期读者:软件开发人员)
- 项目开发总结报告 (预期读者:相关的软件开发人员)
6.运行与维护阶段
- 开发进度月报(预期读者:项目管理员)
对于一项软件而言,有些文件的编写工作可能要在若干个阶段中延续进行。
鉴于软件开发是具有创造性的脑力劳动,也鉴于不同软件在规模上和复杂程度上差别极大,我认为在文件编制工作中应允许一定的灵活性,并不是每种文档都必须编写。
文档编制的衡量因素
◆在因素总和较低的情况下,项目开发总结报告的内容应包括:程序的主要功能、基本流程、测试结果和使用说明。
◆测试分析报告应该写,但不必很正规。
◆数据要求说明和数据库设计说明是否需要编写应根据所开发软件的实际需要来决定。
有关以上图的具体画法在软工文档中的那些图中有所阐述,欢迎大家访问!