机房收费系统第一遍写文档过去有一段时间了,前几天师哥师姐们又给我们十期全体补充了一次营养,通过这次组织的交流会活动,忽然意识到自己真的是“学过了”,[学了=过了]。当师哥师姐们让我们自告奋勇总结每个文档的中心内容时,将近一百人的教室几乎是鸦雀无声啊。我的大脑开始使劲儿的翻箱倒柜,可对写过的文档的记忆还是零零碎碎,有的勉勉强强还算能沾上点边儿。。。我们写文档的时候确实是“站在了巨人的肩膀上”,却只是借用而没有真正吸收。幸好师哥师姐们的营养给的及时,让我收获很多。
要想写好一个文档,最基础的要有“三掌握”:什么时候产生、主要内容是什么、阅读对象有哪些。
根据软件开发过程,在每个阶段都会产生相应的文档辅助开发过程的进行,下面是每个文档的诞生阶段:
阶段 文档 |
可行性与计划研究 |
需求分析 |
设计 |
实现 |
测试 |
运行维护 |
软件需求说明书 |
|
√ |
|
|
|
|
可行性研究报告 |
√ |
|
|
|
|
|
项目开发计划 |
√ |
√ |
|
|
|
|
数据概要说明书 |
|
√ |
|
|
|
|
测试计划 |
|
√ |
√ |
|
|
|
概要设计说明书 |
|
|
√ |
|
|
|
详细设计说明书 |
|
|
|
√ |
|
|
数据库设计说明书 |
|
|
√ |
|
|
|
模块开发卷宗 |
|
|
|
√ |
√ |
|
用户操作手册 |
|
|
√ |
√ |
√ |
|
测试分析报告 |
|
|
|
|
√ |
√ |
开发进度月报 |
√ |
√ |
√ |
√ |
√ |
√ |
项目开发总结 |
|
|
|
|
|
√ |
每个文档的设计和说明的内容都是为相应的读者而服务的。
读者 文档 |
项目经理 |
开发人员 |
维护人员 |
用户
|
软件需求说明书 |
|
√ |
|
√ |
可行性研究报告 |
√ |
√ |
|
|
项目开发计划 |
√ |
√ |
|
√ |
数据概要说明书 |
|
√ |
|
|
测试计划 |
|
√ |
|
|
概要设计说明书 |
|
√ |
√ |
|
详细设计说明书 |
|
√ |
√ |
|
数据库设计说明书 |
|
√ |
|
|
模块开发卷宗 |
√ |
|
√ |
|
用户书册 |
|
|
|
√ |
操作手册 |
|
|
|
√ |
测试分析报告 |
|
√ |
√ |
|
开发进度月报 |
√ |
|
|
|
项目开发总结 |
√ |
|
|
|
几个重要文档的主要内容总结:
软件需求说明书:在和客户进行沟通时,把用户所要求的信息记录下来,根据用户的要求进行需求分析,使用户和软件开发者双方对软件的初始规定有一个共同的理解,规划出我们要开发的软件所要实现哪些功能,包括产品概述、主要概念、操作流程、功能列表、注意事项、系统环境等。简单来说就是用户给出需求,开发人员用文档的形式表达出来。
重点:用例图和原型图。
可行性研究报告:确定软件的开发目标和总的要求,进行技术和法律可行性分析、投资收益分析、制定开发计划。
重点:费用计算。
项目开发计划: 用文件的形式把对于在开发过程中各项工作的负责人员、开发进度、所需经费预算、所需软硬件条件等问题做出的安排记载下来,以便根据本计划开展和检查本项目的开发工作。
重点:用例图、类图、时序图、包图、甘特图
概要设计说明书:对所要开发的软件进行一个整体的概括,说明对程序系统的设计考虑,包括基本处理流程、程序系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。
重点:E-R图、类图和包图。
数据库设计说明书:对于数据库的标识、逻辑结构和物理结构作出具体的设计规定,包括数据库名称、表名、字段名、字段类型、字段说明、备注、字段数值计算公式等。必要时可以用图表解说,特别是关系数据库。
重点:E-R图。
详细设计说明书:主要是把我们每个小模块、小功能的业务逻辑处理用文字的方式表达出来,让程序员在编码的时候有一个依据和参照。
重点:流程图、详细的类图和包图。
测试计划:对每项测试活动的内容、进度安排、设计考虑、测试数据的整理方法和评价标准。
单元测试主要包括类图和类的规格说明书。
集成测试包括类图、包图、构件图和协作图。
系统测试使用用例图来测试系统功能。
重点:黑盒测试和白盒测试、测试用例
有了第一遍文档的基础和师哥师姐们的细心指导,第二遍文档已经完成了。通过对UML的学习,就自己画的机房收费系统的UML图和师父给的参考范例相比较,意识到自己对有些概念的理解还不是很彻底,需要在不断积累和反复的学习应用中继续加深巩固。另外,对甘特图的掌握也不是很好,接下来会在自考科目《数据库系统原理》中有意识的多多去学习。