第一次软工文档总结

正确的步骤应该是在软件开发的每个阶段中先写相应的文档,然后付诸实施。但我们是在敲完机房收费系统,看完软工视频之后写的机房收费系统的文档。这样写起来才言之有物,不至于天马行空,不知道写些什么,其实文档也是软件工程的一部分,但因为这是我们第一次写文档,仍有有很多缺陷和不足,我们会继续改进向着职业化迈进。古人曾说“三思而后行”,我们在做一件重要的事情时,都要将事情进行规划,计划好每一步如何做。在开发开发一个大型的系统时更是这样,因为一旦实施就意味着人力物力的投入。所以做好十足的准备是很重要的。而文档就是这十足的准备,是我们进行系统开发的依据。

文档是系统开发建设的生命线,它贯穿于系统开发的整个过程,系统开发的各个层次和阶段都要有相应的文档。当然各个阶段文档的内容和作用是有差异的,这就是我们要总结的内容了。


一、文档分类

软件开发过程中软件开发人员需制定 一些工作计划或工作报告,这些计划和报告都要提供给管理人员, 并得到必要的支持。管理人员则可通过这些文档了解软件开发项 目安排、进度、资源使用和成果等。软件开发人员需为用户了解软件的使用、操作和维护提供详细的资料,我们称此为用户文档。按照文档将来“给谁看”,可以将文档分为用户文档、开发文档、管理文档。分类如下


二、每篇文档中的重点内容

可行性研究报告:说明该软件开发项目的实现在技术上、经济上和社会因素上的可行性,评述为了合理地达到开发目标可供 选择的各种可能实施的方案说明并论证所选定实施方案的理由。

项目开发计划:为软件项目实施方案制定出具体计划,应 该包括各部分工作的负责人员、开发的进度、开发经费的预算、所 需的硬件及软件资源等。项目开发计划应提供给管理部门,并作为开发阶段评审的参考。 

软件需求说明书:也称软件规格说明书,其中对所开发软件的功能、性能、用户界面及运行环境等作出详细的说明。它是用户与开发人员双方对软件需求取得共同理解基础上达成的协议, 也是实施开发工作的基础。 

数据要求说明书:该说明书应给出数据逻辑描述和数据采集的各项要求,为生成和维护 系统数据文卷作好准备。

概要设计说明书:该说 明书是概要设计阶段的工作成果,它应说明功能分配、模块划分、程序的总体结构、输 入输出以及接口设计、运行设 计、数据结构设计和出错处理设计等,为详细设计奠定基 础。 

详细设计说明书:着重描述每一模块是怎样实现的, 包括实现算法、逻辑流程等。

用户手册:本手册详细 描述软件的功能、性能和用户 界面,使用户了解如何使用该软件。

操作手册:本手册为操作人员提供该软件各种运行情况的 有关知识,特别是操作方法的具体细节。

测试计划:为做好组装测试和确认测试,需为如何组织测试 制定实施计划。计划应包括测试的内容、进度、条件、人员、测试用 例的选取原则、测试结果允许的偏差范围等。

测试分析报告:测试工作完成以后,应提交测试计划执行 情况的说明。对测试结果加以分析,并提出测试的结论意见。

开发进度月报:该月报系软件人员按月向管理部门提交的 项目进展情况报告。报告应包括进度计划与实际执行情况的比较、 阶段成果、遇到的问题和解决的办法以及下个月的打算等。

项目开发总结报告:软件项目开发完成以后,应与项目实 施计划对照,总结实际执行的情况,如进度、成果、资源利用、成本 和投入的人力。此外还需对开发工作作出评价,总结出经验和教 训。 

总的来说:这些文档在一定程度上都回答了六个问题分别是“做什么?”,即分析哪些需求要被满足;“从何处?”,即所开发的软件在什么环境中实现以及所需信息从哪里来;“何时干?” ,即某些开发工作的时间如何安排;“谁来干?”,某些开发(或维护)工作由谁来做;“如何做?”某些需求是怎么实现的;“为何做?”即为什么要进行那些软件开发或维护修改工作;

其实我们在写文档之前就应该考虑清楚要写的文档到底主要回答的是什么问题,在写文档时就重点写这些内容,而对于其它并不侧重的内容少写甚至可以不写。而不要,重点内容没有写出来,而一些无关紧要的内容写了很多,这样就有些舍本逐末了,这次我在写文档时就范了这样的毛病。


三、文档中应该有的图

用软工视频中老师的话说“一张图,胜过前言万语。”在写文档时画出相应的图是非常必要的。软工文档是在看UML视频之前验收的,当时对于UML中的九种种图还不知道,当时只知道ER模型,业务流程图和数据流图,所以当师傅问我什么是“甘特图”时我在风中凌乱了,后来我在网上查了一下,甘特图是用来描述业务流程进度与时间关系的图,我想那它应该出现在项目开发计划下的进度标题下吧。本来我想每一个文档都应该有它对应的图,后来我发现并不是这样的,文档中的图并没有硬性规定,图关键是要说明问题,合理利用即可。

现在我就仅以我知道的几种图总结一下:进行功能描述时使用IPO图(输入—处理—输出),进行数据库设计时进行概念设计时用E—R模型,进行逻辑结构物理结构设计时可以直接用表格表示,进行逻辑流程描述时用流程图,进行总体概要模块结构设计时用层次图。当然这只是我自己的理解,欢迎各位大神指正~

而现在UML视频看了一半,在UML会学到更多的图,随着学习的深入,我们会向着职业化迈进,每天进步一点点吧。

猜你喜欢

转载自blog.csdn.net/u013034828/article/details/40923323