热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

grpc错误应该是什么错误_您应该如何估计错误?

grpc错误应该是什么错误全世界的团队为此花费了无数的时间进行辩论。但是真的,你应该吗?没有人可以为您回答这个问题,但是无论如何ÿ

grpc错误应该是什么错误

全世界的团队为此花费了无数的时间进行辩论。 但是真的,你应该吗?

没有人可以为您回答这个问题,但是无论如何,让我们提出问题并准备一些有争议的评论。 那么,我们首先有哪些估算选项?

专门的错误修复时间

有些团队没有预先估计错误,而是仅在每个冲刺/天/周/月为每个月留出一些时间来修复错误。 这并不意味着他们从不估计错误。 如果在初步调查后发现它是一个更大的解决方案,或者需要更改产品的性能,他们仍然会对其进行估算,但是最有可能将其几乎像一个功能一样对待,如果需要,可以通过规范,设计,开发,测试,发布的完整过程。

默认估算

进行错误评估的另一种方法是对每个错误使用一些占位符,例如0.5–1天。 这个想法实际上来自Scrum的创始人之一Jeff Sutherland。 这些占位符可能非常精确,因为大多数错误都不需要花费一天多的时间来解决-Steve McConnell在他的书(现在相当老)中,Code Complete提到85%的错误需要不到几个小时的时间来解决。

我们还看到某些团队将其发挥到极致并以这种方式对待所有门票。 其背后的原因是,在足够长的一段时间内,不仅事情平均了,而且人们学会了更好地合作,并且所创建的票证大致相同。

无论您是否也想仅针对错误或功能使用此技术,都可以从0.5天的占位符开始,并随着获得更多有关开发人员解决问题实际需要多长时间的数据而对其进行调整。 回顾是保持追踪的好方法。

如果您想更进一步,并获得更详尽的估计,则可以按类型划分错误,例如,编码错误,设计错误,数据库,业务逻辑,状态机等。这样,您就可以在每个位置使用不同的占位符分别键入和迭代它们。

您拥有的数据越多,获得的估计就越好,这将我们带入下一个方法。

用历史数据估算

如果您有足够的数据,可以通过估算来完成一些很酷的事情-比按类型拆分问题和分配单个占位符的粒度要大得多,就像我们在前面的示例中看到的那样。 您可以创建一个更上下文相关的系统,该系统将使用问题跟踪器(Jira,Trello等)中的历史数据来预测使用机器学习,自然语言处理和其他方法进行某种修复所需的时间。

实际上,早在2007年就进行了一组研究。 他们想出了一个系统,可以自动预测修复工作。 在有足够数量的问题报告的情况下,他们对错误的自动预测仅用了一个小时,就比人工预测高出四倍。 您可以在此处了解更多信息。

没有估计

我们将要谈到的最后一个思想流派认为,既然您无法找到问题的根源就无法估计修复错误所需的时间,并且大部分时间都花在了解决这个问题上,估计是没有意义的。

那么您应该估计错误吗?

不幸的是,这里没有“千篇一律”的解决方案,这不会阻止我们试图回答这个问题。

在决定是否估计错误以及是否估计错误,使用哪种方法方面,有许多因素会影响您的决定。 举个例子:一家银行的处理方式与社交网络不同,一个公司或国家/地区的文化和动机可能影响决策,甚至利益相关者也很重要。如果您有一个项目经理,如果没有估计就无法生存,那可能是有道理的只是与之并驾齐驱,并拥有良好的团队氛围,而不是不断地为估算而战。

对您是否应该估计错误的最大影响是团队和公司的规模,因为这两个因素会影响很多其他因素,因此让我们看一下几个不同的设置以及您可能想要做的事情在每种情况下。

独奏创始人

您正在构建小型产品或仅是个人项目。 彼此之间没有依赖关系,精确的计划并不是真正必要的,因为您知道进度可以快得多,下一步需要做什么。

解决方案 :您可能没有对功能进行形式上的估计,因此也无需估计错误。 只需专注于输出并在那里获得代码!

小公司

您有一个5-10人的开发团队,而没有其他工程团队依赖它。 您正在计划冲刺和跟踪速度,以大致了解您的进度如何。 有些错误是由内部人员捕获的,而有些则是由用户报告的。

解决方案 :为了更好地计划Sprint的容量,您应该对错误进行半天的默认估计(除非您拥有有关特定缺陷的更多信息并且可以更准确地估计),而且-不要计划100%的容量对于sprint,请留一些缓冲-这将使您能够:a)准备一些错误修复所需的时间更长,更重要的是b)随时准备快速修复重要的不可预见的bug,而又不牺牲sprint目标。

之前,我们已经构建了一些早期产品,随着时间的流逝,我们开始进行此设置。 当产品是新产品时,您没有太多的历史数据可作为决策依据,也没有真正合适的质量保证团队,因此您需要保持敏捷并准备好应对眼前的需求,同时仍然保持指导和沟通您对其他团队的目标和进度(销售,市场营销等)。 此设置还有助于建立良好的客户关系,因为当您能够在报告后立即解决问题时,总是会给用户留下深刻的印象。

