ebook img

Agile Software Development: The Cooperative Game PDF

505 Pages·2006·3.795 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Agile Software Development: The Cooperative Game

AGILE SOFTWARE DEVELOPMENT The Agile Software Development Series Alistair Cockburn and Jim Highsmith, Series Editors Agile software development centers on four values identified in the Agile Alliance’s Manifesto: • Individuals and interactions over processes and tools • Working software over comprehensive documentation • Customer collaboration over contract negotiation • Responding to change over following a plan The development of Agile software requires innovation and responsiveness, based on generating and sharing knowledge within a development team and with the customer. Agile software developers draw on the strengths of customers, users, and developers, finding just enough process to balance quality and agility. The books in The Agile Software Development Series focus on sharing the experiences of such Agile developers. Individual books address individual techniques (such as Use Cases), group techniques (such as collaborative decision making), and proven solutions to different problems from a variety of organizational cultures. The result is a core of Agile best practices that will enrich your experience and improve your work. Titles in the Series: Steve Adolph, Paul Bramble, Alistair Cockburn, and Andy Pols; Patterns for Effective Use Cases;0201721848 Alistair Cockburn; Agile Software Development, Second Edition; 0321482751 Alistair Cockburn; Crystal Clear; 0201699478 Alistair Cockburn; Surviving Object-Oriented Projects; 0201498340 Alistair Cockburn; Writing Effective Use Cases;0201702258 Anne Mette Jonassen Hass; Configuration Management Principles and Practice; 0321117662 Jim Highsmith; Agile Software Development Ecosystems; 0201760436 Jim Highsmith; Agile Project Management;0321219775 Craig Larman; Agile and Iterative Development; 0131111558 Lars Mathiassen, Jan Pries-Heje, and Ojelanki Ngwenyama; Improving Software Organizations; 0201758202 Mary Poppendieck and Tom Poppendieck;Lean Software Development;0321150783 Jean Tabaka; Collaboration Explained;0321268776 Kevin Tate; Sustainable Software Development; 0321286081 For more information visit www.awprofessional.com/series/agile AGILE SOFTWARE DEVELOPMENT Second Edition The Cooperative Game Alistair Cockburn Upper Saddle River, NJ • Boston • Indianapolis • San Francisco New York • Toronto • Montreal • London • Munich • Paris • Madrid Cape Town • Sydney • Tokyo • Singapore • Mexico City Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trade- marks. Where those designations appear in this book, and the publisher was aware of a trademark claim, the desig- nations have been printed with initial capital letters or in all capitals. The author and publisher have taken care in the preparation of this book, but make no expressed or implied war- ranty of any kind and assume no responsibility for errors or omissions. No liability is assumed for incidental or con- sequential damages in connection with or arising out of the use of the information or programs contained herein. The publisher offers excellent discounts on this book when ordered in quantity for bulk purchases or special sales, which may include electronic versions and/or custom covers and content particular to your business, training goals, marketing focus, and branding interests. For more information, please contact: U.S. Corporate and Government Sales (800) 382-3419 [email protected] For sales outside the United States please contact: International Sales [email protected] This Book Is Safari Enabled The Safari‚ Enabled icon on the cover of your favorite technology book means the book is avail- able through Safari Bookshelf. When you buy this book, you get free access to the online edition for 45 days. Safari Bookshelf is an electronic reference library that lets you easily search thou- sands of technical books, find code samples, download chapters, and access technical information whenever and wherever you need it. To gain 45-day Safari Enabled access to this book: • Go to http://www.awprofessional.com/safarienabled • Complete the brief registration form • Enter the coupon code 6MA8-6M4C-MTAV-7ZC6-C7GH If you have difficulty registering on Safari Bookshelf or accessing the online edition, please e-mail customer- [email protected]. Visit us on the Web: www.awprofessional.com Library of Congress Cataloging-in-Publication Data: Cockburn, Alistair. Agile software development : the cooperative game / Alistair Cockburn. -- 2nd ed. p. cm. ISBN 0-321-48275-1 (pbk. : alk. paper) 1. Computer software--Development. I. Title. QA76.76.D47C634 2006 005.1--dc22 2006025802 Copyright © 2007 Pearson Education, Inc. All rights reserved. Printed in the United States of America. This publication is protected by copyright, and per- mission must be obtained from the publisher prior to any prohibited reproduction, storage in a retrieval system, or transmission in any form or by any means, electronic, mechanical, photocopying, recording, or likewise. For infor- mation regarding permissions, write to: Pearson Education, Inc. Rights and Contracts Department 501 Boylston Street, Suite 900 Boston, MA 02116 Fax: (617) 671-3447 ISBN 10: 0-321-48275-1 ISBN 13: 978-0-32-148275-4 Text printed in the United States on recycled paper at RR Donnelly in Crawfordsville, Indiana. Third printing, October 2007 To Aidan and Eve This page intentionally left blank CONTENTS LIST OF FIGURES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi LIST OF STORIES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii PREFACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxi PREFACE TO 2ND EDITION. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxxi 0 UNKNOWABLE AND INCOMMUNICABLE 1 The Problem with Parsing Experience . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 The Impossibility of Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Three Levels of Listening . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 So, What Do I Do Tomorrow? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 0.1 UNKNOWABLE AND INCOMMUNICABLE: EVOLUTION 21 Communication and Shared Experience. . . . . . . . . . . . . . . . . . . . . . . . . .23 Shu-Ha-Ri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24 CHAPTER 1 A COOPERATIVE GAME OF INVENTION AND COMMUNICATION 27 Software and Poetry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Software and Games . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 A Second Look at the Cooperative Game . . . . . . . . . . . . . . . . . . . . . . . 37 What Should This Mean to Me? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 CHAPTER 1.1 A COOPERATIVE GAME OF INVENTION AND COMMUNICATION: EVOLUTION 47 The Swamp Game. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49 Competition Within Cooperation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50 Other Fields as Cooperative Games. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52 Software Engineering Reconstructed. . . . . . . . . . . . . . . . . . . . . . . . . . . . .53 vii viii • CONTENTS CHAPTER 2 INDIVIDUALS 65 Them’s Funky People . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Overcoming Failure Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 Working Better in Some Ways than Others . . . . . . . . . . . . . . . . . . . . . . 79 Drawing on Success Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 What Should I Do Tomorrow? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 CHAPTER 2.1 INDIVIDUALS: EVOLUTION 99 Strategy Balancing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 CHAPTER 3 COMMUNICATION, COOPERATING TEAMS 105 Convection Currents of Information . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 Jumping Communication Gaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 Teams as Communities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 Teams as Ecosystems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139 What Should I Do Tomorrow? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 CHAPTER 3.1 TEAMS: EVOLUTION 143 A Sample Office Layout Revisited . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145 CHAPTER 4 METHODOLOGIES 147 An Ecosystem That Ships Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 Methodology Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 Methodology Design Principles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 XP under Glass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 Why Methodology at All? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 What Should I Do Tomorrow? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 CHAPTER 4.1 METHODOLOGIES: EVOLUTION 207 Methodologies versus Strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 Methodologies across the Organization . . . . . . . . . . . . . . . . . . . . . . . . 210 Process as Cycles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212 Describing Methodologies More Simply. . . . . . . . . . . . . . . . . . . . . . . . 214 CONTENTS • ix CHAPTER 5 AGILE AND SELF-ADAPTING 217 Light but Sufficient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Agile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 Becoming Self-Adapting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 What Should I Do Tomorrow? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 CHAPTER 5.1 AGILE AND SELF-ADAPTING: EVOLUTION 241 Misconstruing the Message. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .244 Evolution of the Agile Methodologies. . . . . . . . . . . . . . . . . . . . . . . . . . .261 New Methodology Topics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .273 Persistent Questions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .290 Agile Outside Software Development. . . . . . . . . . . . . . . . . . . . . . . . . . .311 CHAPTER 6 THE CRYSTAL METHODOLOGIES 335 Shaping the Crystal Family . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337 Crystal Clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340 Crystal Orange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342 Crystal Orange Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344 What Should I Do Tomorrow? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350 CHAPTER 6.1 THE CRYSTAL METHODOLOGIES: EVOLUTION 351 The Crystal Genetic Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .353 Crystal Clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .358 Stretching Crystal Clear to Yellow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .361 APPENDIX A THE AGILE SOFTWARE DEVELOPMENT MANIFESTO 367 The Agile Alliance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369 The Manifesto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370 Supporting the Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373 APPENDIX A.1 THE AGILE SOFTWARE DEVELOPMENT MANIFESTO AND THE DECLARATION OF INTERDEPENDENCE 379 The Agile Manifesto Revisited . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .381 The Declaration of Interdependence . . . . . . . . . . . . . . . . . . . . . . . . . . . .384

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.