目录

什么是XP极限编程

目录

什么是XP(极限编程)

极限编程(Extreme Programming,XP)是一种针对业务和软件的,使开发者能够及时响应用户需求变化的软件工程方法论。它强调软件开发是人与人合作进行的过程,软件开发过程应该充分利用人的优势,同时弱化人的缺点。并突出了人在软件开发过程中的作用,认为文档,框架都不如人直接编程来的好。

XP是一种轻量级的开发方法。轻量开发方法是相对于传统的重量开发方法而言。简单地理解,“量”的轻重是指用于软件过程管理和控制的、除程序量以外的“文档量”的多少。XP等轻量开发方法认识到,在当前很多情况下,按传统观念建立的大量文档,一方面需要消耗大量开发资源,同时却已失去帮助“预见、管理、决策和控制的依据”的作用。因此必须重新审视开发环节,去除臃肿累赘,轻装上阵。

极致编程的特征

增量和反覆式的开发

反覆性,通常是自动重复的单元测试,回归测试。

结对程序设计

在程序设计团队中的使用者交互(在场的客户)

软件重构

共享的程序码所有权

简单

回馈

用隐喻来组织系统

可以忍受的速度

极限编程的缺陷

没有书面的详细的规格说明书

客户代表被安排在专案中

程序设计师以结对的方式工作

测试驱动的开发

绝大多数设计活动都匆匆而过,并渐进式的,开始一个“最简单的可能工作的东西”并当其需要时(测试失败)才增加复杂性。

XP强调团队合作,经理、客户和开发人员都是开发团队中的一员。团队通过相互之间的充分交流和合作,使用XP这种简单但有效的方式,努力开发出高质量的软件。