【软件工程系列】之文档(总结篇)

来源:互联网 发布:交互式软件 编辑:程序博客网 时间:2024/06/05 05:28

一、软件工程文档分类:

根据产生和使用的范围,软件文档大致分为:开发文档、管理文档、用户文档三类:

 

13种软件工程基本文档的内容做如下区分:

《01 可行性研究报告》

内容:可行性分析(技术上、经济上、社会条件上);实施方案;论证选定方案。

《02 项目开发计划》

目的:将开发过程中有关各项工作的负责人员、开发进度、经费预算、软硬件等问题做出的安排记载下来,以便根据本计划开展和检查本项目的开发工作。

《03 软件需求说明书》

目的:使用户和软件开发者双方对软件的初始规定有一个共同的理解,使之成为整个开发工作的基础。明确本系统的详细需求,供使用单位确认系统的功能和性能,并作为软件设计人员的设计依据和使用单位的验收标准

《04 概要设计说明书》

目的:对系统设计的考虑,并且完成系统的大致设计、明确该系统的数据结构与软件结构,进一步细化该系统设计阶段得出的总体概貌。从该报告中能够看出该系统的组织结构、模块划分、功能分配和接口设计,为该系统的详细设计提供基础。

《05 详细设计说明书》

目的:说明一个软件系统各个层次的每一个程序(每个模块或者子程序)的设计考虑。对概要设计中产生的功能模块进行过程描述,设计功能模块的内部细节,包括算法和详细数据结构,为编写源代码提供必要的说明。

区别:概要设计解决了软件系统总体结构设计的问题,包括整个软件系统的结构、模块划分、模块功能和模块间的联系等。详细设计则要解决如何实现各个模块的内部功能,即模块设计。具体的说,算法。但这并不等同于系统实现阶段用具体的语言编码,它只是对实现细节作精确的描述,这样编码阶段就可以将详细设计中对功能实现的描述,直接翻译、转化为用某种程序设计语言书写的程序。

《06-1 数据库设计说明书》

目的:对于设计中的数据库的所有标识符、逻辑结构和物理结构做出具体的设计规定。用于指导该系统在数据库存储各方面的内容,为系统开发的程序员、系统分析员做为基准文档。

《06-2 数据要求说明书》

目的:向整个开发时期提供关于被处理数据的描述和数据采集要求的技术信息。明确《各项功能和非功能性需求实现时所需要的数据,并可以此数据为根据设计数据库。同时为概要设计和详细设计人员提供设计依据,其他本项目组的开发人员也可参阅。

《07 测试计划》

目的:提供对该软件的测试计划。对项目进行测试,详细记录测试过程,对软件的质量进行评估,同时为我们提供了更正系统漏洞的依据。本测试计划文档作为指导此测试项目循序渐进的基础,帮助我们安排合适的资源和进度,避免可能的风险。

《08 测试分析报告》

目的:把集成测试和确认测试的结果、发现以及分析写成文件加以记载。根据测试计划报告,对软件进行测试,详细记录测试过程,以对软件的质量进行测评,为软件设计人员提供BUG依据,故编写了此文档。

《09 项目开发总结报告》

目的:总结本项目开发工作的经验,说明实际取得的开发结果以及对整个开发工作的各个方面的评价。

《10 操作手册》

目的:向操作人员提供该软件每一个运行的具体过程的有关知识,包括操作方法的细节。

《11 用户手册》

目的:使用非专门术语,给使用者一个使用指南,充分描述该软件系统所具有的功能以及基本的使用方法,并为用户提供遇到问题时的解决方法。使用户了解该软件的用途,正确使用它。

《12 开发进度月报》

目的:及时向有关管理部门汇报项目开发的进度和情况,以便及时发现和处理开发过程中出现的问题。   



二、各阶段的文档编制:


三、文档内容:

   

什么(What):满足哪些需求?做什么?                                

何处(Where):所开发的软件杂什么环境中实现,所需信息从哪里来?从何处?

何时(When):开发工作时间如何安排?何时做?                                

谁(Who):开发和维护工作打算由谁来做?                                

如何(How):需求应如何实现?怎样干?                                

为何(Why):为什么要进行这些软件开发和维护工作?为什么干?


四、各文档中的人员分配: