我国最大的IT项目管理门户网站,国内IT项目管理培训与咨询服务提供商

当前位置:首页 > 敏捷开发 > 正文

聊聊结对编程 Pair Programming

2022-11-11 来源:麦克叔叔每晚10点说
当过技术经理的人可能都有感触,如何才能让团队的技术成果物质量更好?如何才能让团队成员之间更好地做好互备,避免出现人员一走无人能接盘的情况出现?对于这些相关问题,我今天想和大家聊聊结对编程,这是一种软件编程模式,使用这种方式有助于我们更好地做好技术团队的质量管理,也有助于提升团队的整体能力。
 
 
基本介绍
 
结对编程,英文是Pair Programming,是一种编程模式,从字面上理解就是两个程序员并排坐在一台电脑前,面对同一台显示器,他们一起进行需求分析、设计、编码、编写测试用例、执行单元测试和集成测试,甚至一起写文档。这么说吧,基本上软件开发流程里的所有开发环节他们都需要一起肩并肩地、平等地、互补地完成工作。
 
结对编程概念最早出现在1995年,Larry Constantine在他的专栏中第一次提到了他在Plaugheris软件公司观察到的一个现象,并将这个现象总结为Collaborative Programming(协同编程)。他当时对现象的描述是这样的:“两个程序员一起工作,可以更快地完成并交付经过测试的代码,而且这些代码几乎是没有Bug的”。1996年,Kent Beck、Ward Cunningham,以及Ron Jeffries一起提出了极限编程(Extreme Programming),他们吸收了协同编程思想,并将其正式定名为Pair Programming。从极限编程来看,Pair Programming是XP编程模式的一个关键实践,也是它成功的关键因素之一。
 
角色分配
 

 
按照极限编程定义,参与结对编程的结对角色通常分为两个角色,分别是“驾驶员”和“领航员”,两者的作用如下:
 
1、驾驶员控制鼠标和键盘的使用,即负责编码工作。
2、领航员坐在驾驶员一旁观察和思考,即负责检查错误、考虑解决方案。
 
注意,结对的角色是可以互换的。如果“驾驶员”在编码活动过程中出现了技术盲区(不精通的技术领域)或者方向性的错误,结对编程双方可以互相交换角色,让“领航员”转为“驾驶员”角色继续编码。一般情况下,应该鼓励这种互相交换角色的行为,理论上来说从几分钟到几小时不等,但是做过程序员的人知道,大家其实内心希望有连续型思维,即至少让我把这个模块都写完后再换,不然思路被打断了,所以最好是按照模块或者较长的固定时间作为切换点。一旦结对双方习惯了这种做法,并且适应了与自己结对的程序员,结对者会自动进入这种流程,很自然地来互换角色。
 
挑选人员
 
结对编程过程中,编码不再是私人的工作,而是一种公开的“表演”。程序员的代码、工作方式、
分享到:

免责声明:
  1、IT项目管理界发布的所有资讯与文章是出于为业界传递更多信息之目的,并不意味着赞同其观点或证实其描述。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请浏览者仅作参考,并请自行核实相关内容。
  2、本站部分内容转载于其他网站和媒体,版权归原作者或原发布媒体所有。如文章涉及版权等问题,请联系本站,我们将在两个工作日内进行删除或修改处理。敬请谅解!

延伸阅读:

more

会议活动

more

公开课

more

PMO

Copyright © 2022 IT项目管理界 版权所有 京ICP备17062359号-4 如转载本站文章,请注明原作者和原发布媒体

本着互联网分享精神,本站部分内容转载于其他网站和媒体,如稿件涉及版权等问题,请联系本站进行删除或修改处理

客服电话:010-89506650 89504891 非工作时间可联系:18701278071(微信) QQ在线:511524637

新闻与原创文章投稿:tougao#cpmta.com 客服邮箱:info#cpmta.com(请将#换成@)

IT项目管理界——我国最大的IT项目管理门户网站,隶属卓橡公司

IT项目管理界官方微信

IT项目管理界官方微信

PMO大会官方微信

PMO大会官方微信