通读《构建之法》后的五个问题
第一个问题:读P8时,1.2软件工程是什么?
这也是上这门课前我的疑问,软件工程,乍一看是能理解的,但是每次一思考,软件工程究竟想要说什么,就会很纳闷。书上这样给解释:软件工程师把系统的、有序的、可量化的方法应用到软件的开发、运营和维护上的过工程。我觉得“系统、有序、可量化”这几个词态太模糊了。所以也去百度过,也得到了相应比较能理解的一个解释,来自于《计算机科学技术百科全书》:软件工程是应用计算机科学、数学、逻辑学及管理科学等原理,开发软件的工程。这样便知道了软件工程实际上不是一个完全计算机的课程,是一门篇综合的课程。
第二个问题:P31对于两种效能分析方法的具体使用?
这个问题源自2.2的效能分析工具,这段的第一句话说得很戳心。“让自己的程序跑得又快又好是每一个程序员都梦想的事”,之后也有介绍两种分析方法,一是抽样,二是代码注入。但是对于这两种分析方法只有概念上的介绍,并没有具体的使用方法或例子。后去百度了一下,看得也稍微有点不明不白。
第三个问题:P121敏捷流程中的第三步半问题?
其实对于我们现在来说,的确是有一种代码写完了那基本上完事一大半的感觉。看完这第三步半后身同感受,其中有一句“程序员写完功能的时候没我们感觉好像项目完成了80%,殊不知后面的20%往往要花费80%的时间”。想起之前做的几次课设也都是这样,代码可以很早就敲个差不多,但是测试修改的时候反而会更头痛。但是书中提到的“测试人员”来担任产品负责人一说,却让我看得有点疑惑,测试是若出现了问题,那谁负责完善?优化?提升性能?感觉转来转去还是一个圈。
第四个问题:敏捷流程到底实质上是什么?
我有看到这一章自己提了个问题:敏捷很特别吗?这也是看完6.1-6.3后我的疑问,认为这里说的敏捷流程和其他方法流程有着相似的地方,所以不太能理解敏捷流程的特别之处。。。
第五个问题:P168的关于竞争性需求分析?
这里有介绍一个NABCD模型,分别是需求、做法、好处、竞争、推广。而P170的Competitors段落有一个“竞争产品分析图”,从图中可知无论哪家产品都有己方优势与劣势,而其中能满足用户真正需求的功能只达到用户所需的40%,那么我的疑惑是那未被满足的60%需求是为何被遗漏?是因为用户需求的多样化?个性化?还是说满足的40%需求是用户的统一需求?
- 由于时间原因,我只阅读将近《构建之法》的一半,以上五个问题是其中疑惑最深的。之后也会继续将书阅读完并更新自己的问题。
原文地址:https://www.cnblogs.com/abonxxxu/p/8589616.html