Books

Books : reviews

Dean Leffingwell, Don Widrig.
Managing Software Requirements: a unified approach.
Addison Wesley. 2000

(read but not reviewed)

Despite the wealth of development knowledge, experience, and tools generally available today, a substantial percentage of software projects continue to fail, often because requirements are not correctly determined and defined at the outset, or are not managed correctly as the project unfolds. Managing Software Requirements focuses on this critical cause of failure and offers a practical, proven approach to building systems that meet customers’ needs—on time and within budget.

Using an informal, approachable style, their own war stories, and a comprehensive case study the authors show how designers and developers can effectively identify requirements by employing the power of use cases and more traditional forms of requirements expression. The book illustrates proven techniques for determining, implementing, verifying, and validating requirements. It describes six vital Team Skills for managing requirements throughout the lifecycle of a project: Analyzing the Problem, Understanding User Needs, Defining the System, Managing Scope, Refining the System Definition, and Building the Right System. Managing Software Requirements specifically addresses the ongoing challenge of managing change and describes a process for assuring that project scope is successfully defined and agreed upon by ail stakeholders.

Topics covered include:

• The five steps in problem analysis
• Business modeling and system engineering
• Techniques for eliciting requirements from clients, users, developers, and other stakeholders
• Applying and refining use cases
• Prototyping
• Organizing and managing requirements information
• Establishing project scope and managing customers
• Using both informal and technical methods for specifying requirements
• How to measure and improve the quality of your product’s requirements
• Moving from requirements to implementation
• Verifying and validating the system
• Managing change