请教关于XP开发方法、极限编程、敏捷开发方法之间的不同?

现在总是在很多地方都会很容易看到XP开发方法、极限编程、敏捷开发方法这几个技术名词,而且在里面还时常夹着一个叫做TDD(测试驱动开发)的东西,从文字的表面看,XP开发方法和敏捷开发方法应该都是属于软件的开发方法,我也曾经从网上看过关于些名词的资料,但这些资料都是比较单一的介绍,我个人总是感觉它们很相似,但我还是有点不安就是应该不会是我想象的那么简单。不知道有谁能给说说它们有什么不同呢?(我也不是需要讲得很详细的那种,我只需要基本知道就可以了,能把我这个迷惑的头脑给清醒过来就可以了!)
[244 byte] By [danky] at [2008-1-7]
# 1
XP(eXtreme Programming)即极限编程,是一种敏捷软件开发方法。TDD既是一种独立的开发方法,也是XP实践的重要组成部分,也就是说TDD并非一定要与XP其它实践结合使用。
# 2
Agile Method = 敏捷开发方法 这是一种对应于传统(基于文档)的软件开发方法。

XP 是 Agile Method 其中的一种方法。

TDD (test driven development) 也是一种软件的开发方法,XP 中常常使用到它。顾名思义,开发过程中,先写Test,再写真正的开发代码。这样会带来一系列的好处。

dengchengyao at 2007-10-26 > top of Msdn China Tech,软件工程/管理,开发方法...
# 3
敏捷开发的共性是迅速灵活处理需求变更;重视测试环节,拥有灵活的组织和团队自我管理机制和较少的官僚结构。
常见的敏捷开发可以分为XP,Scrum等等
而关于TDD,通常大多数开发人员采用这种编程方式。
susanadams-明志 at 2007-10-26 > top of Msdn China Tech,软件工程/管理,开发方法...