Books

Books : reviews

Doug Rosenberg, Kendall Scott.
Use Case Driven Object Modeling with UML: a practical approach.
Addison Wesley. 1999

Today, software practitioners are faced with the frustrating reality that there is seldom enough time to properly model an impending project. Even with the widespread acceptance of the Unified Modeling Language (UML), proper modeling is often not completed because aggressive schedules make this practice difficult. This book presents a streamlined approach to UML modeling that includes a minimal but sufficient set of diagrams and techniques you can use to get from use cases to code quickly and efficiently.

Use Case Driven Object Modeling with UML provides practical guidance that shows developers how to produce UML models with minimal startup time, while maintaining traceability from user requirements through detailed design and coding. The authors draw upon their extensive industry experience to present proven methods for driving the object modeling process forward from use cases in a simple and straightforward manner.

Highlights include:

• clear and comprehensive integrated example that evolves throughout the book
• “Top 10” lists summarizing each chapter's most important points
• “Analysis Paralysis Alerts” to heip you steer clear of the common pitfalls in UML modeling
• Extensive discussion of requirements and how to design in a traceable manner
• Omission of all extraneous theory that will not immediately help you get your modeling done
• Practical tips for extending visual modeling tools to make the process work efficiently

Kendall Scott.
The Unified Process Explained.
Addison Wesley. 2002

The Rational Unified Process (RUP) has been widely adopted across the software industry. However, many software developers and managers – especially those working in medium-to-small development organizations – are hesitant to delve into this seemingly complex and time-consuming topic.

The Unified Process Explained is a concise, accessible, and practical guide that’s meant to help significantly shorten the learning curve for practitioners unfamiliar with this methodology. It explains the essentials of the Unified Process (the RUP’s 5 core elements), guides you through the process step-by-step, and shows how you can put the methodology to work on your next project.

The book starts with a useful overview of the history, motivation, key concepts, and terminology of the Unified Process. The author then details the five pillars of development: requirements, analysis, design, implementation, and test workflows. In addition, the book enumerates the four phases of Unified Process development: inception, elaboration, construction, and transition; and it shows how the workflows are integrated into these phases. In laying out the details of this integration, the book illustrates the Unified Process’s most useful feature – its iterative nature.

With this book as your guide, you will gain an understanding of important concepts and activities such as:

• Iterations and increments
• Business and domain modeling
• Identifying actors and use cases
• Prototyping the user interface
• Robustness analysis
• Design and deployment models
• Statechart and activity diagrams
• Implementation models

A large-scale example of an Internet bookstore runs throughout the book to illustrate concepts and techniques. The industry-standard Unified Modeling Language is used to express structure and function. The Unified Process Explained demystifies this valuable methodology and will lead you on your way to successfully applying the Rational Unified Process.

Martin Fowler, Kendall Scott.
UML Distilled: brief guide to the standard object modeling language: 2nd edn.
Addison Wesley. 2000

rating : 2.5 : great stuff
review : 27 March 2001

Now widely adopted as the de facto industry standard and sanctioned by the Object Management Group, the Unified Modeling Language (UML) is a notation all software developers need to know and understand. However, the UML is comprehensive in scope, and not all of it is equally important. The award-winning first edition of UML Distilled was widely praised for being a concise guide to the core parts of the UML and has proved extremely successful in helping developers get up and running quickly. UML Distilled, Second Edition, maintains the concise format but adds significantly updated coverage of use cases and activity diagrams, and expanded coverage of collaborations. It also includes a new appendix detailing the changes between UML versions.

Written for those with a basic understanding of object-oriented analysis and design, this book begins with a summary of UML’s history, development, and rationale; it then moves into a discussion of how the UML can be integrated into the object-oriented development process. The primary author profiles the various modeling techniques in the UML—such as use cases, class diagrams, and interaction diagrams—and describes the notation and semantics clearly and succinctly. He also outlines useful non-UML techniques such as CRC cards and patterns. These descriptions are made even more relevant with a collection of best practices based on the primary author’s experience and a brief Java programming example demonstrating the implementation of a UML-based design. With this tour of the key parts of the UML, readers will be left with a firm foundation upon which to build models and develop further knowledge of the Unified Modeling Language.

What a super little book. This could easily be called “UML in 2 hours” – which is about how long it takes to read. But this is not just a whistle-stop tour of the notation. Fowler give solid pragmatic advice, in his usual lucid readable style, how and when to use each piece of the notation in analysis and design – and, just as importantly, when not to use it. There’s more good solid advice and guidance in here than in many of the larger doorstop-thick tomes.