Always Learning

Agile Software Development Ecosystems
Jim Highsmith

ISBN-10: 0201760436
ISBN-13:  9780201760439

Publisher:  Addison-Wesley Professional
Copyright:  2002
Format:  Paper; 448 pp
Published:  03/26/2002
Status: Instock


Customers outside the U.S., click here.


Print this content

In this section:


Description


Features


Table of Contents



Foreword.


Preface.

Finding a Balance.

Fundamental Questions.

What Kinds of Problems Does Agility Solve Best?

What Is Agility?

What Are Agile Software Development Ecosystems?

A Chaordic Perspective.

Collaborative Values and Principles.

A Barely Sufficient Methodology.

Changing Perspectives.



Introduction.

Book Organization and Conventions.

The Major Agile Ecosystems and Leaders.

Scrum.

Dynamic Systems Development Method (DSDM).

Crystal Methods.

Feature-Driven Development (FDD).

Lean Development (LD).

Extreme Programming (XP).

Adaptive Software Development (ASD).

Acknowledgments.

The Agile Software Development Series.

I. PROBLEMS AND SOLUTIONS.

1. The Change-Driven Economy.

Turbulence: Bubbles versus Trends.

Exploration versus Optimization.

Exploratory Projects.

Command-Control versus Leadership-Collaboration Cultures.

Thriving at the Edge.

2. IDX Systems Corporation.

The IDX Story.

An Agile Group in Action.

3. Agility.

Agility.

Creating and Responding to Change.

Nimbleness and Improvisation.

Conformance to Actual.

Balancing Flexibility and Structure.

“Agile” Studies.

Product Development in Internet Time.

“Heavy” Agile Projects.

Agile Software Development Ecosystems.

II. PRINCIPLES AND PEOPLE.

4. Kent Beck.

Reflections.

5. Deliver Something Useful.

HAHT Commerce, Inc.

Customer Delivery Principles.

Delivering Customer Value.

Voice of the Customer.

Working Software.

Frequent Delivery.

Work Together Daily.

Practices That Deliver Useful Features.

The Customer-Developer Interface.

Proxy Users.

Domain-Knowledgeable Developers.

Contracts: Shaping Customer Relationships.

Obviously It's Not Obvious.

6. Alistair Cockburn.

Reflections.

7. Rely on People.

ThoughtWorks.

Who Are You Calling Average?

Trust, Mistrust, and Communications.

Talent, Skill, and Process.

Process versus Skill.

Artifacts and Information Flow.

Innovation and Creativity.

The Fall and Resurrection of Programming.

Software through People.

8. Ken Schwaber.

Reflections.

9. Encourage Collaboration.

The Modern Transport Team at ITL.

A Cooperative Game of Invention and Communication.

Practice versus Process.

Documentation Is Not Understanding.

The Dimensions of Collaboration.

Real Teams.

10. Martin Fowler.

Reflections.

11. Technical Excellence.

The PDFS Team at Generali Group.

Agile Is Not Ad Hoc.

Removal of Defects.

Focus on Code.

Simple Design.

Big Bang versus Incremental.

Modeling and Abstraction.

Domain Recognition.

Documentation versus Conversation.

Specialists versus Generalists.

Quality versus Speed.

Establishment versus Anti-establishment.

Values and Principles.

Reflections.

12. Ward Cunningham.

Reflections.

13. Do the Simplest Thing Possible.

The Survey Controller Team at Trimble Navigation.

Musashi.

The Three Faces of Simplicity.

Simplicity as Minimalism.

Simplicity as Good Design.

Simplicity as Generative Rules.

Adapting Simple Rules.

A Final Note on Simplicity.

14. Jim Highsmith.

15. Be Adaptable.

The Mustang Team at Cellular, Inc.

The Great Divide: Predictability or Adaptability.

Our Changing Business Ecosystem.

Embracing Change.

Facilitate Change.

View Rework as a Virtue.

Control Final Components.

Constant Feedback at Multiple Levels.

Multiple Process Levels.

Balancing Adaptation with Anticipation.

Putting Lipstick on a Bulldog.

The Cost of Change.

Conform to Actual: Measuring Success.

Adaptability Is a Mindset.

16. Bob Charette.

Reflections.

III. AGILE SOFTWARE DEVELOPMENT ECOSYSTEMS.

17. Scrum.

The Scrum Process.

Pre-Sprint Planning.

Sprint.

Post-Sprint Meeting.

Monitoring Progress.

Scrum's Contributions.

18. Dynamic Systems Development Method.

Arie van Bennekum.

DSDM Principles.

The DSDM Process.

DSDM's Contributions.

19. Crystal Methods.

Methodology Design Principles.

The Crystal Framework.

Crystal Method Example: Crystal Clear.

Crystal's Contributions.

20. Feature-Driven Development.

The Singapore Project.

The FDD Process Model.

Process 1: Develop an Overall Model.

Process 2: Build a Features List.

Process 3: Plan by Feature.

Process 4: Design by Feature.

Process 5: Build by Feature.

