敏捷软件开发ASD-03-结对编程

上传人:飞*** 文档编号:2879327 上传时间:2017-08-27 格式:PPT 页数:47 大小:3.70MB
返回 下载 相关 举报
敏捷软件开发ASD-03-结对编程_第1页
第1页 / 共47页
敏捷软件开发ASD-03-结对编程_第2页
第2页 / 共47页
敏捷软件开发ASD-03-结对编程_第3页
第3页 / 共47页
敏捷软件开发ASD-03-结对编程_第4页
第4页 / 共47页
敏捷软件开发ASD-03-结对编程_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《敏捷软件开发ASD-03-结对编程》由会员分享,可在线阅读,更多相关《敏捷软件开发ASD-03-结对编程(47页珍藏版)》请在金锄头文库上搜索。

1、National University of Defense Technology 结对编程 : 不同的体验 Laurie Williams North Carolina State University Robert Kessler University of Utah National University of Defense Technology 结对编程 National University of Defense Technology 这不是结对编程 National University of Defense Technology 内容 结对编程的历史和研究成果 采用结对编程 结

2、对编程的实践问题 结对编程的其他问题 National University of Defense Technology 一、结对编程的历史和研究成果 National University of Defense Technology 结对编程 : 回顾 1945 . . . 1945 1995 1996 1997 1998 1999 2000 2001 John von Neumann, the great mathematician and creator of the von Neumann computer architecture, recognized his own inadeq

3、uacies and continuously asked others to review his work. National University of Defense Technology 结对编程 : 回顾 1963 . . . 1953 1995 1996 1997 1998 1999 2000 2001 Fred Brooks and many others are pair programming, though they dont know there is a name for it. “Fellow graduate student Bill Wright and I f

4、irst tried pair-programming when I was a grade student. We produced 1500 lines of defect-free code; it ran correctly first try. I encourage my own computer architecture students to work in pairs on all design projects. I am firmly convinced that it is not only as productive per person-hour, but also

5、 much more educational.” National University of Defense Technology 结对编程 : 回顾 1995 . . . 1995 1996 1997 1998 1999 2000 2001 In “Constantine on Peopleware,” Larry Constantine writes about Dynamic Duos producing code faster and more defect-free Jim Coplien writes a “Developing in Pairs” Organizational

6、Pattern . . . “together, they can produce more than the sum of the two individually.” National University of Defense Technology 结对编程 : 回顾 1996 . . . 1995 1996 1997 1998 1999 2000 2001 Hill Air Force Base: “Total productivity was 175 lines per person-month (lppm) compared to a documented average indi

7、vidual productivity of only 77 lppm . . . The error rate through software-system integration was three orders of magnitude lower than the organizations norm . . . A brief list of observed phenomena includes focused energy, brainstorming, problem solving, continuous design and code walkthroughs, ment

8、oring and motivation.” National University of Defense Technology 结对编程 : 回顾 1996 . . . 1995 1996 1997 1998 1999 2000 2001 XP and the Wiki “Get two people programming in pairs, and theyll work more than twice as fast as one could have.” “One of the rules of the Chrysler Comprehensive Compensation team

9、 is that all production code be written with a partner. As a testimonial, in the last six months before launching, the only code that caused problems was code written solo.” Success Stories National University of Defense Technology 结对编程 : 回顾 1998 . . . 1995 1996 1997 1998 1999 2000 2001 Temple Unive

10、rsity Professor Nosek runs (small scale) experiment: Pairs spent 60% more minutes on the task (but faster cycle time) Pairs produced better algorithms Pairs enjoyed the problem solving process more National University of Defense Technology 结对编程 : 回顾 1999 . . . 1995 1996 1997 1998 1999 2000 2001 Alis

11、tair Cockburn appears in Bobs office University of Utah experiments Success Stories National University of Defense Technology Po s t D e v e l o p m e n t T e s t C a s e s Pa s s e d0 . 0 %1 0 . 0 %2 0 . 0 %3 0 . 0 %4 0 . 0 %5 0 . 0 %6 0 . 0 %7 0 . 0 %8 0 . 0 %9 0 . 0 %1 0 0 . 0 %P r o g r a m 1 P

12、r o g r a m 2 P r o g r a m 3 P r o g r a m 4I n d i v i d u a l sC o l l a b o r a t o r sNational University of Defense Technology El a p s e d T i m e0 . 0 %2 0 . 0 %4 0 . 0 %6 0 . 0 %8 0 . 0 %1 0 0 . 0 %1 2 0 . 0 %P r o g r a m 1 P r o g r a m 2 P r o g r a m 3O n e I n d i v i d u a l O n e C o

13、 l l a b o r a t o rNational University of Defense Technology E n j o y t h e W o r k M o r e B e c a u s e o f P a i r P r o g r a m m i n g0%20%40%60%80%100%P R O F S U M 1 S U M 2 S U M 3 F A L L 1 F A L L 2 F A L L 3A g r e e D i s a g r e eM o r e C o n f i d e n t i n o u r W o r k W h e n P a

14、 i r -P r o g r a m m i n g0%20%40%60%80%100%P R O F S U M 1 S U M 2 S U M 3 F A L L 1 F A L L 2 F A L L 3A g r e e D i s a g r e eNational University of Defense Technology 研究发现 工业中的轶话 我们可以在不到一半的时间内产生几乎无缺陷的代码 实验研究 结对编程可以产生更高质量的代码 减少 15%的缺陷 结对编程可以在几乎一半的实践内完成任务 平均只需 58%的时间 绝大多数程序员开始时都不情愿应用结对编程 92%的人开始

15、乐于结对编程 96%程序员队他们的产品更加自信 National University of Defense Technology 2 采用结对编程 National University of Defense Technology 2.1 结对编程的激励效应 相互督促 (Pair-Pressure) 自觉地将注意力集中在工作任务 不想拖同伴的后腿,不想被同伴看扁 有利于共同遵守规定的过程和标准 Parkinsons Law Work expands to fill all available time. 临时抱佛脚 相互协商 (Pair-Negotiation) 分布式认知理论 : “ Searching Through Larger Spaces of Alternatives” 具有共同的目标和计划 为任务带来不同的经验 对任务相关信息的不同获取方法 必须协商出一个共同的活动 National University of Defense Technology 结对编程的激励效应 相互鼓励 (Pair-Relaying) 反过来,每个都贡献出最好的知识和能力 然后,坐回去,在同伴继续战斗的时候思考 拥有一个搭档就等于拥有了超级鼓励者 相互审查 (Pair-Reviews) 持续设计

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 质量控制/管理

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号