个人总结

                                  软件工程课程总结

今年,我学习了由王建民老师讲授的“软件工程”这门学位课,由于王建民老师的独特教学风格和务实的教学思想,我学到了非常多的软件工程方面的知识,并在在课程不断地加强自己的编程能力。

    软件工程这门课有64学时,在我们学校除了高数等少数课程外,应属学时较多的课程了。在课下时间,依然需要大量练习软件工程布置的各种编程任务,团队项目,阅读任务等。所以对于这门课,我花的时间还是相对较多的。当然,在课程结束时,通过在这门课的锻炼,我的编程能力和对软件工程的理解也得到了很大的提升。

    相对于我们已经学过的大部分专业课,软件工程这门课还是有很大的不同,首先,软件工程既不是讲计算机的软硬件结构,也不是讲某种编程语言,高新技术,或者硬件结构的具体理念与应用;软件工程主要讲述一款软件,从需求分析,到软件的设计,再到开发团队人员的任务分配,最后开发完成经过测试,发布成为一款成熟的软件这一过程。再加上王老师的独特授课方式,还是给我们了很多的新鲜感。

        首先,既然课程名字叫“软件工程”,那么必定涉及到软件,应为涉及到软件,所以必定涉及到编程。其实从大一开始,我就比较喜欢编写程序,大一时觉得上的最有意思的一门课便是c++程序设计,后来经过大二的数据结构和大三参加的各种算法设计竞赛,我深深地喜欢上了编程。所以,一开始对于老师布置的随堂练习内容,还是可以比较轻松的搞定。而在软件测试这一环节,由于曾经接触过zoj,poj这一类的在线测试平台,所以也并不陌生,依然可以较轻松的完成。但后来,任务开始从个人变为团队,难度也逐渐开始提高,所以逐渐开始花更多的时间用心做了。

    对于软件工程这门课,我印象最深刻的还是这门课的团队开发软件过程。我们团队开发的软件最初设想是制作我们学校图书馆的android客户端应用程序了。但是遇到了一些阻碍,本来我们设想是使他连上学校的图书馆,让他具有扫二维码查询借阅图书的功能。和查询个人信息,预定图书馆座位的功能。但是很不幸,几次找图书馆相关老师协调,并没有要到学校图书馆的接口(主要是工作人员担心图书馆数据的安全),所以最终,我们只能自己租了一个服务器,自己设计了数据库,和这款应用程序的服务器部分,在并将其发布到服务器上,模拟了一下图书借阅查询,和选座的功能。

       在我们团队的软件制作过程中,由于我和小伙伴们事先已经学过一些android所以程序的绝大部分内容都是完全自己编写的,但是由于android和servlet巨大的代码量,在利用业余时间编写程序时,还是感觉有一些吃力的。程序后台的一些业务逻辑,在一开始设计时,并没有意识到需求分析和软件设计的重要性,所以导致后面在编程实现时总是发现前面存在各种各样的设计缺陷,所以在编写软件时,总是不断地修改当初数据库,和各种业务逻辑的设计,导致了进度的落后。所以我们明白了初期的需求分析和软件设计的重要性。

    在软件编写的过程中,由于一开始的盲目自信,导致了软件设计的功能太多,逻辑过度发杂,代码量巨大,所以在导致编写过程后期比较匆忙。没能实现预计中图书封面传送,图书分类等功能。在软件的逻辑上,也出现了一些不太合理的地方。

    在团队开发的过程中,我们团队队友还是比较给力的,虽然没有最终没有要到图书馆数据库的接口,只能自己编写服务器应用程序来模拟查询借阅操作,但是队友们还是很给力的。大家干劲都很足,为了这个团队作业,小伙伴们陪我熬了两次夜,非常感谢陪我熬夜的小伙伴们,在大家的辛勤努力下,最终完成了我们团队的大作业。感觉队友们还是很给力的。

        最后,我觉得软件工程这门课程带给我的收获还是很多的。通过不断地编程练习,我的编程能力得到了提升;以前我们参加的团队作业并不多,所以在这次团队合作开发的过程中,我们锻炼了自己与人交流,与人合作的能力。最重要的是,我学到了软件这个行业的一些基础知识和管理模式。在今后的学习中,我会更加努力,做一个优秀的程序猿。

原文地址:https://www.cnblogs.com/yifan2016/p/5612237.html