Enterprise-Scale Agile Software Development  book cover
1st Edition

Enterprise-Scale Agile Software Development

  • This format cannot be shipped to your selected country.
ISBN 9781439803219
Published November 18, 2009 by CRC Press
382 Pages 62 B/W Illustrations

FREE Standard Shipping

Prices & shipping based on shipping country


Book Description

Enterprise-Scale Agile Software Development is the collective sum of knowledge accumulated during the full-scale transition of a 1400-person organization to agile development—considered the largest implementation of agile development and Scrum ever attempted anywhere in the world.

Now James Schiel, a certified Scrum trainer and member of the Scrum Alliance, draws from his experience at the helm of that global four-year project to guide you and your organization through the transition. He lends his insight on how you can use Scrum as an organizational framework and implement XP practices to define how software is written and tested. He provides key information and tools to assess potential outcomes and then make the best corresponding choices in any given situation.

Schiel sequences chapters to match typical developmental progression, and in addition to practical guidance, he provides a tool kit from which you can take ideas and select what works for you. Covering quality development practices based on ISO 9001, which help you create consistently high-quality software in a cost-efficient manner, this invaluable resource shows you how to—

  • Improve project management practices and product quality assurance
  • Adopt new management methods and requirements
  • Involve your current customers in development, while inviting new ones

Much more than a mere "body of knowledge," this volume goes beyond standardizing agile and Scrum practices. It breaks up the process into manageable tasks, illustrating how to set the stage for the change, plan it, and then initiate it. Using the methods and information presented, any organization should be able to achieve a nearly seamless transition to agile.

Table of Contents

Web Site
About This Book
A Balancing Act
Success Factors
Suggested Readings
Why Agile?
Myths about Agile Development
Reasons to Stay Away from Agile
How Your Organization Will Benefit from Agile
Improved Software Quality
Improved Organizational Commitment
Reduced Waste
Improved Customer Relationships

Section I: Setting the Stage for a Transition
Transitional Concepts
What Is Agile Development?
Product Backlog
Beta Test
Workflow Summary
The Product Backlog
Written in a Manner That Can Be Groomed
Under Constant Reprioritization and Continually Emergent
Transition Barriers
People Barriers
Organizational Barriers
Management in an Agile Environment
Getting Management Ready for the Transition
An Effective Organizational Arrangement for Scrum Teams
Hiring New Scrum Team Members
The Care and Feeding of Scrum Teams
Improve Organization Performance
Improve Scrum Team Performance
Improve Employee Performance
Support Scrum Teams
Care and Feeding: Summary

Section II: Planning the Transition
Create the Transition Team
The Transition Team Lead
The Executive Sponsor
Define the Organizational Agreements
Document the Agreements
Determine Transition Goals
Measuring and Monitoring the Transition
Improved Productivity through Reduced Defects
Improved Performance through Increased Feature Value
Setting Control Limits to Manage Corrective Actions
Avoiding Organizational Dysfunction Caused by Measurements
Create the Transition Backlog
Bringing the Transition Team Together

Section III: Starting the Transition
Exciting and Really Challenging
Basic Approach
Beginning Transition Sprint 1
The Sprint Schedule
The Transition Backlog
The Structure of the Transition Backlog
Grooming: Reducing Backlog Items to Sprint Size
Sprint Planning
What’s the Big Difference between Hours and Points?
Building the Sprint Backlog
When Teams Attack! (The Backlog, That Is)
When Undercommitment Is the Order of the Day
Committing to Work in the First Transition Sprint
Sprint Reviews for Transition Sprints
Sprint Retrospectives for Transition Sprints
Continuing beyond Transition Sprint 1
Create the Transition Budget
Training and Coaching
Software and Hardware
Develop the Transition Communication Plan
Project Information Storage
Create the Training Plan
Basic Concepts
Agile Project Structure
Roles in an Agile Project
Matching Skills to Roles
Skills Become Training Modules
The Training Modules
Defining the Tracks
Executing the Tracks
The Role of Coaches in the Agile Transition
Team Coaching Requirements
Overload the Scrum Teams
Scrum Masters and Scrum Product Owners
Prove Your Skill First
Facilities Planning
Team Rooms
Setting Up a Team Room
Employee Directories
Employee Telephones
Private Spaces
Server Rooms
The Facilities Plan
Selecting the Pilot Projects for the Agile Transition
Define Your Goals
Set Organizational Expectations
Selecting Your Pilot Project
Obstacles to a Successful Pilot Project
Dysfunctions Come with the Territory
Team Co-location
Lack of Expertise or Necessary Skills
Improper Development Metrics
Setting Your Project Up for Success
People First
Everyone Needs to Know Their Job
Introduce XP Practices Carefully
Get a Good Product Owner
Keep It Visible
Never Skip the Retrospective
Tools in the Agile Enterprise
Continuous Integration/Build
Sample Products
Automated Testing
Sample Products
Sprint and Backlog Management
Sample Products
Team Communication
Managing Customer Involvement
Selecting the Right Customer
Is the Candidate Qualified?
Is the Candidate a Potential Threat?
Will the Candidate Cooperate?
Managing the Involved Customer
The Helpful Customer Strategy: Involve
The Not Useful Customer Strategy: Watch
The Not Helpful Candidate Strategy: Protect
The Helpful Trouble Customer Strategy: Collaborate
Managing Customer Involvement in a Large Organization

