其实我一开始我也不太知道软件工程的基本目标是什么,它的定义是什么?但是当我上冯花平老师的《软件工程》的第一节课的时候,老师就给我们说了相关的定义,那就是:“软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来的学科。”同时老师给我们讲了软件工程的发展过程分别是:“程序设计,软件设计,软件工程”三个阶段。之后通过几周的课程开始慢慢理解了软件工程的基本目标是“可靠性,有效性,可修改性,适用性,可理解性,可维护性,可重用性,可移植性,可追踪性和可互操作性”十个方面。有一次课上,老师让我们对邹欣老师的《现代软件工程》这本书提出五个问题,我现在还记得我提到的五个问题,只是我现在觉得这五个问题太小儿科了。但那个时候我还没有深入到软件工程这门课上,我当时只是个啥都不懂的小白。现在不同了,通过这十六周的学习,我都能回答我之前一开始提出的五个问题。并且通过《软件工程》这门课也加深了对软件工程这个学术的了解。
在这几周的课程中,我也第一次尝试跟别的同学合作完成老师的作业,之前的程序编程和作业,都是自己一个人编程,找资料。其实我一开始队友多人合作开发项目这件事我心里是拒绝的,觉得自己一个人能够执行的更加彻底和坚决。但是通过之后的一些小项目的合作和编程,我开始放弃我之前愚蠢的想法。我发现合作开发的一些好处。例如有不同的制作想法,而且你不会的时候可以不用先问度娘了,而是先问问自己的合作伙伴。同时可以把各自擅长的领域都最好的发挥出来。就拿我合作的成员来说吧!胡仕辉同学擅长在数据库的编程和制作;而吴阿平则是什么都非常好;我是擅长C#窗体语言和JAVA的程序编辑;黄泽平同学则是擅长C++语言编辑;我们只要承包自己擅长的领域就可以了,不会因为这个程序涉及到的领域是自己不太擅长的而愁眉苦脸和拼命地查资料。这个课到最后的时候会让每个学习小组自己设计一个作品。我觉得这个作品做的好不好并不重要,而且这也不是冯花平老师的用意,重要的是让我们以小组合作的形式真正的了解“软件工程”它的具体步骤和方法。这比书本上死记硬背的记忆深刻数十倍。
冯花平老师的《软件工程》这个课确实不错,让我们这些即将毕业面临社会的大学生真正的知道那些企业在设计制作软件的步骤和方法。但是也存在这几个问题。我觉得首先是邹鑫老师的《现代软件工程》这本书的概念相对多那么一些,但是老师都是点到为止。没有说哪些是重点要记住的,哪些是真正要点过为止的。其次老师每次讲课都比较快,很少注重跟学生的互动,虽然在后期的课程中老师为了跟我们这样的学生有更好的课堂互动开始强制留一些课堂作业,但是如何让学生能够自愿的进行课堂互动,我觉得这是一个十分重要的问题。最后,我希望有更多像我这样对《软件工程》这节课一无所知的小白能够通过冯花平老师的课能够了解《软件工程》到底是干什么,做什么的。