极限编程
Posted 洛飞
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了极限编程相关的知识,希望对你有一定的参考价值。
价值观:沟通(Communication)、简单(Simplicity)、反馈(Feedback)、勇气(Courage)、尊重(Respect)
商业实践
-
测试驱动开发—TDD是你的商业安全网。因为测试是在编码之前完成的,所以写完的测试一定会运行失败,接下来再写代码使测试可以通过。TDD保证你的产品功能,不管公司和技术团队实现的是大规模的变更还是小规模的变更。
-
结对编程—让2名开发人员写同一段代码,使用同一个键盘和同一台显示器。因为结对大大降低了浪费的时间和缺陷,所以能带来更高质量的代码,并带来高水平的协作。
-
集体代码所有制和持续集成—如果每段代码不只有一个人熟悉,那么就不会有什么交流瓶颈了。把代码持续集成到一个主干可以避免重复和不匹配的代码。
-
重构—在当时的情况下,写的代码是解决已知问题的。通常,团队巧妙地解决了他们的问题,然后持续重构和修改代码,确保代码库能以最为高效的方式不断满足业务最新的需要。
13个核心实践
团队协作(Whole Team)
规划策略(The Planning Game);
结对编程(Pair programming)
测试驱动开发(Testing-Driven Development)
重构(Refactoring)
简单设计(Simple Design)
代码集体所有权(Collective Code Ownership)
持续集成(Continuous Integration)
客户测试(Customer Tests)
小型发布(Small Release)
每周40小时工作制(40-hour Week)
编码规范(Code Standards)
系统隐喻(System Metaphor)
例:在敏捷过程的开发方法中,(16)使用了迭代的方法,其中,把每段时间(30天)一次的迭代称为一个“冲刺”,并按需求的优先级别来实现产品,多个自组织和自治的小组并行地递增实现产品。
A.极限编程XP B.水晶法 C.并列争球法 D.自适应软件开发
以上四种方法都属于敏捷开发方法。
极限编程XP:近似螺旋的开发方法,把整个开发过程分解为相对比较小而简单的周期,通过大家积极的沟通反馈,开发人员和客户都比较清楚当前的开发进度、需要解决的问题等等,根据这些实际情况去调整开发过程,这是极限编程的思想。
水晶法:不同的项目需要不同的开发方法。
并列并列争球法:就是我们通常所说的Scrum。Scurm是一个增量、迭代的开发过程。在这个框架中,整个开发过程由若干个短的迭代周期组成,一个短的迭代周期称为一个Sprint,每个Sprint的建议长度是2到4周。在Scrum中,使用产品Backlog来管理产品的需求,产品团队总是先开发对客户具有较高价值的需求。挑选的需求在Sprint计划会议上经过讨论、分析和估算得到相应的任务列表,我们称它为Sprint backlog。在每个迭代结束时,Scrum团队将递交潜在的可交付的产品增量。
以上是关于极限编程的主要内容,如果未能解决你的问题,请参考以下文章