极限编程实践指南:英文版

极限编程实践指南:英文版
作 者: David Astels
出版社: 清华大学出版社
丛编项:
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 极限编程
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  DAVIDASTELS,具有超过17年的软件开发经验,涉及的领域包括嵌入式环境控制、知识产权保护以及电力交易系统等。近十年来,他主要致力于面向对象技术。他经营一家公司,提供XP实施服务和全面的Java解决方案。

内容简介

本书主题:·如何预见你要构筑的软件系统·如何编写业务导向代码·如何编写有效的用户故事和验收测试用例·有关集成、重构、测试与交付的最佳实践·如何计划项目的迭代与发布周期·如何应对实施XP的挑战本书特色内容:·在实际项目中应用XP的原则·在整个项目周期内的最佳实践·理解开发人员、管理人员及客户等每一个参与者的角色·各种最常见的XP实施问题的具体解决方案极限编程爱好者必备的——站式指南弹指间,极限编程(XP)已成为先进的敏捷方法中的代表模型。本书是一本简明、易懂、全面的XP指南,包含了XP的诸多最佳实践,对于实施XP大有裨益!本书并非仅仅停留在介绍XP的基本概念和原则——如简单性、沟通和反馈,更重要的是演示了如何在实际项目中综合运用这些原则。本书通过一个完整的案例分析,描述了整个项目生命周期、每一项关键任务以及每一个XP参与者(开发人员、管理人员及客户)的角色。您想从XP中受益吗?您想一帆风顺地实施XP吗?那就从本书开始吧!

图书目录

Foreword by Scott W.Ambler

Preface

Introduction

part I The Game

Chapter 1 Extreme Principles

Work with Your Customers

Use Metaphors to Describe Difficult Concepts

Plan

Keep Meetings Short

Test First

Keep it Simple

Program in Pairs

Code to Standards

Own it Collectively

Integrate Continuously

Refactor

Release in Small Increments

Don't Burn Out (40-Hour Work Week)

Embrace Change

Chapter 2 The Players

Two Teams

The Customer Team

The Development Team

The Role of Roles

Establishing Rights

Conclusion

part II onceptualizing the System

Chapter 3 Creating a Vision of the System

Conceptualizing the System

The Vision Card

The Metaphor

Metaphors for Development

Conclusion

Chapter 4 Writing User Stories

The Philosophy of User Stories

User Stories

Numbering the Stack

Conclusion

Appendix to Chapter 4

Chapter 5 Writing Acceptance Tests

What Is an Acceptance Test?

Writing Tests

Difficulty with Acceptance Tests

Infinitely Many Acceptance Tests

Automating Acceptance Tests

Conclusion

Chapter 6 One Simple Solution

What Are We Looking for?

Keep It Simple

Conceptual Solution Spikes

Conclusion

Chapter 7 Watching Our Words

The Problem

What's in a Name

Constant Refactoring and Communicating

Conclusion

part III Planning

Chapter 8 Providing Estimates

Providing Estimates

Assumptions

Splitting

Planning Spikes

Conclusion

Chapter 9 Planning Releases

Velocity

The Cost of the Release

Establishing Priorities

Pair Programming

Creating the Release Plan

Conclusion

Chapter 10 Planning Iterations

Creating a Series of Iterations

The Setting for Iteration Planning

The First Iteration

Subsequent Iterations

Scheduling Iterations

Conclusion

Chapter 11 Tactical Planning

Beginning an iteration

Volunteering for Tasks

Standup Meetings

Tracking the Project

Finishing Early

Conclusion

part IV Development

Chapter 12 Pair Programming

The Mechanics of Pair Programming

Development as a Conversation

Peer Pressure

Double the Fun

The Net Effect

As Fast as the Slowest

Conclusion

Chapter 13 Test First

The XP Project

Why Test?

What to Test

When to Test

How to Test: A Testing Framework

Warranted Assumptions Revisited:

Test Driven Development

Example

A Case for Test Driven Development

Conclusion

Chapter 14 Design

Design and XP

Where Design Patterns Fit in XP

Architecture and XP

Agile Modeling

What is Agile Modeling (AM)?

Overview of the Values, Principles, and Practices of Agile Modeling (AM)

Conclusion

Chapter 15 Code With Intention

What's in a Name

Simplicity is the Ultimate Complexity

Warranted Assumptions

Let the Compiler Tell You

"No Comment"

Collective Code Ownership

Better to Burn Out than to Fade Away?

Happy Developers Are Productive Developers

Get a Life

Conclusion

Chapter 16 Refactoring

Examples of Refactorings

Courage

Code Smells

When to Refactor

The Two Hats

Refactoring to Patterns

Example of Refactoring

Conclusion

Chapter 17 Relentless Integration

Some Practical Advice

Only Check in When Tests Pass at 100 Percent

An Antipattern

Approaches to Integration

What About Code Reviews

The Impact of Collective Code Ownership

Conclusion

part V Delivery

chapter 18 Delivering the System

Delivery Day

Productionizing

Testing

Celebrating Victories

part VI Additional Topics

Chapter 19 Adopting and Adapting XP

Understanding XP

Adopting XP

Methods of Adoption

Adapting XP

XP Practices

Return on Investment

Conclusion

Chapter 20 Scaling XP

Large-Scale Development

Organizing the Large XP Project

Open and Honest Communication

Integration

The Importance of Good People

Conclusion

Chapter 21 The Future of XP

Where XP is Going

On to the Battlefield

A Holonic Approach to XP

Software Development as a Crt

Evolving XP

Appendix: Example

Bibliography

Index