QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

结对编程:肩并肩还是面对面

  • 2011-11-12
  • 本文字数:1124 字

    阅读完需:约 4 分钟

结对编程是一门敏捷软件开发的技术,其目的是让两个开发人员共同在同一个工作站上工作。关于结对编程所带来的好处已广为流传,相应的技术和方法也得到了广泛实践。然而,在进行结对编程时,最好的安排座位的方法又是怎样的呢?

通常的位置是肩并肩地坐,但这样存在着一些弊端,正如 Josh Susser 所说的那样:

尽管在多数情况下这样安排座位是一种很好的方法,但其并不符合人体工程学。首先,两个人都并非正对显示器,而是偏向显示器的边缘,在敲打键盘或观察显示器时,将会引起相互倚靠、懒散及扭头等情况的发生。同时,在不转动脖子的情况下,也很很难看清自己的搭档。即使桌子较宽,有足够的空间给键盘和鼠标,同样会存在拥挤、调整桌面和椅子所带来碰撞等问题。

另外一种方法就是面对面地进行结对编程。这种变通的方法看上去就像下图中阴影部分所表示的那样。

按照 Josh 的说法:

这样安排座位会更加舒服,结对的双方都能有更好的视角来观察屏幕,共同工作时还能非常容易的看到对方是一件非常有利的事情。结对双方坐的足够近,这样即使不提高嗓门也能够很容易地听到对方在讲什么。做了这样的调整后,一整天工作下来,我感觉比以前好了很多,脖子也不像以前那样难受了。

Brian 和 Corey对这种方法进行了尝试并取得了不错的效果。像 Brian 所说的那样,他最终还是倾向于用新方法取代传统的做法。

与在屏幕面前肩并肩地结对编程相比,我倾向于这种新的做法。我甚至认为这种方法比同时面对两个并排放置的屏幕,使用两套鼠标的方法还有效。工作变得更加自在,交流也变得更加充分。可以更容易地看清另外一个人的肢体动作。可以更加容易地终止编写代码、查找以及相互交谈。我发现人员状态的切换变得更加顺畅,光标将两个人的注意力在同一时间内聚集在一起的做法节省了大量时间。

Dave Smith 认为这种方法的出现并不稀奇,他在1980 年时就见过类似的做法,那时,两位计算机科学家相向而坐,放在他们之间的就是两台巨大的显示器。

Tim Ottinger 也尝试了这种布局,但是看起来不是很奏效。他提到:

我们只是做了下尝试。大家没有抵触这种做法,但我们感觉到彼此之间的联系没有以前那样紧密了,使我们不得不用鼠标来代替以前的手指来示意。这么做虽然看到了些效果,但更像是一种远程结对的体验。

这样的改进是否也存在着不足呢?

Josh 认为,在捕捉一些细微的动作上的确有些难度,比如在肩并肩结对时,可以很清晰地看到操控键盘的操作以及鼠标轨迹的移动。此外,这种做法在费用上也有所上升,因为需要更多的设备和场地空间。

不管这种做法从长远来看是否有效,但非常值得一试。 Davis W.Frank 这样评论到

我确信当这种方法被证明成功时,会有更多的人举双手赞成并广为使用。

查看英文原文: Pair Programming: Side-by-Side or Face-to-Face

2011-11-12 21:563414
用户头像

发布了 156 篇内容, 共 52.2 次阅读, 收获喜欢 7 次。

关注

评论

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

小红书爆款笔记如何写,掌握3种类型的笔记写法

石头IT视角

IPFS云矿机分币软件系统开发简介(源码)

redis--多机

en

redis 高可用

丰收音乐会,去找美丽却隐秘的生机

E科讯

Go应用场景与适应项目

hanaper

应对多样管理需求,新版 EMQ X Cloud 实现多项目部署管理

EMQ映云科技

物联网 mqtt

Vue进阶(幺叁玖):textarea文本框根据内容自适应改变高度

No Silver Bullet

Vue 10月月更

网络安全漏洞深度剖析

网络安全学海

网络安全 信息安全 渗透测试 WEB安全 安全漏洞

Minio环境搭建

飞鸟

Minio 分布式文件存储

filecoin云算力挖矿系统软件开发源码搭建

filecoin矿机分币系统开发方案(现成)

手机影像二十载,AI多摄会是终极答案吗?

脑极体

北鲲云超算如何让仿真技术、HPC和人工智能之间的深度融合?

北鲲云

康威定律

俞凡

架构 认知

IPFS算力挖矿系统开发方案(源码案例)

【日志技术专题】「logback入门到精通」彻彻底底带你学会logback框架的使用和原理(入门介绍篇)

洛神灬殇

Java logback 日志系统 10月月更

微信小程序获取用户授权的思路

Changing Lin

10月月更

fil挖矿分币系统开发资料(案例)

站立会(Daily Scrum)我们说些什么

Bruce Talk

Scrum 敏捷 Agile Coach/Facilitate

Apache APISIX 社区周报 | 2021 10.1-10.14

API7.ai 技术团队

开源社区 API网关 APISIX 社区周报 Apache APISIX

[论文分享]VulDeePecker:基于深度学习的漏洞检测技术

maijun

机器学习 静态代码分析 VulDeePecker 漏洞检测

FIL云算力分币软件系统开发内容(源码)

现成filecoin算力挖矿软件系统开发公司

IPFS分币挖矿系统软件开发资料(现成)

央行数字货币即将破茧,一场大变局,震撼全球

CECBC

越来越被需要的售前工程师·「这就是售前」前言

jiezhao

售前 企业服务

Java 面试八股文之数据库篇(一)

Dobbykim

跳槽时需要注意的事项

石云升

跳槽 职场经验 10月月更

Java容器学习二

风翱

Java 10月月更

现成IPFS分布式存储矿机软件系统开发案例

Large Scale Distributed Deep Networks论文记录

春秋易简

结对编程:肩并肩还是面对面_研发效能_Vikas Hazrati_InfoQ精选文章