A common problem with most resources on requirements specifications is that they emphasize structural models to the near exclusion of behavioral models—focusing on what the software is, rather than what it does. If they do cover behavioral models, the coverage is brief and usually focused on a single model.
Designed to meet the hands-on needs of those working in the field, especially those concerned with testing, Modeling Software Behavior: A Craftsman’s Approach provides engineers, developers, and technicians with a detailed treatment of various models of software behavior that will support early analysis, comprehension, and model-based testing.
Review By: Robert Watkins
Professor Jorgensen raises the bar for what is considered essential knowledge of software modeling techniques. In this book he provides a broad view of techniques starting with simple decision tables onward to complex object-oriented models. Each chapter, dedicated to one type of model, comes with practice questions which allow you to practice what you've just read.
I particularly was excited to learn more about petri nets and state charts. These are both enhancements to the common state-transition diagram and are useful for more complex interactions. While Jorgensen does not mention specific tools, these two modeling techniques are most fully utilized in conjunction with CASE tools.
If you're reading or writing functional or technical specifications, then this is a good book for you. This book can also help business analysts, developers, and quality assurance teams.