Beyond the FDD Process Description.

Conceptual Similarities and Differences.

FDD's Contributions.

21. Lean Development.

EuroTel.

The Strategic Foundation of Lean Development.

Lean Development's Origins.

What Is Lean Development?

The Lean Development Environment.

Lean Development's Contributions.

22. Extreme Programming.

XP--The Basics.

XP Practices.

Values and Principles.

XP's Contributions.

23. Adaptive Software Development.

A Change-Oriented Life Cycle.

The Basic ASD Life Cycle.

Speculate: Initiation and Planning.

Collaborate: Concurrent Feature Development.

Learn: Quality Review.

Leadership-Collaboration Management.

ASD's Contributions.

IV. DEVELOPING AN ASDE.

24. Articulating Your Ecosystem.

Opportunity and Problem Domains.

Cultural Domain.

The Competence Culture.

The Control Culture.

The Collaboration Culture.

The Cultivation Culture.

Cultural Relativism.

Matching Methodology to Opportunity and Culture.

Methodology Selection.

Articulate Values and Principles.

25. Designing Your Agile Methodology.

Methodology Expectations.

Methodology Elements and the System of Practices.

Keep It Simple.

Practices and Principles

Methodology Design Principles.

Frameworks, Templates, and Scenarios.

Phase and Gate Life Cycle Frameworks.

Problem Domain Templates.

Scenarios.

Collaborative Methodology Design Steps.

Evaluate Project Objectives and Characteristics.

Design a Methodology Framework, Templates, and Scenarios.

Customize Templates to the Team.

A Customizing Approach.

Adapt the Template to Use.

Scaling.

Methodology Scaling: Balancing Optimizing and Adapting Elements.

Collaboration Scaling.

Architecture and Integration Scaling.

Agile Methodologies for the Enterprise.

26. The Agile Metamorphosis.

Chaordic Perspective.

Collaborative Values and Principles.

Barely Sufficient Methodology.

The Agility Ratings.

Final Thoughts.

Bibliography.

Index. 0201760436T04092002



Back to top

Print this content

In this section:


Sample Chapter

View a Sample Chapter PDF:/samplechapter/0201760436.pdf


Author Bios

Jim Highsmith is a well-known consultant, software developer, writer, and speaker. He is a founding member of the AgileAlliance, serving on its first board, and is coauthor of the Agile Manifesto. Jim is director of the Agile Project Management Advisory Service for the Cutter Consortium. He is also the author of Adaptive Software Development (Dorset House), winner of the 2000 Jolt Award.



0201760436AB03112002


Backcover Copy

In a highly volatile software development environment, developers must be nimble, responsive, and able to hit a moving target--in short, they must be agile. Agile software development is designed to address this need for speed and flexibility. Agility describes a holistic, collaborative environment in which you can both create and respond to change by focusing on adaptability over predictability, people over process. Agile software development incorporates proven software engineering techniques, but without the overhead and restrictions of traditional development methodologies. Above all, it fulfills its promise of delivering software that serves the client's business needs.

Written by one of the leaders of the Agile movement, and including interviews with Agile gurus Kent Beck, Robert Charette, Alistair Cockburn, Martin Fowler, Ken Schwaber, and Ward Cunningham, Agile Software Development Ecosystems crystallizes the current understanding of this flexible and highly successful approach to software development. It presents the key practices of all Agile development approaches, offers overviews of specific techniques, and shows how you can choose the approach that best suits your organization.

This book describes--in depth--the most important principles of Agile development: delivering value to the customer, focusing on individual developers and their skills, collaboration, an emphasis on producing working software, the critical contribution of technical excellence, and a willingness to change course when demands shift. All major Agile methods are presented:

  • Scrum
  • Dynamic Systems Development Method
  • Crystal Methods
  • Feature-Driven Development
  • Lean Development
  • Extreme Programming
  • Adaptive Software Development

Throughout the book, case stories are used to illustrate how Agile practices empower success around the world in today's chaotic software development industry. Agile Software Development Ecosystems also examines how to determine your organization's Agile readiness, how to design a custom Agile methodology, and how to transform your company into a truly Agile organization.



0201760436B03042002

Back to top

Print this content

This product is a member of the following series. Click on the series name to see the full list of products in the series.

Back to top

Log in to the Instructor Resource Center

Login name: 

  Password: 

Forgot login/password?  |  Need to redeem an access code?

        

Instructor Resource Center File Download

This work is protected by local and international copyright laws and is provided solely for the use of instructors in teaching their courses and assessing student learning. Dissemination or sale of any part of this work (including on the World Wide Web) will destroy the integrity of the work and is not permitted. The work and materials from this site should never be made available to students except by instructors using the accompanying text in their classes. All recipients of this work are expected to abide by these restrictions and to honor the intended pedagogical purposes and the needs of other instructors who rely on these materials.

Cancel     I accept, proceed with download

Print this content

Pearson Higher Education offers special pricing when you choose to package your text with other student resources. If you're interested in creating a cost-saving package for your students contact your Pearson Higher Education representative.

Back to top