首页 > 其他分享 >《构建之法》读书笔记——什么是好的软件

《构建之法》读书笔记——什么是好的软件

时间:2024-02-28 19:44:35浏览次数:19  
标签:读书笔记 完美 用户 构建 质量 软件 20% Bug

“什么是好的软件?一些同学认为,所谓好软件,就是软件没有缺陷(Bug),所谓软件工程,就是把软件中的Bug都消灭掉的过程。这的确是抓住了软件工程的一个要素。和软件打交道的专业人士都知道软件有“Bug”(缺陷),软件团队的很多人都整天和Bug打交道,Bug的多少可以直接衡量一个软件的开发效率、用户满意度、可靠性和可维护性。 ——P15 很多人认为有Bug就是质量不合格,没有Bug就是质量完美,其实这也未必。我们在大街上看到很多小汽车,这些汽车出厂时都通过了各自的质量检测,符合行业的质量标准。但是你问路人哪些车的“质量好”,很多人会告诉你有些车的质量大大好于另外一些车,那为什么还有人买那些质量“不够好”的汽车呢?对于某些顾客来说,某一类的汽车满足了他们的需求,他们就会买。如果销售人员不经市场调研胡乱推销自己公司的汽车,最后销量未必理想。 市面上有这么多不完美的产品,软件团队为什么还要把这些不完美的软件发布出来呢?为什么不能等到它们完美之后再发布?**软件工程的一个重要任务,就是要决定一个软件在什么时候能“足够好”,可以发布”

从书本中大概能了解到一个好软件,就是Bug尽可能的少。而书中定义的Bug即软件的行为和用户的期望值不一样。那么如果一个功能对于一部分用户来讲是十分好用的,而有一部分的用户认为这是不合乎自己的期望值的功能,那么此时这算不算是Bug,工程师需不需要解决优化这个Bug。在一个被认定为“足够好”的软件发布后,得到的用户反馈中,哪些是有用的?什么时候才能将这个软件优化到相对稳定的版本?

不同的人对不同的事物有不同的看法,那么倘若这个软件已经被80%的用户认为已经很完美了,那剩下20%所提的建议还是否需要采纳,按照反馈来修复这20%所认为的Bug呢?我个人认为,Bug是相对的,只有软件的行为和大多数用户的期望值不一样才叫做Bug。

倘若一个软件能让80%的用户喜爱上那便是成功的好软件。但是如果那20%的用户提出的一些更加细致化功能化的模块时,程序员是否应该当做Bug来完善,这样会不会导致整个程序为了小部分的精致要求变得越来越复杂,到最后由小认知阻力的软件成长为一个大认知阻力的软件呢?

标签:读书笔记,完美,用户,构建,质量,软件,20%,Bug
From: https://www.cnblogs.com/pinganxile/p/18041586

相关文章

  • 《大道至简》读书笔记第四章
    《大道至简》第四章着重强调简约之道。通过阅读这一章,我深刻体会到在软件工程实践中,简约是一种重要的美德,同时也是一种高效的工作方式。作者指出,软件工程实践者应当追求简单和直接的解决方案,避免过度复杂和繁琐的设计。简约的设计不仅能够提高代码的可读性和可维护性,还能够减少错......
  • 《大道至简》第六章读书笔记
    《大道至简》第六章深入探讨了软件工程实践者在追求简洁和高效的同时,如何保持和提升自身技术能力的思想。通过阅读这一章,我进一步认识到在软件工程领域,持续学习和技术提升是非常重要的。作者指出,软件工程实践者应当保持对新技术和新工具的持续学习和掌握,不断提升自己的技术能力和......
  • 《大道至简》第五章读书笔记
    《大道至简》第五章探讨了软件工程实践者在面对挑战和困难时如何应对的思想。通过阅读这一章,我深刻领悟到在软件开发过程中,坚持不懈、勇敢面对问题、勇于创新是取得成功的重要因素。作者强调了在面对困难和挑战时,软件工程师要保持乐观积极的态度,勇于面对问题并积极寻找解决方案。......
  • 软件性能测试工具RunnerGo安装步骤
    现在安装RunnerGo仅需要一条命令!目前支持系统:Centos、Debian、Ubuntu三种。下面给大家介绍一下RunnerGo安装使用流程:Step1:复制以下命令wget https://img.cdn.apipost.cn/running_go/img/wiki/runnergo.tar&&tarxf runnergo.tar  &&bashinstall.shStep2:选择安装系统......
  • 软件构架之阅读笔记
    架构漫谈读后感软件架构是指软件系统的整体结构或组织方式,它决定了系统中各个组件之间的关系、功能划分和交互方式。一个良好的软件架构能够提高软件系统的可维护性、可扩展性、可靠性和安全性,对于软件开发过程至关重要。在软件开发过程中,软件架构起着至关重要的作用。一个优......
  • IT发布管理,轻松部署软件
    我们带来了一项令人振奋的好消息,可有效缓解构建的质量相对劣质和发布的速度相对缓慢。ManageEngine卓豪推出了ServiceDeskPlusMSP中的IT发布管理,配备了可视化的工作流程,这是PSA-ITSM解决方案的一部分。有了这个新功能,您可以告别混乱,迎接精简和标准化的发布管理流程。 IT发......
  • 一月二十日 构建之法阅读笔记一
      今天我的《构建之法》之法到了,期待了几天的书籍终于到了。上学期建民老师的推荐的书籍《大道至简》,阅读之后,收获颇多。满怀期待,打开了这本书。  软件=程序+软件工程给出了软件的解释目前我所学的只能称之为程序,达不到软件要求。  书中的案例正是建民老师在上学期......
  • SpringCloud系列之(四)微服务架构编码构建
    微服务架构编码构建一、IDEA新建project工作空间1.微服务cloud整体聚合父工程Project【父工程Project空间新建】NewProject聚合总工程名字Maven选版本字符编码注解生效激活java编译版本选8FileType过滤【选做】删除src目录2.父工程POM文......
  • ASP.NET Core MVC应用模型的构建[3]: Controller的收集
    从编程的角度来看,一个MVC应用是由一系列Controller类型构建而成的,所以对于一个代表应用模型的ApplicationModel对象来说,它的核心就是Controllers属性返回的一组ControllerModel对象,每个ControllerModel对象是应用模型针对Controller类型的描述。一、ControllerModel二、实例演示......
  • [软件工程] CMMI是什么?
    序能力成熟度模型集成(CMMI)一、CMMI(能力成熟度模型集成)概述CMMI是由美国软件工程学会(softwareengineeringinstitue,简称SEI)制定的一套专门针对软件产品的质量管理和质量保证标准.CMMI的全称为:CapabilityMaturityModelIntegration,即能力成熟度模型集成。CMMI开......