PVS-Studio ROI:如何不损失数百万美元(本文草稿版)

PVS-Studio投资回报率
有时我们会被问及使用PVS-Studio分析仪将给公司带来什么经济利益。 我决定在网站上实现投资回报率计算器,并发布其操作原理的详细说明。 但是首先,我决定将自己的想法和计算结果提交讨论。 我希望获得有趣且有用的评论,这将有助于使计算器尽可能可靠和令人信服。

我们为您提供计算器的说明,该计算器使您可以在开发过程中通过使用PVS-Studio静态代码分析器来计算投资回报率。

文章的新版本: RUEN

默认计算器处于怀疑模式。 但是,我们希望阅读该文章后,您将同意切换到该模式更为正确:我相信文章“ PVS-Studio ROI”中描述的计算:)。

程序员小时值


为了确定PVS-Studio将退还多少钱,首先您需要计算程序员工作时间的实际成本(价值)是多少。

事实是,仅仅拿程序员的月薪再除以160(每月平均小时数,每周工作40小时)还不够。

首先,程序员与任何其他领域的员工一样,带来的收入超过了获得报酬的收入,否则,企业的收益就会减少。 程序员需要有一个工作场所,为房地支付租金,为他们购买cookie,为他们提供Internet,等等。 哦,是的,还有奖金,公司聚会,各种奖金。

同时,使用程序员应该是有利可图的,也就是说,他必须直接或间接为公司带来净利润。 在实践中,这意味着程序员的工作,根据情况,所带来的收入是其薪水的2-10倍。 我再次强调,这里的程序员与其他员工没有什么不同。 外包具有某些功能,但这是另一回事。

对于持怀疑态度的读者,我们采用系数2。也就是说,程序员带来的收入是薪水的两倍。 实际上,具有这种比率的公司即将达到收支平衡。 更诚实地说,系数至少为3。

这一切是什么意思? 如果程序员在开发过程中退出了1个小时,那么该公司将不会收到等于其工作小时数的报酬,而是两倍或三倍的报酬。

还有一个因素会影响实际工作时间的价格。 事实是,员工根本不每天编程8个小时。 很难想象一个人,他早晨是如何来的以及他是如何坐下的,一直在使用代码8个小时而没有停下来。 程序员与Trello一起工作,参加会议,在邮件中答复,参加代码审查。 最后,他仍然需要去厕所喝茶:)。 在最佳情况下,它将直接与代码一起使用6个小时。 而且,如果您不以怀疑的态度阅读本文,那么您会了解到,实际上4个小时是一个更加可信的时间。

因此事实证明,一个小时的成本需要额外乘以8/6 = 1.33或2。

现在,我们将两个考虑的系数相乘,得出最终的系数,您需要用该系数乘以程序员工作时间的成本:

  • 怀疑论者的系数:2 * 1.33 = 2.66
  • 接近现实的系数:3 * 2 = 6

实际上,由于我们的计算中未考虑休假,因此系数会稍大。

现在,让我们来看看一家公司从工作流程中退出一个薪水为100,000卢布的程序员1小时意味着什么。

注意事项 为了理解,我们注意到实际上该公司在薪金支付上花费了100,000多卢布。 应当指出,公司向各种基金捐款(“工资税”)。 而在扣除13%的税款后,每个人将获得87,000卢布。 为了简化计算,我们将不考虑扣除额,并假设该公司仅花费了100,000。

以100,000卢布的薪水计算,一小时的工作效率为625卢布。 事实证明,如果程序员分心1小时来纠正错误,则由于以下原因,该公司将无法赚钱:

  • 怀疑者:625卢布/小时* 2.66 = 1660卢布/小时
  • 实际上超过:625卢布/小时* 6 = 3750卢布/小时

这是程序员忙于有用工作时一小时的实际价值(价值)。

PVS-Studio可节省多少小时


很难说通过在早期发现错误,PVS-Studio每年可以节省多少小时。 错误非常不同。 其中一些会立即被程序员注意到并立即得到纠正。 有时bug会使程序员分心几天

出于怀疑的经验原因,我们说分析仪每周将节省至少2个小时的程序员时间,而无需查找由单元测试或测试部门发现的错误。 是的,修复错误通常需要几分钟,但是尝试重现问题,在错误破解程序中进行通信,测试运行,合并等将很容易使这两个小时吃光。

考虑到分析仪有时可以防止硬复制海森袋的出现 ,因此很可能会指出3小时的平均值。

一年大约有52周。 在一年中,分析仪节省了以下真正的程序员工作时间:

  • 对静态分析的怀疑:2小时* 52 =节省104小时
  • 积极的态度:3小时* 52 =节省156小时

是时候计算投资回报率了


然后,一名程序员的薪水为100,000卢布的PVS-Studio使用将每年恢复营业:

  • 如果您是怀疑者:1,660卢布/小时* 104小时= 172,640卢布
  • 真的:3750卢布/小时* 156小时= 585,000卢布

现在,让我们来一个由10人组成的典型开发团队。 实施PVS-Studio之后,我们可以期望,由于节省了时间,因此该团队将能够执行有用的工作,而所需的成本为:

  • 怀疑论者:1,726,400卢布
  • 现实:585万卢布

最终配方


因此,现在让我们将所有内容组合到一个公式中,以供计算器使用。

用S表示程序员的月薪。

团队中的程序员人数用N表示。

  • 怀疑者的公式:N *(S / 160)* 2.66 * 104
  • 实数公式:N *(S / 160)* 6 * 156

现在,我们以表格计算的形式介绍其他规模的团队。 该表显示了公司的开发团队可以忙于创建新事物而不是编辑错误的预计收入。 这些数字应与许可费用进行比较。

第一行:团队中的程序员人数。 左栏:开发商的薪水。

怀疑者表:

表N1。怀疑论者。红色:使用PVS-Studio可能不合理。绿色:使用静态分析仪是合理且有用的。


表N1。 怀疑论者。 红色:使用PVS-Studio可能不合理。 绿色:使用静态分析仪是合理且有用的。 蓝色:使用显然是有益的。

实表:

表N2。现实性红色:使用PVS-Studio可能不合理。绿色:使用静态分析仪是合理且有用的。


表N2。 现实性 红色:使用PVS-Studio可能不合理。 绿色:使用静态分析仪是合理且有用的。 蓝色:使用显然是有益的。

我认为,第二张桌子是可靠的,在评估获得许可证的经济可行性方面,可以合理地指导她。

注意事项


当然,以上计算并不总是也并不总是相关的。 例如,如果项目的错误和漏洞的代价非常高,那么将PVS-Studio的价值与程序员的薪水联系起来是没有意义的。 在此类项目中,应该评估可能的金钱和声誉损失,并且在使用代码分析器时,应该已经与降低风险相关联。 这是一个单独的故事,从计算的角度来看,我还不知道该如何处理。

同样,计算对于外包公司可能不起作用。 这听起来可能不太好,但是这些公司对尽可能多的时间进行开发,测试和维护感兴趣。 从某种意义上说,使用分析仪只能减少他们的收入。 PVS-Studio客户之间没有外包公司这一事实间接证实了这一点。 此外,在这类公司中,乍一看有时会发生奇怪的过程。 在工作量少的时候,一家公司可以承担某种项目,甚至是无所适从。 这比让一些开发人员休假要好。 让他们在工作中变得更好并且忙于一些事情。

结论


因此,尽管计算可能并不适合所有公司,但我希望我能够从整个业务的角度演示如何对使用PVS-Studio的有效性进行评估。

Source: https://habr.com/ru/post/zh-CN431864/


All Articles