- Paperback: 304 pages
- Publisher: Prentice Hall; 1 edition (July 5, 1996)
- Language: English
- ISBN-10: 0132076632
- ISBN-13: 978-0132076630
- Product Dimensions: 8 x 0.6 x 10 inches
- Shipping Weight: 1.2 pounds (View shipping rates and policies)
- Average Customer Review: 2 customer reviews
- Amazon Best Sellers Rank: #2,387,236 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
How to Build Shlaer-Mellor Object Models 1st Edition
Use the Amazon App to scan ISBNs and compare prices.
The Amazon Book Review
Author interviews, book reviews, editors picks, and more. Read it now
From the Publisher
In their attempts to apply the highly effective Object-Oriented Analysis method to real projects, many engineers often encounter numerous organizational, political, and technical obstacles that hamper their success with OOA and discourage their efforts. For such engineers, this easy-to- use reference guide is the next best thing to having an expert OOA analyst at their side. Identifies the common organizational, political, and technical obstacles and provides practical solutions, illustrated with anecdotes and examples.
From the Back Cover
This book shows you how to build Object Information models that:
- Resolve complex, subtle and conflicting application requirements
- Lead to simplified state and process models
- Can be translated into a reliable implementation
Plus Practical Advice On:
- How to write useful model descriptions
- How to get the most out of binary, reflexive, associative and supertype relationships
- How to compare different model solutions of the same problem and pick the best one
Browse award-winning titles. See more
Top customer reviews
There was a problem filtering reviews right now. Please try again later.
The book is divided into three parts. The first addresses basic modelling concepts, the second describes practices for building useful models, and the third part provides details of some common analysis model patterns.
The first part reinforces the basic concepts of the Shlaer-Mellor objectinformation model, but does so through more detailed, and practical examples than the original Shlaer-Mellor text. This is not surprising as the original text is a basic introductory teaching aid and this is more of a practitioners guide which has the benefit of ten years experience. However, the added detail and the extended treatment is worthwhile. A fine example of extended value of the model can be found in Chapter 1 with the description of the different object categories that can be found on a model. Starr has added a number of new categories to the original five categories defined by Shlaer-Mellor and his description of the spectrum of objects from concrete objects to abstract objects is very well done. The author's writing style is peppered with some light humour which is a nice touch. His description of a 'soft' object as "one that you can't kick" being an example.
The next few chapters continue the description of Shlaer-Mellor fundamentals supported by examples. Relationships are given the in-depth treatment they deserve with chapter topics moving from simple relationships in Chapter 3 to more advanced subtyping in Chapter 7. Each chapter contains a number of answers to frequently asked questions that provide some more useful information. I felt the answers to these questions could have been done in a little more detail and perhaps a greater number of questions would also have been worthwhile.
The second part of the text comprises five chapters that provide more of the "how to" advice around constructing models. Chapter 8 informs us how to recognise, and avoid "model hacking". A phenomena where the modeller starts focusing on modelling and playing with boxes, lines, etc. in the vain hope of being able to accurately capture a concept or set of concepts. The author provides some useful symptoms for model hacking, such as "People nod politely when you explain your model, but you can tell they just don't get it", and "you have no idea whether your model is complete - or ever will be". This hacking should be replaced by taking a step back and focusing on understanding the problem domain. At this point the distinction between analysis and modelling is introduced, and the usefulness of informal sketches is argued for. This is a good chapter that many an inexperienced modeller would be wise to read. It offers some down-to-earth wisdom from someone who has been there.
As a past practitioner of the Shlaer-Mellor method I found myself nodding my head in agreement with the author on his stressing the importance of writing descriptions to support the graphic model. So many times have I felt that the mere existence of object, attribute, and relationship descriptions would increase the comprehensibility of the models for a reviewer and also lead to models of higher quality. The author provides five excellent reasons for writing descriptions in Chapter 9. Each is backed up through lucid explanations of examples from previous projects. However, the use of descriptions to support the graphical models is useful which ever method you are using. So the spirit of this set of chapters applies to all methods.
Once the importance of descriptions has been presented, the author provides some advice on how to write object, attribute and relationship descriptions in Chapters 10, 11 and 12 respectively. Each of these is well written and the experience of the author certainly comes through his pragmatic real-world examples.
The third part of the text describes some common object modelling patterns. These are not design patterns, but analysis patterns. Topics covered include reflexive patterns, network patterns and linear patterns. A whole chapter is devoted to addressing whether zero, one or many is good enough for the multiplicity of relationships. This is worthwhile as this is a frequently asked question. The author provides some convincing reasons why it is, and in doing so provides some insight into the value of models themselves and the codification of application rules and policies. I felt that the real value of this book for me came through parts 2 and 3. The first part was more of a repetition of the Shlaer-Mellor fundamentals as described in their original text, however the use of greater examples and some added concepts did serve to keep me interested. For the novice however, part 1 will be very useful. Parts 2 and 3 however, are full of valuable, practical advice written in a convincing style.
Overall, I like this book. It is written in a style that is easy to read and there are numerous ideas, idioms and techniques that can be applied to Shlaer-Mellor projects. As I also pointed out, many of the useful ideas can actually be employed irrespective of the method being used, thus increasing the books applicability. The one disappointment was that the book only addresses the construction of object information models, and does not address later models in the Shlaer-Mellor method such as state models, object communication models, thread-of-control chart, etc. This certainly does not mean the book is not useful, far from it in fact, but it does mean that we have to wait for the next book to gain from the authors deep experience.