1. 内涵
    1. 软件开发哲学
    2. 基于沟通、反馈、简约、勇气、尊重的价值观
    3. 被证明的有效软件开发实践
    4. 能够帮助指导那些独特难题的实践
    5. 共享上述价值观和实践的社区
  2. 跟其他方法相比的优势
    1. 开发周期短、提供尽早的、具体的持续的反馈
    2. 增量计划方法
      1. 迅速提出总体计划
      2. 项目生命周期计划不断演化
    3. 灵活安排功能实现、对变化的业务需求做出反应
    4. 使用有程序员、客户、测试人员编写的自动化测试来监控开发进度、支持系统演化并尽早发现缺陷
    5. 通过口头沟通、测试和源代码沟通系统结构和意图
    6. 演化设计贯穿整个系统生命周期
    7. 依赖于能力普通但是积极参与的程序员的紧密协作
    8. 各种实践兼顾项目成员的短期直觉以及项目的长期利益
  3. XP目标
    1. 只做能够为客户真正创造价值的事情,丢弃不必要的包袱;持续学习新知识积累技术。
    2. 是一种方法论,建立在解决软件开发方法中的约束上;不解决项目投资管理、财务、执行和市场销售等问题
    3. XP对任何规模都起作用
    4. XP适合模糊或者快速变化的需求
    5. 子主题 5
  4. XP如何解决风险
    1. 进度延迟:xp提倡短发布周期,这样任何延迟的范围都被约束到最小,进度的详细反馈、优先实现最高优先级功能。
    2. 项目取消:XP中最小发布必须满足最大化商业利益部分;这部分由面向商业成员承担
    3. 系统恶化:XP创建并维护一整套自动化测试,系统发生变化时都要运行以确保质量基线
    4. 缺陷率:XP中既包含程序员书写的函数测试,又包含客户书写的程序特性测试
    5. 业务误解: XP提倡业务人员成为团队的一部分,项目规约在开发过程不断演进;客户和团队的知识都反应在软件中
    6. 业务变更:XP缩短发布周期,因此在单独的周期内没有变化
    7. 错误特性太多:XP只坚持解决最大优先级的功能
    8. 人员流动:XP要求成员估算自己工作所需时间,同时将这些工作实际进度反馈给程序员以改善估算的精确性
  5. XP是什么
    1. XP是放弃旧的、低效的技术和习惯;采用新的有效的技术和习惯
    2. XP是因为你今天竭尽全力而充分欣赏自己
    3. XP是努力在明天做的更好
    4. XP是要你按照对团队的贡献来评价自己
    5. XP是让你的一些人性需求在软件开发中得到满足
    6. XP范式:保持清醒、适应、变化