升入大二上学期,我们学习了软件工程这门课程,作为软件工程专业的一名学生,可想而知这门课程对于我们来说非常的重要,我们以《构建之法》作为我们这门课的教材,这本书是由邹欣老师编写的,这是在很多高校经过很长时间的软件工程教学实践编写的一本可以让学生在16周内掌握软件工程技术的书,这本书对于我们来说很有价值。
开篇第一章便十分明确的介绍了什么是软件,什么是软件工程,一个复杂的软件不但要有合理的软件架构、软件设计与实现,还要有各种文件和数据来描述各个程序文件之间的依赖关系、编译参数、链接参数等。这和我之前想的就不一样,之前总是觉得一款软件只要通过编程将它实现就可以,并不用这么复杂,在之前我们团队开发中,制作一款小型的APP,主要就是通过构思,分步实现功能,并没有考虑过软件架构,对于架构也不知道是一个什么样的概念。软件在运行过程中还会出这样那样的问题,也许我们要时不时给软件打一个补丁,或者维护众多的服务器,团队的新老成员要一起工作,修复各种各样的问题,这叫软件维护,或者服务运营。软件=程序+软件工程,那程序又是什么呢,它并不是我们想的源代码,一个程序是由算法和数据结构组成的,程序是基本功,但是在算法和数据结构之上,软件工程决定了软件的质量;商业模式决定了一个软件企业的成败。软件从业人员和软件企业的道德操守会极大地影响软件用户的利益。。
软件工程是把系统的、有序的、可量化的方法应用到软件的开发、运营、和维护上的过程。书中介绍了软件工程中涉及的方方面面,人们在开发、运营、维护软件的过程中有很多技术、做法、习惯和思想体系,软件工程把这些相关的技术和过程统一到一个体系中,叫做“软件开发流程”。软件开发流程的目的是为了提高软件开发、运营、维护的效率,提高软件的质量、用户满意度、可靠性和软件的可维护性。
软件工程中一个生命周期涉及,软件需求,软件设计,软件构建,软件测试和软件维护。他们的理论基础为计算基础,数学基础和工程基础。通过一定的软件流程,在预计的时间内发布一个比较好的软件,是需要团队共同努力,并且逐步实现的。
通过这次了解到了原来软件和程序并不一样,他们是有区别的,之前总把他们混在一起,开发一款软件并没有那么容易,同时他是需要一个团队共同努力来完成的,单靠一个人的力量,很难将一款软件开发完美,团队开发很困难,需要成员之间很好的交流。同时一个软件并不是功能齐全他就可以称为一款好的软件,他要有针对性,同时要简单明了。这不仅是读完这本书的体会,更是这段时间的学习的一些体会。今后更要注重团队合作,加强与小组之间的交流,共同努力完成目标。