首页 > 编程语言 >程序员应该将质量要求视为需求

程序员应该将质量要求视为需求

时间:2023-08-27 09:33:39浏览次数:63  
标签:足够 一个 视为 用户 程序员 质量 软件

有一个老笑话就是这样的:一个美国公司向一个日本制造商订购了10万个集成电路。规格说明书规定缺陷率只能是一万分之一。几个星期后,订单完成了,货物交付了。除了一个大盒子的芯片,还有一个小盒子,里面装着十个带有标签的芯片,上面写着“这些是有问题的”。

要是我们能像那样控制质量就好了。但是现实世界不允许我们生产太多真正完美的产品,尤其是没有任何错误的软件。时间、技术和急躁都在与我们作对。

然而,不要过于灰心。正如Edward Yourdon在IEEE Software杂志上的一篇文章中所述,“足够好的软件是最好的软件”,你可以训练自己编写足够好的软件 - 对用户和未来的维护者来说足够好,只要它带给你内心的平静。你会发现自己变得更加高效,用户也会更加满意。而且,让你更加高兴的可能是,更短的开发周期实际上可以改善你的程序。

在进一步讨论之前,我们需要在我们即将讨论的内容上设定一些界限。“足够好”并不意味着匆忙或质量低劣的代码。所有系统必须满足用户的要求才能被认为是完整的,并且必须达到基本的性能、隐私和安全标准。从用户的角度来看,你正在做的是否足够好?最好给用户一个参与评估的机会。

在权衡中涉及用户。

通常情况下,你是为他人开发软件,你总是记得要识别他们的需求。但你是否经常问他们,他们希望软件有多好?实际上,很多时候没有选择。如果你的软件用于心脏起搏器、航天器或广泛使用的库,那么要求会更严格,你的选择会受到限制。

然而,如果你正在开发一个全新的产品,那么限制将会不同 - 市场已经做出了承诺,最终用户可能已经根据交付计划进行了规划,公司肯定会受到现金流的限制。不考虑用户需求,任意地将功能堆叠到程序中,一遍又一遍地打磨代码,这些都是不专业的行为。轻率当然是不可取的,比如承诺一个无法实现的时间表,然后为了满足截止日期而做出必要的妥协 - 这也是不专业的。

对于你创造的系统,其应用领域和要达到的质量水平必须作为系统需求的一部分进行讨论。

(程序员的软技能:ke.qq.com/course/6034346)

将质量要求视为需求。

人们常常面临需要权衡的情况。令人惊讶的是,很多用户宁愿今天使用一个不太完善的软件,而不愿再等一年,等到一个经过打磨、功能完整的版本(而实际上,一年后他们真正需要的可能完全不同)。许多预算受限的IT部门可能会同意这种观点。与你心中明天的完美软件相比,今天相当不错的软件通常更受欢迎。如果你让用户提前尝试一下,他们的反馈经常会引导你找到更好的最终解决方案。

知道何时停止。

在某种程度上,编程就像绘画。你从一块空白的画布开始,只有一些非常基本的材料。你将科学、艺术和工艺融合在一起,决定如何处理这些材料。你勾画出一个大致的形状,填充底色,然后添加细节。你不断以批判的眼光审查你完成的工作。你可能偶尔会放弃一个画布,重新开始。

但艺术家会告诉你,如果你不知道何时停下,你所有的努力都会白费。如果你不断地堆积细节,绘画就会在颜料中迷失。

不要让过度的完善侵蚀一个运行良好的程序。继续前进,让代码在需要的地方停留一段时间。它可能不是完美的,没关系 - 它不必永远完美。

(程序员的软技能:ke.qq.com/course/6034346)

 

标签:足够,一个,视为,用户,程序员,质量,软件
From: https://www.cnblogs.com/iphone100s/p/17659876.html

