《构建之法》问题与思考

阅读笔记

我在阅读书籍的时候,大部分都是浏览,也许是跟我看的书籍的内容有关系吧,但是,在浏览过《构建之法》这本书后,我精读了它,以下是我在阅读完1,2,16章后有的想法和问题,希望和大家一起分享和讨论。质疑和不断探索会帮助大家进步。



第一章        概论

引用

软件团队要从需求分析(Requirement Analysis)开始,把合适的需求梳理出来,然后逐步开展后续工作,如设计(软件架构)、实现(写数据结构和算法)、测试,到最后发布软件

                                                                                                         ——P3

问题一:需求易变,可否将需求分割成为细密的任务点?

好的软件,一定会有很好的用户体验,不同的用户对软件的功能和界面有不同的需求,而在开发过程中,有时会出现需求变化的情况,有些变化甚至可以将整个项目推倒重来。这样,我们在对需求的实现过程中,任务点分配或许可以帮助软件提高其本身的可维护性,对于软件的后续发展也有些许进益。

引用

       什么是Bug呢?简单的说,软件的行为和用户的期望值不一样,就叫Bug,是否是Bug,取决于用户、开发者的不同角度。

                                                                                                         ——P16

问题二:当用户的期望值和软件的优化方向起冲突时,应当如何抉择?

业务方面与用户方面之间产生了冲突,如果我们将业务层面的需求简单考虑之后,我们再进行对用户方面的思考,这个时候,我们所面对的一些用户需求,有时候很容易和业务目标之间有会冲突,当我们围绕用户期望为中心去设计时,业务目标往往不能很好的达成,而实际上,正确的思维方式应该是,以业务目标为基准去推导用户的行为,当这个行为和用户目标相违背时,我们应该想办法把用户不喜欢做的事转化为和用户使用动机相关的事情,引导他完成。

根据我所查阅的资料显示:

从开发者的角度,解决方案围绕四个点进行:

1、          寻找业务和目标的关联

2、          确定相对平衡的方向

3、          提供多个设计方案

4、          最终方案呈现



第二章        个人技术和流程

引用

       单元测试必须由最熟悉代码的人(程序的作者)来写。代码的作者最了解代码的目的、特点和实现的局限性。所以,写单元测试没有比作者更适合的人选了

                                                                                                  ——P25

问题一:单元测试一定要作者自己写吗?

查阅了部分资料后,发现了开发人员和测试人员都可以写单元测试;对于一些测试人员供给不足的小公司,要求开发人员写单元测试,而对于一些大公司,常常设置有测试部门进行。开发人员对代码最熟悉,而且开发技能也强,开发自己写单元测试效率上和覆盖率上都比较高。而且单元测试有时候需要开发对代码进行部分重构才方便进行,开发自己做这些重构也比较顺手。但是开发人员可能会因为业务代码的繁重而顾不及单元测试的书写,如果只是写单测对软件的进益帮助不大。测试人员写测试有比较好的测试思想,可以更好地保证用例的覆盖。而且通过写单测测试能更好地了解具体代码结构、流程,对于后续的业务测试也有利。但是测试人员对代码没有开发人员熟悉。

具体怎么选择就是个问题。



第十六章 IT行业的创新

引用

       迷思之一:灵光一闪现,伟大的创新就紧随其后

       迷思之二:大家都喜欢创新

       迷思之三:好的想法会赢

迷思之四:创新者都是一马当先

迷思之五:要成为领域的专家,才能创新

迷思之六:技术的创新是关键

迷思之七:成功的团队更能创新

迷思之八:创新者都是冒险家

                                                                                    ——P340-P354

问题一:IT业创新究竟需要什么?

对于软件开发人员来说,创新是非常重要的。在这个需要创新的时代,无论什么行业都需要创新。但是在如今的时代,进行前无古人的创造难度很大,在某些情况下我们需要在前人的基础上进行一定的创新。

有时候,创新并不是能被所有人接受的,每个新事物的出现都需要一定的时间才能被人们接受。如果我们有好的想法,就要搞清楚我们能从这个想法中得到什么,现在自己具备的条件,以及与这个时代是否兼容。否则好的想法也不能付之实践。

创新者通常都会很成功,但是这些人一般不会是先行者。在IT行业中,系统项目或者其他软件是经过不断的创新开发才得以完善。大部分人会觉得自己不是这一领域的专家人才,而不愿意去尝试,但是蒂姆-伯纳斯李就实现了,他是物理学家,实现了HTTP协议通信。

创新并不是必须要一个非常优秀的团队才能完成的事情,如果一个软件开发团队有技术,有耐心,有团结心,有尝试的勇气,未来有无数种可能性,创新也有无限种来源,他们也可以成功。

原文地址:https://www.cnblogs.com/softwarewly/p/8584550.html

时间: 2024-08-03 06:34:49

《构建之法》问题与思考的相关文章

基于《现代软件工程构建之法》的思考与疑惑

首先,在我读的内容的看法里,书中更多的设想了大量的场景“学”和“习”,并且用了大量的类比,非常生动有趣.相比其他的学科书,更加容易理解和阅读. 其次,这本教材也对软件工程课老师提出了更高的要求,因为在老师需要教给学生的不仅仅是代码. 最后,我对这本书也存在着疑惑与思考. 例如,在书本第一章30页中,关于;"虫子和肉芽的故事",就我的理解来说,这是客户需求与软件制造者之间需求与提供不一致的故事.软件工程师提供给客户的是肉芽,而客户认为是“恶心的虫子”,有时候,我们会认为是好的东西,可能客