当然,您在产品上工作的时间越长,您估计的能力就越好。 特别是如果您按类型(即后端,前端等)划分错误,那么默认估计值将不断提高。

大公司

您有几个开发团队,至少其中一些相互依赖。 您拥有手动的质量检查和质量检查工程师,但是直接与用户交谈的能力非常有限。 存在许多利益相关者和多层管理,您需要与他们沟通目标,因此,您确实需要确保兑现承诺。 通常,您更关心软件的可靠性和开发输出的可预测性,而不是速度和敏捷性。

解决方案 :估计所有可能的错误。 至少从有根据的猜测开始,但尝试使用历史数据进行更好的预测。 在大型组织中,建立这种预测模型的工作不会白费力气—其他团队将使用它,如果运行良好,它将节省计划会议的时间,但也可以使速度更加可预测,您的管理层将不胜感激。

总结一下

-在许多情况下,至少一名工程师确切地知道错误的根源以及确切的修复方法。 没有理由不进行估算。 另一方面,某些错误是完全模糊且不可预测的。 假装我们知道这些修复需要多长时间是不明智的。 在这种情况下,请使用默认估算,或者完全不估算。

-错误的评估在许多情况下要比没有评估要好,尤其是因为在很长的一段时间内,评估的平均值可能非常接近修复错误的平均时间。 不要害怕错了,只需要确保团队中的每个人都明白估计不是最后期限。 它适用于功能,但更适用于错误。

-有时高估有时低估是可以的,但如果始终低估,则应该进行一些调整。

-不幸的是没有银弹。 上面描述的内容对我们来说只是一个不错的设置,但是每个团队都需要找到一种在特定情况下最有效的方法。 不过,它不一定是上述解决方案之一。 您永远不应遵守给定框架的所有规则-最好找到最适合您的技术组合,甚至提出完全不同的技术,这总是更好的选择。

翻译自: https://hackernoon.com/should-you-estimate-bugs-4ocf37t2

grpc错误应该是什么错误



推荐阅读
  • 给大家分享一个最新的20182019校招春招秋招算法机器学习(MachineLearning)深度学习(DeepLearning)自然语言处理(NLP)CC++Python面试笔记 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 本文介绍了在Python张量流中使用make_merged_spec()方法合并设备规格对象的方法和语法,以及参数和返回值的说明,并提供了一个示例代码。 ... [详细]
  • GPT-3发布,动动手指就能自动生成代码的神器来了!
    近日,OpenAI发布了最新的NLP模型GPT-3,该模型在GitHub趋势榜上名列前茅。GPT-3使用的数据集容量达到45TB,参数个数高达1750亿,训练好的模型需要700G的硬盘空间来存储。一位开发者根据GPT-3模型上线了一个名为debuid的网站,用户只需用英语描述需求,前端代码就能自动生成。这个神奇的功能让许多程序员感到惊讶。去年,OpenAI在与世界冠军OG战队的表演赛中展示了他们的强化学习模型,在限定条件下以2:0完胜人类冠军。 ... [详细]
  • 本文介绍了贝叶斯垃圾邮件分类的机器学习代码,代码来源于https://www.cnblogs.com/huangyc/p/10327209.html,并对代码进行了简介。朴素贝叶斯分类器训练函数包括求p(Ci)和基于词汇表的p(w|Ci)。 ... [详细]
  • 【论文】ICLR 2020 九篇满分论文!!!
    点击上方,选择星标或置顶,每天给你送干货!阅读大概需要11分钟跟随小博主,每天进步一丢丢来自:深度学习技术前沿 ... [详细]
  • 推荐 :以数据驱动的方式讲故事
    直觉vs数据首先,你有思考过一个问题吗?当你的直觉与你所掌握的数据矛盾的时候,你是听从于直觉还是相信你所掌握的数据呢?201 ... [详细]
  • 「爆干7天7夜」入门AI人工智能学习路线一条龙,真的不能再透彻了
    前言应广大粉丝要求,今天迪迦来和大家讲解一下如何去入门人工智能,也算是迪迦对自己学习人工智能这么多年的一个总结吧,本条学习路线并不会那么 ... [详细]
  • 开发笔记:DevOps Gitlab环境部署
    本文由编程笔记#小编为大家整理,主要介绍了DevOpsGitlab环境部署相关的知识,希望对你有一定的参考价值。DevOps介绍 ... [详细]
  • mongoDB介绍、安装、搭建简单的mongoDB服务器(一)
    相关网站1. http:www.mongodb.org 官网,可以下载安装程序,和doc,和驱动等。2. http:www.mongoing.com 国内官方网站,博客,问 ... [详细]
  • 将单条消息的大小设置为大于服务端可以接受的消息大小,模拟发送异常的场景:消息大小1500message.max.bytes1000batch.size16384日志一直刷:[201 ... [详细]
author-avatar
诚实的坏男2502892343
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有