Software Development with Linux

Book Review Use Case Modeling

FRI, 01 MAY 2009

Use cases are well known among everybody working with software development. According to Wikipedia, a Use Case is
"a description of a system's behavior as it responds to a request that originates from outside the system."
But, there are many misconception among the software community about what they really are, what are they useful at, how to use them and how to author them.

After having read Use Case Modeling by Kurt Bittner and Ian Spence, I realized that I had some misconceptions myself about this topic.

First, for everybody who think that Use Cases aren't agile, you'll see that you may be wrong about this. In their presentation, you see that Use Case are Agile.

In the 12 chapters contained in the book, and the example they use (a simple ATM system), they show what are a Use Case and a Use Case Model, what are they made of, and how to correctly write them. A lot of emphasis is put on how to do it well, what to watch to prevents errors, and how to brings the most of your Use Cases.

The ~370 pages of this 2002 book are easy to read. The flow of the book start with "easy" stuff, and goes on with adding more details along the way. If more technical authors were writing this well, a lot of software developments books would be better!

I would recommend this books to anybody that is working with software development. From project managers to testers, everybody can learns a lot from this book. If you've never used Use Cases, this will definitely set you up. If you're and old dog, this can help you improve your Use Case models and descriptions.

And if you think Use Cases are no longer valid in today's software development environment, this book may make you realize that you may be wrong.