You have many tools available for use in the software requirements gathering and documentation process. Which tools you use will be determined in part by the methodology used be in Agile or one of the other many forms out there. Many of the methods for requirements gathering utilize something called a Use Case.
While the name of the document may be in a singular format, in reality you will write many Use Case documents to capture the functionality or operation of the system under design. The nature of the Use Case and the variety of software systems being designed means that there is no one size fits all way to document a Use Case.
The book Writing Effective Use Cases provides information on a variety of ways in which to construct your Use Case documentation and you then adapt the methods from the book to fit your specific needs. The author, Alistair Cockburn, is a well know individual within the Agile methodology camp and writes in a style that is both informative and easy to read. Actually, the book is part of The Agile Development Series but no matter what development methodology you are using the information provided will allow you to construct good Use Case documents.
The layout of the book is very well done. The first part of the book covers how to construct your Use Case document and the various possible sections the document can contain. The second section of the book focuses on frequently discussed topics or questions. This allows you to focus in on effectively constructing your Use Case in the first part, and then covering typical questions or topics in the second part.
The third and final part of the book is a real jewel because it is a condensed form of the important points about Use Case creation. It is titled ‘Reminders for the Busy’ and serves to help you down the road when you are in the heat of writing your Use Cases and need to find an answer quickly or when you need to brush up on how to construct a Use Case document.
I do recommend this book for anyone who needs to work with Use Cases in their software requirements process. I have not found documentation or information in such a comprehensive well defined format as how this book presents the material to you. The book is easy to read and understand allowing you to learn the techniques of good Use Case formation and get right into working with them.
Ira Richard Smith