|
|
josseybass.com
Table of Contents
Preface.
Introduction. 1. Understanding Flexibility. Dealing with Change. How Much Flexibility?. The Roots: Agile Software Development. Moving from Software to Other Products. A Note of Caution. The Project Analyzer. Summary. 2. Customers and Product Requirements. The Fallacy of Frozen Requirements. The Value of Customer Feedback. Specify at a Higher Level. Anticipate Customer Needs. Pitfalls of Customer Feedback. Summary. 3. Modular Product Architectures. Modular versus Integral Architectures. Examples of Architectural Choices. Architectural Approaches. Four Steps in Designing an Architecture. Architectural Decisions. Architecture at the Design Level. Shifting the Hardware-Software Boundary. Summary. 4. Experimentation. Kinds of Experiments. The Value of Failure. Exploration as Experimentation. Front-Loaded Prototyping. Testing. Summary. 5. Set-Based Design. What Is Set-Based Design? Benefi ts of Set-Based Design. Managing Set-Based Design. Delaying Decisions. The Diffi culties. Summary. 6. Development Teams and People Factors. Teams and Flexibility. Having the Right People. Desirable People Qualities. Team Qualities. Summary. 7. Decision Making. Improving Decision-Making Flexibility. People and Decisions. Uncertainty and Decisions. Decision Trees. Real Options Thinking. Summary. 8. Project Management. Flexible versus Mainstream Project Management. The Role of a Flexible Project Manager. Project Planning. Timeboxing. Project Risk Management. Project Metrics. Project Retrospectives. Summary. 9. Product Development Processes. Emergent Processes. The Essentials of Flexible Processes. Balancing Structure with Flexibility. Bottlenecks and Queues. Useful Concepts from Agile Software Development. Summary. 10. Implementing Flexibility. Five Paradoxes. Transitions Are the Crux. Top-Down Change. Bottom-Up Change. Summary. Closing. Notes. Bibliography. Customer Council. The Author. Index. |