读构建之法引发的思考

1,ios开发用的是一种单一的编程语言还是可以几种语言混合的?2,像我们这种小白团队,更适合10种团队模式中的哪种?3,开发市场空白的新项目时,如何做好需求分析?4,感觉自己活了二十年也没有想出来过什么能改变世界风靡全球经久不衰的好主意,不是实现,就连主意都没想出来过,一些明知会有些吸引力但只会短暂存在的东西,有必要实现吗?怎么能拓展思维,提高创新,迸发灵感的火花呢?5,智能手机的出现给人们生活带来便利的同时也带来了不可忽略的负面影响,一味追求智能化信息化简便化懒人化,总想实现自己的个人价值,有

读《构建之法》的思考

第一章:1.2节——这里说道软件工程的定义,包含很多形式,其中有操作系统,但我们国家这么久都还没有自主研发出商用的更好用的操作系统,是不是因为我们国家还有一些特殊的开发软件的技术没有,被别的国家垄断呢? 第二章:2.1 单元测试是什么?每个模块的测试吗? 第三章:3.1一个软件工程开发人员技术不太熟练,开发的能力不太强能在一个比较优秀的团队立足起到重要的作用吗? 第四章:4.5这章讲到两人合作,我现在想做一个项目的话也是两个人做还是找多几个人组建个团队做? 第五章:如果我领头开发一个全新的项目,

读着读着《构建之法》(Build To Win) 越精神的白雪儿的思考

哲学家的宗旨是:我思,故我在 科学家的宗旨是:我发现,故我在 工程师的宗旨是:我构建,故我在 ——<工程学--无尽的前沿> 序言:珍惜角色“人”,注重实践“物” <构建之法>,精读三曲,感触良多. 曲一,语言诙谐幽默,思维独具匠心:曲二,提问勾画,思考获益:曲三,豁然开朗,又困惑不解.软件工程与“人”有不解之缘,“人”用百花齐放的实践构建软件工程.三曲之后,知识概念,不必硬背,只需循序渐进,逐步实践体验,但不得不提出如下五惑. 核心:提出困惑点,分享你我他 第 0 章  目录: 1

读《构建之法》有感

构建之法,超越软件,不至于代码: 由于一直没有拿到书,又看不惯电子书,所以就一直没写阅读笔记,在对自己略感失望之余,我沉心静气地做出计划,安排时间,意外的是3天时间就读完了,略感欣喜之余,也越发深刻的感受到「阅读和思考」的重要性. 这本书有别于传统理论教材晦涩难懂,阅读性差的特点,通过一种活泼生动,别开生面的方式将「软件工程」这门学科讲得系统全面,令人印象深刻.因为是专业的学科类书籍,所以其中技术方面的知识的重要性不言自明. 开篇提到的现实世界中软件工程师的职业发展与教科书上经典的瀑布模型刚好相

一、构建之法读后感

这学期的软件测试课程多加了<构建之法>这本书,这学期利用自己的课余时间学了这本书,感觉受益匪浅. 对于这本书可以简单地有两个词语来概括:"专业"."接地气". 这本书的开头就是给我解释什么事软件.什么是软件工程.上大学将近三年,说实话还没有一次真正的去了解过什么是软件,什么是软件工程,说来还是有些惭愧的. 首先,这是一本全景式图书,会让你更了解这个行业,能让毕业生在对行业从陌生到熟悉的过程中,较少地感到惊讶和出乎意料,这是一本与现实接轨的教材. 其次,这

构建之法读后感2

1.专业 2.但是不迂腐,很接地气 3.但是不屌丝,很有情怀 由此可见,<构建之法>是一本当代软件工程大学教育急需的好书. 本人在大学上的软件工程课用的也是较老的课本,讲的是瀑布式的环节,带着对这门课残留的记忆参加实习的时候,最大的不适应就是对需求变化的反感,当时还不知道"迭代"这个词,只觉得做事情是要"谋定后动"的,"庙算多者胜",怎么能大概了解下需求就开始动手呢?"需求分析"难道不该做的认真.准确.达到一劳永逸

构建之法读书笔记之五

今天我学习了构建之法的第五章——典型用户与典型场景.我们都知道,软件开发最终都是服务于用户,所以用户主导着我们的开发方向.软件开发离不开用户,所以能够搞清楚用户隐藏的要求也是软件开发过程中的的一个重要的课题,这就涉及到了典型用户. 典型用户,顾名思义,能够代表大部分用户的用户.很多时候,不考虑典型用户的话,软件的开发不可能把所有的方面都做的尽善尽美,开发人员不可能把所有的方面都能考虑到.这时候,典型用户就站了出来.但同时,典型用户也有两面性——受欢迎的与不受欢迎的.那些能够按照开发者期望进行操作

&lt;构建之法&gt;心得体会

拿到<构建之法>这本书时,就觉得书名很高大上,果不其然,当我开始读这本书的时候,就停不下来,邹老师把软件开发方法讲得清晰有条理,用有趣的第三人称方式把现在软件工程写得很有趣而且实用,冷硬的知识都活化了.邹老师要求学生完成大量的代码,让学生的亲身经验证实软件工程的手段是必要和有效的.这本书让我软件开发有了新的认识,让我燃起了更大的兴趣与热情.让我印象较深的是代码规范这块,以前我写代码总是很随意,认为自己看得懂就行了,书中写到代码设计规范不光是程序书写的格式问题,而且牵涉到程序设计.模块之间的关系