相关文章

  • Python中会被视为False的值有以下几种
    Python中会被视为False的值有以下几种:布尔值:False数值:0或0.0字符串:空字符串,如’'或""容器:空的容器,如[],(),{},set()None:None其他的值都会被视为True。您可以用bool()函数来测试一个值是否为True或False。例如:bool(0)#Falsebool(1)#Truebool('')#Falsebool('Hello'......
  • C# GDI+保存图片设置图片质量_C#保存Jpeg图片质量
    一、C#GDI+ Image对象保存图片质量Imagebmp=Bitmap.FromFile("3.png");//默认保存质量预估80%bmp.Save("default3.jpg",ImageFormat.Jpeg);//保存质量ImageCodecInfomyImageCodecInfo=GetEncoderInfo("image/jpeg");System.Drawing.Imaging.Encoder......
  • 项目工程云平台源码 智慧工地管理 劳务管理、质量安全数据预警、施工现场视频实时监控
    5G智慧工地管理项目工程云平台源码通过运用物联网、大数据、云计算、BIM、5G等技术,搭建由劳务管理、质量安全数据预警、施工现场视频实时监控、重大危险源和绿色文明施工监控等板块构成的模块化、一站式的信息化管理平台。平台可实现施工现场数据采集、数据综合统计及分析、手机A......
  • 程序员要学会“不做温水里的青蛙”
    三名从战场归来的士兵饥肠辘辘。看到前方的一个村庄,他们精神焕发-期望村民能给他们一些食物。然而,一到村庄,他们发现所有的门窗都紧闭着。经过多年的战争,村民们的食物短缺,剩下的存货都藏起来了。士兵们并没有放弃,他们将一锅水装满,小心地放入了三块石头。好奇的村民们纷纷走出来......
  • 质量管理 | QC、QA、QM,去QA化与降本增效
    现在国内职业的质量管理都是从CMMI和ISO质量体系演化过来的,但是能做真正的质量管理的公司很少。质量管理的QC偏测试,对最终的产品负责;QA偏过程,从过程把控质量;QM偏体系,类似于全面质量管理,建立质量文化。硬件公司更关注质量质量是一组固有特性满足要求的程度。质量就是符合......
  • Chat Emy会让程序员失业吗?
    ChatEmy具备强大的自动编码能力,可以理解、解析和生成大量的自然语言。传统上,人们需要花费大量的时间和精力来编写和调试代码,但ChatEmy可以通过学习海量数据,自动完成这些复杂的任务,从而减少了程序员的工作量。这让一些人担心,程序员在代码编写方面的需求可能会减少。一些人担心这一......
  • 教你写出高质量函数,简单又实用
    在编写函数时,程序员通常需要遵循以下步骤进行:1、确定最佳的设计逻辑是编写函数时应该考虑的重要因素。这些因素包括设计合理的数据结构、算法和逻辑封装,并且还要考虑到用户的安全因素。挑战在于确保所设计的方案既满足客户需求,又能得到客户的认可,并且要在项目的时间范围内完成。2......
  • 2023金九银十Android程序员面试题参考指南!
    前言还有不到一个礼拜就是金九银十招聘高峰期了,在这里分享一份《Android面试题汇总》这些面试题都是互联网大厂真实流出的面试内容,每个问题都附带完整详细的答案,不像网上的那些资料三教九流有的甚至还没答案,这些面试题都是我也是整理出来的精品资料。希望能给那些有需要朋友在求职......
  • 程序员应该时刻提醒自己,“不要打破窗户”
    尽管软件开发并不受大多数物理定律的限制,但我们无法逃避不断增加的熵的影响。熵是物理学中的一个术语,定义了一个系统的“无序程度”。不幸的是,热力学定律规定,宇宙中的熵趋向于最大化。随着软件中的无序程度增加,程序员可能会说“软件正在衰变”。有些人可能使用更乐观的术语,比如“......
  • 程序员应该学会“提供更多选择,找少点借口”
    在你的职业发展、学习、教育、项目和日常工作中,你对自己和自己的行为负责。这是务实哲学的基石之一。务实的程序员充分掌握自己的职业,从不害怕承认无知和错误。编程中可能会出现一些不愉快的事情,但它们是不可避免的-即使是最好的项目也不例外。尽管经过了彻底的测试、优秀的文档......