软件工程Ⅱ:读《构建之法》1~5章有感

作业要求来源于 https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2178

国庆假期期间,我观看了这本软件工程课程所提供的教材。以下是我的读书笔记。

 

 


 

第1章 概论

这一章主要讲述了软件工程的概念,提出了一些延伸问题引导我们去思考。并给出了几个有用的推论帮助我们理解与记忆:

程序 = 数据结构 + 算法

软件 = 程序 + 软件工程

软件企业 = 软件 + 商业模式

在看完五章的内容后,我又一次从头回顾了一遍,发现自己对这些概念还是不甚明晰。

相关的定义已经看了许多遍,但留在记忆里的内容寥寥无几。在我的理解里,什么是软件呢?程序呢?软件工程呢?…尝试着弄清这些问题,做了些简要的记录。

对我来说,软件的软字能够阐明它无形的性质。就像人的思想一样,软件就是计算机的思想。

程序是教计算机做什么,软件就是怎么让它自己去做。这其中涉及到很多细节上的实现:

明确要让它做什么、设计有关步骤和方法、使用它听得懂的语言、保障它的安全和可靠性、达到一定的效率和质量……

工程是以最短的时间和最少的人力、物力做出高效、可靠且对人类有用的东西。(参考百度百科)软件工程就是要在一定的时间内使用有限的资源做到上面这些事。

企业就是会让计算机做各种事情的组织,他们以满足用户使用计算机的各种需求为生。

 

 


 

第2章 个人技术和流程

在阅读2.1.3节的时候,我对回归测试的定义产生了疑问,不是很能明白什么叫“回归到以前不正常的状态”。

为什么模块的功能发生正常变化会引起“退化”?

于是我进行了相关的搜索。根据百科的说明,我知道修改了旧代码后有可能会引入新的错误,或导致其他代码产生错误。

回归测试就是为了检验有没有这种情况而产生的。回归的英文是regression,又有衰退的意思,联系思考一下就非常直观了。

 

 


 

第3章 软件工程师的成长

通过这一章节,我了解到了一个软件工程师的个人能力包括哪些方面,需要怎样锻炼。其中3.2节的思维误区和3.4节的部分都令我受益匪浅。

看到3.3节时,我对人们的职业态度的高等级产生了许多向往。如何才能找到想投身的事业和理想呢?

一味地想着提升能力只觉得痛苦和迷茫,但生活中光是做着被要求的事情就精疲力竭了。感觉这是一个很大的课题,需要慢慢去思考。

 


 

第4章 两人合作

这一章向我们展示了一些代码的规范,以及合作和沟通的技巧。

在这章里我没有太多的疑问,只试着去进行了一些拓展阅读——比如4.7节练习与讨论里有关性格的部分。

 

 


 

第5章 团队和流程

在阅读5.3.6渐进交付流程的时候,对MVP和MBP的思路产生了兴趣,已知MBP对产品团队有很高的要求,那么最小可行产品(MVP)要怎么做呢?

MVP是Eric Ries在《精益创业》这本书里提出的概念。

“开发团队通过提供最小化可行产品获取用户反馈,并在这个最小化可行产品上持续快速迭代,直到产品到达一个相对稳定的阶段。”

这是一个快速试错的好方法。核心要点是剥掉多余的功能或高级功能,只要主流程跑起来就可以了。

“完美并不是我们的目标,快速试错才是我们目标。”

posted on 2018-10-08 11:56  WAN*Y  阅读(150)  评论(4编辑  收藏  举报

导航