写点什么

结对编程的经济价值论

  • 2009-06-25
  • 本文字数:1088 字

    阅读完需:约 4 分钟

“究竟为什么我们要使用两个人来同时做同一件事情呢?”这往往是初次听说

结对编程的人的第一反应。实际上,他们觉得结对编程使写代码的成本翻了一倍。Dave Nicollete 用数字说话,告诉大家结对编程是如何省钱,而不是浪费钱的。

由于错误地认为编程主要就是打字,结对编程的经济价值论也就经常被误解。事实上,当然,大部分的编程其实就是在思考,结果往往会做出很多糟糕的决定,或者犯下很多的错误——这些错误最终还得由开发人员(以及他们的公司)买单。

这就是结对编程价值论建立的基础,也是它为什么难以量化的原因。 Dave Nicolette 在他最近的一篇文章中是这么概述的:

结对的价值主要体现在手把手纠正,从而把错误扼杀在萌芽中。手把手纠正涉及面小,而且能跟结对编程的工作流程无缝结合起来,通常 甚至都感觉不到,很自然…带来的价值就是能够很方便地进行检查,从而防止在未来某个时间不得不返工的情况出现…要想观测或者量化实施后的效果并不 简单,因为坏的结果从来没有发生过,你也就没法比较了。

所以,结对的价值体现在节约了未来的

时间,“时间就是金钱”。但是

值多少钱呢?还是在这篇文章中,Dave 试着向大家阐述了几个观点来回答这个问题。

在最近的一次结对中,Dave 一直记录着结对伙伴指出搭档错误以及关于设计方面的讨论的时间。然后,他们给出这些事情为将来省下了多少时间,再利用这些信息继续做进一步的计算:

在 Alistair Corkburn 的早期著作中,他曾经计算过一个 IT 工作者的成本要每分钟 2.1 美元…在我们的结对过程中,我们进行了 2 次简短的关于设计的讨论,随 之做出了小的重构。根据我们的计算,这次重构为未来的维护工作节省出了 4 小时。这就意味着大约 2.1 x 120 = 252.00 美元。如果我们共发现了 12 个小错误,平均每个错误节约了 30 秒的调试时间,那么这就值.5 x 2.1 x 12 = 12.60 美元。总共的话,我们为公司每 90 分钟省下了 276.60 美元,或者说一小时省下大概 180.00 美元。

某公司有个小 规模的 IT 部门,总共 40 个开发人员,分散在几个 XP 团队。我们假设开发人员每天结对 5 个小时,那么一共每周结对时间为 20 对 x 5 小时 x 一周 5 天 = 500 小时。假设每个结对每小时节省 180 美金,那么平均每周节约 90000 美元。如果全年都把节约率控制在这个水平线上下,那么团队一年工作 50 周(这 是美国,假期不长),公司就会因为开发团队的结对编程,一年节省 450 万美元。

450 万美金呢,对一个只有 40 个开发人员的公司呀。但 Dave 也不得不承认,这只是从一次结对编程中获取的初步计算,所以并没有科学性,但这仍然可以引发大家的思考。

你怎么看呢?

查看英文原文: A Dollar Value On Pair Programming

2009-06-25 07:013057
用户头像

发布了 114 篇内容, 共 33.6 次阅读, 收获喜欢 2 次。

关注

评论

发布
暂无评论
发现更多内容

火山引擎ByteHouse:如何提升18000节点的ClickHouse可用性?

字节跳动数据平台

数据库 大数据 数据仓库 云原生 企业号9月PK榜

Mac平台PDF编辑和阅读工具 PDF Expert 3

展初云

PDF Mac软件 PDF Expert for Mac

Redis性能优化:理解与使用Redis Pipeline

Java随想录

Java redis

专业好用的照片处理和编辑软件 DxO PhotoLab 7 for mac

展初云

Mac软件 DxO PhotoLab 7 raw智能照片处理工具

钱包发展的未来:ERC-20代币的趋势和创新

区块链软件开发推广运营

交易所开发 dapp开发 区块链开发 链游开发 NFT开发

蓝易云:linux系统切换IP实现HTTP代理教程。

百度搜索:蓝易云

云计算 Linux IP HTTP 云服务器

非一般中国“千年霓裳 遇见运河”通州大运河畔再现传统文化盛景

联营汇聚

简单的解压缩软件 Bandizip Archiver激活中文最新版

胖墩儿不胖y

Mac软件 解压缩工具 压缩软件

DxO PhotoLab 7 for mac(专业raw图像处理软件) 7.0.1.31永久激活版

mac

图像处理软件 苹果mac Windows软件 DxO PhotoLab 7

文心一言 VS 讯飞星火 VS chatgpt (105)-- 算法导论10.1 3题

福大大架构师每日一题

福大大架构师每日一题

Python 列表操作指南2

小万哥

Python 程序员 软件 后端 开发

简单易用的程序创建工具:VMware InstallBuilder Enterprise激活版

mac大玩家j

软件推荐 Mac软件

蓝易云:Linux系统命令:du与df的区别!

百度搜索:蓝易云

Linux 磁盘 du df 硬盘

04. 人工智能核心基础 - 导论(3)

茶桁

人工智能

神器 CodeWhisperer

亚马逊云科技 (Amazon Web Services)

人工智能

PDF Expert for mac(pdf编辑工具) v3.5.2激活密钥版

mac

PDF Expert 苹果mac Windows软件 PDF编辑软件

架构纠缠系列:简单与复杂的技术方案如何取舍

凌晞

架构设计 架构决策

Lightroom Classic 2023 for Mac(摄影后期图像编辑软件) v12.4完美激活版

mac

图像处理软件 苹果mac Windows软件 Lightroom Classic 2023

为什么zookeeper不满足线性一致性依然可以实现分布式锁?

Jerry Tse

zookeeper zookeeper分布式锁 分布式锁原理

ChatGPT“与图对话”初体验

无人之路

ChatGPT

从“概念”到“应用”,字节跳动基于DataLeap的DataOps实践

字节跳动数据平台

数据中台 DataOps 企业号9月PK榜

人生最优解:体验最极致的人生

少油少糖八分饱

人生 回忆 体验 阅读笔记 死前归零

公链如何开发?怎么开发一条可靠的公链

V\TG【ch3nguang】

探索Redis与MySQL的双写问题:挑战与解决方案

Java随想录

Java MySQL redis

结对编程的经济价值论_Java_Mike Bria_InfoQ精选文章