Books in Brief: Managing Software Requirements: A Use Case Approach

By Dan Romanchik

08/27/2003

The first thing you notice about “Managing Software Requirements” is that it is the book’s second edition. The first edition, the authors point out, tried to be an encyclopedia of techniques for defining software requirements; however, readers wanted more than just a catalog of processes and procedures. They wanted the book to tell them what to do. That is how the book acquired its subtitle: A Use Case Approach.

This book tackles the problem of defining software requirements by outlining six key phases -- Analyzing the Problem, Understanding User and Stakeholder Needs, Defining the System, Managing Scope, Refining the System Definition and Building the Right System -- in defining a software system’s requirements.

Several chapters are devoted to each phase. For example, in the section on Understanding User and Stakeholder Needs, there are chapters about interviewing, requirements workshops, brainstorming and storyboarding. The real gem of this section is the first chapter, which discusses some of the barriers to getting customers to tell them what it is they need.

The section on Defining the System begins with a use case primer that defines what a use case is and how to use it to define your system. This section also covers vision documents and product management, and how the two are interrelated.

In the fourth section -- Managing Scope -- the authors give some guidance on how to keep a project on the right track. It provides advice on how to keep customers engaged in a project and how to negotiate with them.

The final section -- Building the Right System -- caught my eye because it shows you how to transform the work you did developing use cases into test cases, a process that saves time and yields a more effective test.

As the authors note on the back of the book, “... a substantial percentage of software projects fail because requirements are not correctly determined and defined at the outset and not managed correctly as the project unfolds.” This book will get you off on the right foot, and make sure your application development project continues in the right direction.