资源描述:
《交换编程――极限编程的延伸实践》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、摘要结对编程是一种编程组队方法,在这种方法中要求两个程序员使用一台电脑在一起工作完成同一个任务。在软件开发中关于结对编程的价值正在进行着争论。目前在这个领域大量的知识都是离散的和无条理的。回顾这些可以看到绝大多数这方面的实验研宄都是在大学环境中进行的。几乎没有在真实软件开发项目中详细审查下的结对编程被已存在的系统化实验研究过。因此,假设目前仍然没有纯粹的经验验证这种优势的存在。由于结对编程在表象上给人以浪费一个开发人员的感觉,所以,在很多软件企业中,很难得到推广实施。在本文的报告中,我们给出了一种有别于结对编程和传统的单人编程的团队组织形式
2、,这种形式融合了结对编程促进团队内相互交流的好处,保持了团队的稳定性,同时采用了传统单人编程的形式,不给人以浪费人力的感觉。关键词极限编程;结对编程;交换编程;UML;TSP中图分类号TP391.41文献标识码AexchangeProgrammingXP'sExtendPracticeBaiHuidong1YuanPeijiang2l(lndependentSoftwareConsultant,BeijingCyworldNetworkTechnologyCo.Ltd.,China)2(SchoolofMechanicalEngineeri
3、ngandAutomation,BeihangUniversity,100191,China)【Abstract】Pairprogrammingisaprogrammingtechniqueinwhichtwoprogrammersuseonecomputertoworktogetheronthesametask.Thereisanongoingdebateoverthevalueofpairprogramminginsoftwaredevelopment.Thecurrentbodyofknowledgeinthisareaisscatt
4、eredandunorganized.Reviewshowsthatmostoftheresultshavebeenobtainedfromexperimentalstudiesinuniversitysettings.Few,ifany,empiricalstudiesexist,wherepairprogramminghasbeensystematicallyunderscrutinyinrealsoftwaredevelopmentprojects.Thus,itsproposedbenefitsremaincurrentlywith
5、outsolidempiricalevidence.Becauseitfeelslikeoneprogrammeriswastedinpairprogramming,insoftwarecompaniesitcan'tberecognized.Reportedinthispaper,weadviceanewteamstructureform.Itcombinestheadvantagesofbothpairprogrammingandsoloprogramming,promotingcommunicationinteammembers,ke
6、epingteam’sstability,andlessman-day’swasting.【Keywords】extremeProgramming;PairProgramming;ExchangeProgramming;UML;TSP0引言在传统的开发过程中,往往是一个人从一个模块的需求调研开始,然后作分析、设计、编码、单元测试,接着才会交给第二个人(专职测试人员)进行其他测试项目。这样的开发过程会因为开发人员的变动而对项目的进展产生较大的影响,所以在软件工程的一些实践中就有项目中编码人员的重要性远比项目经理大的认识,为了改变这种状态,软件
7、工程的研究人员进行了大量的工作,其中有人提出了极限编程的12个核心实践。在极限编程中关于团队组织模型的一个核心实践就是结对编程方式,但是对于幵发人员人手严重不足的项目中,很多软件企业是不认可这种组织方式的,他们认为这会浪费很多的人力,一加一不能大于二。结对编程是极限编程12个核心实践之一[1,2,3]。在结对编程中,要求两个程序员使用一台显示器,一套键盘鼠标来完成所有分配给他们的任务。结对编程的支持者声明结对编程的开发方式与传统的编程方式相比有很强的优势,这包括更高的团队开发效率和更高的软件开发质量。在XP的宣传中提到,两个人结对在一段时间
8、以后可以使得开发效率超过单人编程,同时质量也会得到提高[6,7]。同样,在2006年敏捷中国开发者大会上,著名软件工程大师MartinFowler作为首席科学家的公司Though