前言
极限编程目标:杰出的软件开发(更低成本,更低缺陷,更高生产效率,更高投资回报)
主要观点:每个人或团队总是可以提高效率
杰出软件开发团队的行为是各不相同的,不要照班,本书试图阐述杰出软件开发背后的智慧,直觉知识
XP最适用于需求不断变化的中小团队。
极限编程(XP)定义
XP是关于每个人自己如何成为最好的开发者的。通常会要求每个人找准自己定位做自己力所能及的事情
项目成功需要技术和人际关系的和谐 XP致力于解决这两方面的问题
极限的含义是每个人为实现成功做力所能及的事情。
XP包括:
基于沟通,反馈,简约,勇气,尊重的价值观
一套具体实现方法(作为价值观的表达形式)
独特场景下,根据价值观形成新的实践的原则和指导思想
社区
XP是一条可以使得一起开发软件的人们共同进步直至卓越的道路。它的主要特战:
1.开发周期短(基于快速反馈)
2. 增量计划(类似于迭代计划)
3. 灵活安排功能实现(TASK)
4. 使用自动化测试监控进度
5. 通过口头沟通,测试,源代码来交流系统结构和意图
6. 演进式设计
7. 依赖于 能力普通但积极参与 的程序员之间紧密协作
8. 各种实践兼顾程序员短期体验与项目长期利益
关于XP的一些理念
XP协调并满足人性,提高生产率的方式:
1 尽力而为才不会在失败时感到气馁
2 假设自己资源充足,弱化约束会让自己,团队更有效率
3抛弃旧的软件开发习惯方法,采用敏捷的适合自己团队的方法论
4你能控制的只有你自己,尽力做到自己承诺的
XP致力于解决软件开发层次上的所有风险
项目取消
项目延迟
系统恶化
缺陷率
业务误解
业务变更
无效特性多
人员流动
什么是XP:
XP要求你抛弃旧的低效的技术,习惯
XP要求你为自己今天的尽力而为充分欣赏自己
XP要求你努力在明天做得更好
XP要求按照你对团队共同目标做出的贡献来评价自己
XP让人性需求在开发中得到满足