第 1 章 极限编程 1
极限编程是一门软件开发学科, 它具有使用便捷. 易于沟通. 反馈性强及振奋人心的特性. 极限编程侧重于客户. 管理者及程序员的角色, 并授予拥有这些角色的工作人员重要的权利和责任.
第 2 章 生命周期 13
当客户根据团队交付程序功能的准确进度, 确定要实现的业务价值后, XP项目就成功了.
第 3 章 现场客户 17
XP项目需要全职客户来提供现场指导. 下面部分总结了其中的原因.
第 4 章 用户故事 23
使用书写在卡片上的故事来定义需求.
第 5 章 验收测试 33
当然, 不能想当然地认为已实现了需求, 要证明它是可行的!验收测试使得客户可知道系统何时能运行, 并告知程序员需要做什么工作.
验收测试示例 37
起初, 规划验收测试很困难. 但只要通过一些实践, 这便会很简单.
第 6 章 故事估算 39
客户需要知道故事的成本, 以选择先实现哪些故事, 而将其他故事推迟. 程序员对故事进行评估, 以提供这种信息. 下面介绍如何进行评估.
插曲:成就感 49
XP的嵌套规划编程周期保证了项目的正常进度, 并不时地提供成就感.
第 7 章 小型发布 53
XP周期的最外层是发布. 小规模. 频繁地发布为客户提供了先期利益, 同时为程序员提供了先期反馈. 下面是就如何发布的一些看法.
第 8 章 客户定义发布 59
在每一个发布周期内, 客户负责控制发布范围, 决定先做什么后做什么, 以在规定的日期内提供最佳的版本. 工作安排要依据业务价值. 难度和团队的实施速度.
第 9 章 迭代规划 67
在每一个发布中, XP团队一次只规划几周, 因此目标明确. 估算可靠.
第 10 章 快速设计会议 75
在每个迭代中, 程序员都不是孤立的. 下面的技巧能帮助程序员大胆前行. 请将该技巧作为团队准则.
第 11 章 编 程 77
毕竟, 这称为极限编程, 下面介绍如何进行编程.
代码质量 91
简单性:加上一些更加符合我们内心的.
第 12 章 结对编程 95
对于XP团队, 所有的生产代码是由两位程序员坐在同一台电脑前共同完成的.
第 13 章 单元测试 101
XP使用自动化测试来测试所有可能出现问题的地方, 这种测试必须在任何时候都能运行.
xUnit 115
使用世界上最轻便的测试工具
第 14 章 测试先行. 表达意图 117
按需求去编写代码, 不要在乎如何编写. Chet和Ron进行小型任务测试时, 总是在代码中表达意图, 而不是算法.
第 15 章 发布变更 135
通过代码集体拥有和详尽的单元测试, XP团队能够快捷. 可靠地发布变更.
第 16 章 做或不做 143
至此介绍很多关于XP编程方面的内容. 下面对应该做什么和不应该不做什么进行总结.
第 17 章 经验改善估算 147
在每一个迭代中, 我们都能获得经验. 故事方面的经验将帮助我们对将来的故事做出更容易. 更准确的估算.
第 18 章 资源. 范围. 质量. 时间 151
谁做什么工作?已完成了多少?质量怎么样?我们什么时候能做完?我们应该保持什么样的度量标准?
第 19 章 指 导 163
估算发生了错误. 优先级可能发生变化. 你必须进行指导.
第 20 章 指导迭代 167
为指导每次迭代, 你需要跟踪正在进行的故事数目以及对任务估算的准确程度.
第 21 章 指导发布 173
为指导发布, 需要针跟踪哪些任务已完成. 进度有多快以及系统的运行情况.
第 22 章 处理缺陷 177
报告缺陷. 制定缺陷修复计划. 测试并修复缺陷. 避免缺陷. 不要把缺陷称为bug.
高级主题:缺陷数据库 183
高级准则:缺陷数据库 187
第 23 章 结束语 189
附加内容 193
下面是一些我们付出了很大的代价才学到的知识, 您购买来本书, 我们想给您提供一些额外的内容. 谢谢您, 但愿我们满足了您的要求.
第 24 章 我们将尽力 195
“我们将尽力”可能是程序员说的最悲哀的一句话, 我们中的很多人还不止说过一次. 前面已经以其他的形式介绍了这方面的内容, 但有必要在这里重申.
第 25 章 如何估算任何东西 205
有时候, 估算故事是很可怕的. 这时候要保持头脑清醒, 集合人员, 将故事分分割. 对于你将能做到的事情, 你将感到十分吃惊.
第 26 章 基础设施 209
首先建立所需的数据库如何?基本框架呢?语法制导命令编辑器呢?先忽略它们!
第 27 章 这是Chet的错 213
你正在寻找责任承担者吗?本章阐述如何查明是谁犯了错. 现在继续工作, 解决你的问题.
第 28 章 在希望和恐惧间取得平衡 215
那些听过Ron. Ann和我介绍XP的读者可能会问, 有争斗的故事在哪. 噢!这就有一个.
第 29 章 测试完善代码 219
下面的例子演示了如何编写测试来帮助完善代码.
第 30 章 XP成员尝试JAVA 223
在C3项目结束后, 大多数XP成员转而从事企业人力资源内部网的工作. 我发现在新的工作项目中, 他们利用XP原则以改善自己的生活, 这令人振奋!下面介绍Rich Garzaniti-C3项目的成员. 忠实的XP成员, 是怎样在一个全新的工作环境中引入测试和其他现代开发工具.
第 31 章 从Java语言 233
我们非常感谢Bill Wake同意本书引用他的文章. 这是其“XP测试/编码周期”系列中的第二篇. 他的网址是http//users.vnet.net/wwake, 其中包含了全部系列文章和其他一些有用的内容.
第 32 章 一个真实的故事 251
Ron Jeffries学习简化方面的知识
第 33 章 估算和承诺 255
我们估算项目需要多长时间, 并承诺告知实情.
第 34 章 每个地方都可能出错 259
测试每一个可能出错的地方, 这意味着什么?又怎么可能呢?
编后记 269
参考文献 273