【前情提要】
机房收费系统是我们在TGB经历的第一个没有源代码的系统,在此之前我们也经历过了学生信息管理系统,但是我们编写的这两个系统都是在参照他人的程序编写的,代码是杂乱的、毫无章法的。
那时的我们编写程序仅仅要求功能能够实现就行,但是这对于立志要成为专业人员的我们是完全不够的,“专业”二字就决定了我们要比一般人更加优秀,所以就需要学习能使我们变得专业的知识来指导我们的编程,所以它——软件工程就应运而生了。
【剧情发展】
学习软件工程(以下简称软工)是我们步入专业的一个象征,从这里开始,是我们学习的一个重要转折点。是我们由业余转向专业的一个转折点,是我们由面向过程转向面向对象的一个转折点。软工是软件设计的灵魂,是我们前进的思想性指导。它使我们的设计有法可依,有章可循。
软工学习以视频为主,然后根据所学的知识编写完成的项目机房收费系统的文档。虽然我们这个文档是在项目完成后编写的,但是每一个阶段都要对应着写出需要的文档。
在学习软工视频时正赶上自学考试(以下简称自考),而且这次自考中有一科信息系统开发与管理与软工算是相辅相成的,二者结合起来使我们更加容易地理解软件开发的流程,以及各个阶段所对应的文档等等。
软工文档涵盖了系统开发阶段、系统设计阶段、系统实现阶段和系统测试维护阶段的所有需求文档,文档的编写要求跟随项目的开发进度,但是由于我们的机房收费系统已经完成所以稍微感觉有点别扭。不过这并不影响我们编写文档,反而有助于我们更全面的宏观把握整个系统。
【重点桥段】
下面让我们大家一起来回顾一下这9类13个文档:
1、 可行性分析报告
这是我们要编写的第一个文档也是最长的一个,顾名思义可行性分析报告就是让我们从各个方面考虑系统的可行性,通过软工视频和自考信管我们也能想到以下方面:经济、组织、管理、技术、环境等等。
它是一个先决条件,只有满足其中的条件后我们才能进行下一步。
2、 项目开发计划
这个文档要求我们制定出一个完整的开发计划并且对人员、资金等方面做到宏观把控,进而提高我们工作的效率。
3、 软件需求说明
这个文档要求我们将关于软件的目标进一步细化,是用户和开发者将来有所依据。
4、 软件系统设计(概要设计和详细设计)
这个阶段的文档分为两个,概要设计是对系统中的接口、运行环境、数据结构等等做一个概述;而详细设计则要求我们将系统中每一个功能模块都详细地写出,用来帮助进行开发。
在软件开发中详细设计的重要性不言而喻。
5、 数据库设计(设计和要求)
数据库是我们软件的另一大核心部件,设计阶段包括:外部设计、运行设计和结构设计。要求文档是写出数据库中数据的详细描述以及相应的规格。
6、 软件测试
软件测试是在软件实现后对软件进行最终的调试,测试分为三个阶段:测试前期准备、测试用例的编写和执行测试计划。
7、 项目开发总结报告
这一项的进行标志着项目的开发过程已经结束,可以投入使用了。但是我们需要将软件开发过程中所遇到的种种都记录下来并且存档,以便日后对项目进行维护时使用。
8、 说明书(用户说明书和操作说明书)
二者间存在区别,用户说明书是将软件的功能以及使用方法告诉用户,而不必将实现功能的方法告知用户,所以用户仅限于会使用软件即可;操作说明书则相对专业一点,它要求将软件进一步需要解释的地方叙述出来,以便管理员或者维护人员查看。
9、 开发进度月报
这个文档是要求我们从接手软件时就相应的做记录,直到软件开发过程结束,它可以使管理者更加清楚软件开发的进度并为决策者提供相应的依据。
【与君共勉】
在师傅验收时提出了一些针对该阶段学习的一些建议,在这里拿出来与大家分享:
1、 在软工文档中的图尽自己最大的能力去画,要勇于尝试,尤其是甘特图要尝试画一下;
2、 数据字典一定要思考一下;
3、 数据库的命名规范以及窗体的命名规范;
4、 详细设计文档着重下点功夫;
5、 在软件开发中要多为用户考虑,站在用户的角度思考;
6、 IPO图、原型图等等尝试一下;
7、 测试阶段中测试用例的选择等等。
【结束语】
软工的学习虽然告一段落了,但是软工中学到的知识在今后确实常用的,所以希望大家认真地总结一下。(PS:这篇文章是小编目前写过的最长的一篇,相信今后会有更长的文章问世。)