Section IV: Creating the Agile Organization
Agile Project Management— Getting Started
Scheduling in an Agile Project
Scheduling Challenges
Determining the Project’s Estimated Costs
Planning and Staffing
Specialization and the Unbalanced Backlog
A Balancing Act
Architecture Definition
Unprepared Backlog Items
Getting Your Project Started
Creating the Release Goals
Create/Update Defined Processes and Policies
Create/Update the DONEness Definition
Determine Team Staffing
Prepare the Product Backlog for Grooming
Create the Sprint Schedule
Sprint Schedules and Large Project Considerations
The Unwanted Stabilization Sprint
When the Automated Testing Isn’t Sufficient
Begin Backlog Grooming Work Sessions
Agile Project Management: Monitoring, Reporting, and Controlling
Monitoring Project Progress
Burning Down the Product Backlog
The Release Plan
Feature Completion
Controlling the Project
Front-Load Your Risk
Shorten Your Sprints to Improve Visibility
Manage Interactions with Nonagile Development Teams and Providers
Monitor Scope-outs
Agile Analysis
User Stories and Related Terminology
The Life of a User Story
The Next Great Idea
Grooming the Product Backlog
Avoiding the Waterfall User Story
Making Sure the Backlog Is Ready for Grooming
Scheduling the Workshops
Setting Up the Workshop
Discussing a Backlog Item
Backlog Items That Need Special Handling
Remembering What We’ve Learned
Launching Scrum Teams
Starting a New Scrum Team
Establish a Team Identity
Establish Team Ground Rules
Establish Team DONEness Definition
Preparing the Product Backlog: The Team’s First Sprint
Getting Ready for Sprint Planning
Running a Successful Daily Scrum
Getting Ready for Sprint Review
Going to the First Sprint Retrospective
Removing Obstacles
Continuous Learning
Managing Scrum Teams
The Edge of Chaos
Management in a Chaotic System
Continuous Learning
Encourage Change and Chaos
Fluidity of Structure
Management in an Agile Environment
The Front-Line Manager
General Management Responsibilities
Helping to Improve Team Performance
Agile Product Management
Large-Scale Product Ownership
The Extended Product Backlog
The Product Backlog
The Information Library
The Defect Management System
Adding Items to the Product Backlog
Adding Defects to the Product Backlog
Setting Up Your Product Backlog Items for Success
Estimation of Problem Complexity
Acceptance Criteria
Performance Constraints
Specialized Skills
Prioritizing Items in the Product Backlog
Managing System Constraints
Incorporating ISO 9001 into the Agile Transition
Creating Your Policy and Process Documentation
Development Processes
Focusing on Customers
Resource Management
Infrastructure and Work Environment
Measurement, Analysis, and Improvement
Review and Revise
Leveraging Scrum to Improve Process
Using the DONEness Definition
Using Sprint Planning
Using Sprint Reviews
Using Sprint Retrospectives
Formal Reviews

View More



James Schiel, CEO and owner of Artisan Software Consulting, is a Certified Scrum Trainer with a strong background in enterprise-level Scrum installations. Prior to founding Artisan, Schiel worked at a large, multi-national software development company for 23 years, where he worked initially as a developer, then as a manager for 16 years. He eventually played an instrumental role in creating one of the largest Scrum installations in the world. As a business process engineer, he helped identify, document, and implement best practices for enterprise Agile Development.