NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

结对编程的经济价值论

  • 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:012944
用户头像

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

关注

评论

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

Neuron 2.4.0发布:体验下一代工业物联网连接和管理

EMQ映云科技

UI 物联网 IoT neuron 企业号 4 月 PK 榜

免费领取 | ONES 联合中国信通院发布《中国企业软件研发管理白皮书》

万事ONES

迁移PD坑-cdc任务全部stop

TiDB 社区干货传送门

实践案例 集群管理 故障排查/诊断

tidb-loadbalance 客户端方式软负载均衡配置实践

TiDB 社区干货传送门

数据库架构设计 数据库连接

WordPress 使用 TiDB Cloud 替换 MySQL

TiDB 社区干货传送门

迁移 实践案例 版本测评 应用适配

python正则 | python小知识

AIWeker

Python python小知识 三周年连更

Parallels Desktop PD 18虚拟机关闭、停止、中止和暂停操作的区别

魔仙苹果mac堡

pd虚拟机 Parallels Desktop PD18虚拟机操作

面试官:Redis有什么持久化策略?

做梦都在改BUG

Java redis 缓存 面试 持久化

微服务 - 注册中心和配置中心(Consul)

做梦都在改BUG

Java 微服务 注册中心 配置中心

从零到跑通TPC-H:如何快速实现查询计划

MatrixOrigin

分布式数据库 MatrixOrigin MatrixOne TPC-H

苹果电脑臻选4K壁纸app:Dynamic Wallpaper

魔仙苹果mac堡

动态壁纸 Dynamic Wallpaper下载 苹果壁纸下载 mac壁纸一软件 高清壁纸下载

迁移prometheus数据

TiDB 社区干货传送门

迁移 实践案例 集群管理

谷歌 Chrome 正式发布 WebGPU!Orillusion开源倒计时!

Orillusion

开源 WebGL 元宇宙 web3d #WebGPU

【Linux】之创建普通用户并禁止root用户远程登陆

A-刘晨阳

Linux 三周年连更 用户名

4 月 25 日直播预告 | 深入解读 Flink 1.17

Apache Flink

大数据 flink 实时计算

TiDB迁移、升级与案例分享(TiDB v4.0.11 → v6.5.1)

TiDB 社区干货传送门

迁移 版本升级 安装 & 部署 扩/缩容 6.x 实践

新特性解析丨TiDB 资源管控的设计思路与场景解析

TiDB 社区干货传送门

版本测评

HummerRisk V1.0 开发手册(微服务版)

HummerCloud

开源 微服务 云原生安全

Karmada 多云容器编排引擎支持多调度组,助力成本优化

华为云开发者联盟

云原生 后端 华为云 华为云开发者联盟 企业号 4 月 PK 榜

Mac人工智能图像降噪 Topaz Photo AI 安装激活教程

魔仙苹果mac堡

Topaz Photo AI下载 图像降噪 苹果mac软件下载 Topaz Photo AI mac Topaz Photo AI破解

优化配置Little Snitch for Mac的规则和设置

魔仙苹果mac堡

macOS防火墙软件 Little Snitch 下载 小飞贼防火墙 Little Snitch 规则

Mysql 连接查询

PCB阻焊桥存在的DFM(可制造性)问题,华秋一文告诉你

华秋电子

全平台数据(数据库)管理工具 DataCap 管理 Rainbond 上的所有数据库

北京好雨科技有限公司

数据库 Kubernetes 云原生 rainbond 企业号 4 月 PK 榜

用数据分析的方法去做dba,维护好tidb数据库。

TiDB 社区干货传送门

6.x 实践

maya软件在建模上有什么优势?

Finovy Cloud

maya 3D软件

国内外主流的8款 IT 项目管理平台

PingCode

项目管理工具 PingCode 项目研发管理软件

超强版干货投递!Milvus 的部署心得、运维秘籍都在这里了!

Zilliz

Milvus Zilliz ChatGPT LLM zillizcloud

阿里P8推荐学习的44个微服务架构设计模式,真的太香了!

做梦都在改BUG

Java 架构 微服务 设计模式

即时通讯技术文集(第13期):Web端即时通讯技术精华合集 [共15篇]

JackJiang

网络编程 即时通讯 IM

AutoCAD 2024 Mac版如何设置自动保存文件为低版本?

魔仙苹果mac堡

CAD制图软件 AutoCAD 2024 Mac版 AutoCAD使用技巧 保存文件为低版本

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