大二寒假作业之《构建之法》读后感1

       寒假教师让阅读《构建之法》,当时就认为,为何要阅读这种书全是理论,多打打代码不好吗。读了几章以后发现受益匪浅,学习软件工程,代码能力固然重要但是软件工程的思想也相当重要。

        首先第一章概论就让我受益匪浅。第一章开头提出软件=程序=软件工程,软件工程是什么,说实在的我并不清楚,软件工程要干什么我也不清楚。

        一个软件不仅仅是写出来就完事,软件拥有一些列过程组成的生命周期。一个复杂的软件不但要有合理的软件架构,软件设计与实现,还要有各种文件和数据来描述各个程序文件之间的依赖关系,编译参数,连接参数,等等。这些都是然健的构建过程。我们还需要一系列的工具和程序来保证程序的正确性和质量,这是质量保证。软件团队要从需求分析开始把合适的需求梳理出来。软件团队的人员也会流动,新的成员要尽快读懂已有的程序,了解程序的设计,这叫程序的理解。软件运行中还会出现各种各样的问题,团队的新老成员需要一起工作修复各种各样的问题,这叫软件维护。        

        要理解软件工程是什么,首先要理解工程是什么,人们将创造性的运用科学原理,设计和实现建筑,机器,装置或生产过程;或是在实践中使用一个或多个上述视实体;或是实现这些实体的过程。而软件工程是吧系统的,有序的,可量化的方法应用到软件开发,运营和维护上的过程。软件工程包含:软件需求分析,软件设计,软件构架,软件测试和软件维护。软件工程也有其特殊性,很多工程会随着社会的发展,技术进步会变得越来越容易。但是软件的开发流程却没有这样的提速。这是由与软件的1.复杂性,2.不可见性,3.易变性,4.服从性,5非连续性决定的。

        文章提出软件工程的目标是创造“足够好”的软件,但在面对何为“好”时,却有很多问题。很多人认为有“BUG”就不是好软件,作者对此举了一个例子,为何有人会买那些质量不够好的汽车呢?因为对于某些客户来说,某一类汽车满足了他们的需求,他们就会买。因此软件工程的一个重要任务就是,决定一个软件什么时候“足够好”。

原文地址:https://www.cnblogs.com/fengchuiguobanxia/p/14302181.html