极限编程实施
分類: 图书,计算机/网络,计算机理论,
作者: 美.杰弗里斯 等编著 袁国忠 译
出 版 社: 人民邮电出版社
出版时间: 2002-7-1字数: 317千版次: 1版1次页数: 289印刷时间: 2002/07/01开本:印次:纸张: 胶版纸I S B N : 9787115103802包装: 平装内容简介
极限编程(XP)是一种经历过实践考验的轻量级软件开发方法学。本书阐述了极限编程的核心法则,详细介绍了XP开发的每一个步骤,涵盖了XP方法的精髓—实施技巧、可能遇到的障碍和成功实施的经验之谈。
本书共分34章,分别介绍了XP项目的生命周期、现场客户、用户故事、验收测试、故事估算、小型发布、迭代规划、结对编程、单元测试、指导发布和迭代、处理缺陷等内容。通过阅读本书,客户将学到简单、有效的交流方式,从而确保需求得到满足,并指导项目走向成功;程序员将学会如何快速地提供业务价值,如何应对不断变化的需求,如何获得客户的信任和支持;管理者将学会如何度量项目进度,如何度量质量,如何回答非常重要的问题—项目何时能完成。
本书是为参与XP项目的客户、程序员和管理者编写的,也适合于软件开发人员、软件项目管理人员以及软件工程研究人员参考。
目录
第 1 章 极限编程1
极限编程(Extreme Programming,XP)是一门软件开发学科,它具有使用便捷、易于沟通、反馈性强及振奋人心的特性。极限编程侧重于客户、管理者及程序员的角色,并授予拥有这些角色的工作人员重要的权利和责任。
第 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使用自动化测试来测试所有可能出现问题的地方,这种测试必须在任何时候都能运行。
xUnit115
使用世界上最轻便的测试工具。
第 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成员尝试Java223
在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