The art of agile development

The Art of Agile Development contains practical guidance for anyone considering or applying agile development for building valuable software. Plenty of books describe what agile development is or why it helps software projects succeed, but very few combine information for developers, managers, teste...

Descripción completa

Detalles Bibliográficos
Autor principal: Shore, James (-)
Otros Autores: Warden, Shane
Formato: Libro electrónico
Idioma:Inglés
Publicado: Sebastopol, California : O'Reilly 2008.
Edición:1st edition
Colección:Theory in practice
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009626980406719
Tabla de Contenidos:
  • Intro
  • Table of Contents
  • Preface
  • For the Pragmatists
  • Who Should Read This Book
  • About the Études
  • About Pronouns
  • Using Code Examples
  • Safari® Enabled
  • How to Contact Us
  • Acknowledgments
  • James Shore
  • Shane Warden
  • Part I. Getting Started
  • Chapter 1. Why Agile?
  • Understanding Success
  • Beyond Deadlines
  • The Importance of Organizational Success
  • Enter Agility
  • Organizational Success
  • Technical Success
  • Personal Success
  • Chapter 2. How to Be Agile
  • Agile Methods
  • Don't Make Your Own Method
  • The Road to Mastery
  • Find a Mentor
  • Chapter 3. Understanding XP
  • The XP Lifecycle
  • How It Works
  • Planning
  • Analysis
  • Design and coding
  • Testing
  • Deployment
  • Our Story Continues
  • The XP Team
  • The Whole Team
  • On-Site Customers
  • The product manager (aka product owner)
  • Domain experts (aka subject matter experts)
  • Interaction designers
  • Business analysts
  • Programmers
  • Designers and architects
  • Technical specialists
  • Testers
  • Coaches
  • The programmer-coach
  • The project manager
  • Other Team Members
  • The Project Community
  • Stakeholders
  • The executive sponsor
  • Filling Roles
  • Team Size
  • Full-Time Team Members
  • XP Concepts
  • Refactoring
  • Technical Debt
  • Timeboxing
  • The Last Responsible Moment
  • Stories
  • Iterations
  • Velocity
  • Theory of Constraints
  • Mindfulness
  • Chapter 4. Adopting XP
  • Is XP Right for Us?
  • Prerequisite #1: Management Support
  • If management isn't supportive...
  • Prerequisite #2: Team Agreement
  • If people resist...
  • Prerequisite #3: A Colocated Team
  • If your team isn't colocated...
  • Prerequisite #4: On-Site Customers
  • If your product manager is too busy to be on-site...
  • If your product manager is inexperienced...
  • If you can't get a product manager at all...
  • If you can't get other on-site customers...
  • Prerequisite #5: The Right Team Size
  • If you don't have even pairs...
  • If your team is larger than seven programmers...
  • If your team is smaller than four programmers...
  • If you have many developers working solo...
  • Prerequisite #6: Use All the Practices
  • If practices don't fit...
  • Recommendation #1: A Brand-New Codebase
  • If you have preexisting code...
  • Recommendation #2: Strong Design Skills
  • If no one has strong design skills...
  • Recommendation #3: A Language That's Easy to Refactor
  • If your language is hard to refactor...
  • Recommendation #4: An Experienced Programmer-Coach
  • If you have no obvious coach...
  • If your leaders are inexperienced...
  • If you're assigned a poor coach...
  • Recommendation #5: A Friendly and Cohesive Team
  • If your team doesn't get along...
  • Go!
  • The Challenge of Change
  • Final Preparation
  • Applying XP to a Brand-New Project (Recommended)
  • Applying XP to an Existing Project
  • The big decision
  • Bring order to chaos
  • Pay down technical debt
  • Organize your backlog
  • Fix important bugs
  • Move testers forward
  • Emerge from the darkness
  • Applying XP in a Phase-Based Organization
  • Mandatory planning phase
  • Mandatory analysis phase
  • Mandatory design phase
  • Mandatory coding phase
  • Mandatory testing phase
  • Mandatory deployment phase
  • Extremities: Applying Bits and Pieces of XP
  • Iterations
  • Retrospectives
  • Ten-minute build
  • Continuous integration
  • Test-driven development
  • Other practices
  • Assess Your Agility
  • Self-Assessment Quiz
  • Part II. Practicing XP
  • Chapter 5. Thinking
  • Pair Programming
  • Why Pair?
  • How to Pair
  • Driving and Navigating
  • Pairing Stations
  • Challenges
  • Comfort
  • Mismatched skills
  • Communication style
  • Tools and keybindings
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Further Reading.
  • Energized Work
  • How to Be Energized
  • Supporting Energized Work
  • Taking Breaks
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Further Reading
  • Informative Workspace
  • Subtle Cues
  • Big Visible Charts
  • Hand-Drawn Charts
  • Process Improvement Charts
  • Gaming
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Further Reading
  • Root-Cause Analysis
  • How to Find the Root Cause
  • How to Fix the Root Cause
  • When Not to Fix the Root Cause
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Retrospectives
  • Types of Retrospectives
  • How to Conduct an Iteration Retrospective
  • Step 1: The Prime Directive
  • Step 2: Brainstorming
  • Step 3: Mute Mapping
  • Step 4: Retrospective Objective
  • After the Retrospective
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Further Reading
  • Chapter 6. Collaborating
  • Trust
  • Team Strategy #1: Customer-Programmer Empathy
  • Team Strategy #2: Programmer-Tester Empathy
  • Team Strategy #3: Eat Together
  • Team Strategy #4: Team Continuity
  • Impressions
  • Organizational Strategy #1: Show Some Hustle
  • Organizational Strategy #2: Deliver on Commitments
  • Organizational Strategy #3: Manage Problems
  • Organizational Strategy #4: Respect Customer Goals
  • Organizational Strategy #5: Promote the Team
  • Organizational Strategy #6: Be Honest
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Further Reading
  • Sit Together
  • Accommodating Poor Communication
  • A Better Way
  • Exploiting Great Communication
  • Secrets of Sitting Together
  • Making Room
  • Designing Your Workspace
  • Sample Workspaces
  • A small workspace
  • Adopting an Open Workspace
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Further Reading
  • Real Customer Involvement
  • Personal Development
  • In-House Custom Development.
  • Outsourced Custom Development
  • Vertical-Market Software
  • Horizontal-Market Software
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Ubiquitous Language
  • The Domain Expertise Conundrum
  • Two Languages
  • How to Speak the Same Language
  • Ubiquitous Language in Code
  • Refining the Ubiquitous Language
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Further Reading
  • Stand-Up Meetings
  • How to Hold a Daily Stand-Up Meeting
  • Be Brief
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Further Reading
  • Coding Standards
  • Beyond Formatting
  • How to Create a Coding Standard
  • Dealing with Disagreement
  • Adhering to the Standard
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Iteration Demo
  • How to Conduct an Iteration Demo
  • Two Key Questions
  • Weekly Deployment Is Essential
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Reporting
  • Types of Reports
  • Progress Reports to Provide
  • Vision statement
  • Weekly demo
  • Release and iteration plans
  • Burn-up chart
  • Progress Reports to Consider
  • Roadmap
  • Status email
  • Management Reports to Consider
  • Productivity
  • Throughput
  • Defects
  • Time usage
  • Reports to Avoid
  • Source lines of code (SLOC) and function points
  • Number of stories
  • Velocity
  • Code quality
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Further Reading
  • Chapter 7. Releasing
  • "Done Done"
  • Production-Ready Software
  • How to Be "Done Done"
  • Making Time
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • No Bugs
  • How Is This Possible?
  • How to Achieve Nearly Zero Bugs
  • Ingredient #1: Write Fewer Bugs
  • Ingredient #2: Eliminate Bug Breeding Grounds
  • Ingredient #3: Fix Bugs Now
  • Ingredient #4: Test Your Process
  • Ingredient #5: Fix Your Process
  • Invert Your Expectations
  • Questions.
  • Results
  • Contraindications
  • Alternatives
  • Further Reading
  • Version Control
  • Concurrent Editing
  • Time Travel
  • Whole Project
  • Customers and Version Control
  • Keep It Clean
  • Single Codebase
  • Appropriate Uses of Branches
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Further Reading
  • Ten-Minute Build
  • Automate Your Build
  • How to Automate
  • When to Automate
  • Automating Legacy Projects
  • Ten Minutes or Less
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Continuous Integration
  • Why It Works
  • How to Practice Continuous Integration
  • Never Break the Build
  • The Continuous Integration Script
  • To update from the repository
  • To integrate
  • Introducing Continuous Integration
  • Dealing with Slow Builds
  • Multistage Integration Builds
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Collective Code Ownership
  • Making Collective Ownership Work
  • Working with Unfamiliar Code
  • Hidden Benefits
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Documentation
  • Work-In-Progress Documentation
  • Product Documentation
  • Handoff Documentation
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Chapter 8. Planning
  • Vision
  • Product Vision
  • Where Visions Come From
  • Identifying the Vision
  • Documenting the Vision
  • How to Create a Vision Statement
  • Promoting the Vision
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Further Reading
  • Release Planning
  • One Project at a Time
  • Release Early, Release Often
  • How to Release Frequently
  • An Example
  • Adapt Your Plans
  • Keep Your Options Open
  • How to Create a Release Plan
  • Planning at the Last Responsible Moment
  • Adaptive Planning and Organizational Culture
  • Questions
  • Results
  • Contraindications
  • Alternatives
  • Further Reading
  • The Planning Game
  • How to Play.
  • Overcoming disagreements.