Use Case Driven Object Modeling with UML: A Practical Approach / Edition 1

Paperback (Print)
Used and New from Other Sellers
Used and New from Other Sellers
from $1.99
Usually ships in 1-2 business days
(Save 96%)
Other sellers (Paperback)
  • All (43) from $1.99   
  • New (6) from $12.99   
  • Used (37) from $1.99   

Overview

Applied Use Case Driven Object Modeling with UML: An Annotated e-Commerce Example provides a practical, hands-on guide to putting use case methods to work in real-world situations. This companion workbook to Use Case Driven Object Modeling with UML bridges the gap between the theory presented in the authors' first book, and the practical issues involved in the development of an internet/e-commerce application.

Uniquely conceived as a workbook, featuring an e-commerce system for an on-line bookstore as a running example, the book dissects its design in detail, demonstrates the most common design mistakes, and reveals the correct solutions. The hands-on exercises give you the opportunity to detect, identify, and correct critical errors on your own, before reviewing the solutions provided in the book.

The workbook is structured around the proven ICONIX Process, a streamlined approach to UML modeling designed to avoid analysis paralysis without skipping analysis and design. It presents the four key phases of this minimalist approach to use case driven design: domain modeling; use case modeling; robustness analysis; and sequence diagramming. For each of these topics, the book provides an overview, detailed discussion, top 10 mistakes, and a set of exercises for honing object modeling and design skills.

Another unique aspect of this book is the three chapters on reviews. The authors devote a chapter each to requirements review; preliminary design review; and critical design review. This focus on "designing quality in" by teaching how to review UML models fills a major gap in the published literature.

The book shows you, by example, how to avoid more than 70 specific design errors as shown in the "Top 10" error lists on the inside covers and within each chapter. With the information, examples, and exercises in this book, you will develop the knowledge and skills you need to apply use case modeling more effectively to your next application.

0201432897B04302001


This compact and concise guide to UML models was written for software engineers interested in using UML models immediately. Focusing on a select group of tools and techniques, this practical guide takes you from use cases to code. However, only the final chapter is dedicated to actually writing code.

Read More Show Less

Editorial Reviews

Gregory V. Wilson

Bingo! Ladies and gentlemen, we have a winner -- Use Case Driven Object Modeling with UML, by Doug Rosenberg (with Kendall Scott) has more hot buzzwords in its title than anything that's come across my desk in a long time. It is also a readable, informative, and practical guide to using UML, and will probably replace Fowler's UML Distilled on my recommended reading list.

UML (short for the "Unified Modeling Language") is an everything-for-everyone collection of graphical notations for object-oriented analysis and design. It includes use cases, class hierarchies, state charts, sequence diagrams, and just about everything else that its authoring committee thought might be useful. Most CASE tool vendors have already shipped UML-aware versions of their tools, and many recent books on Java, design patterns, and business reengineering have adopted it for diagramming.

All of which would be good news, except for two things: UML's breadth makes it hard to navigate, and it still leaves an uncomfortably wide gulf between the analysis ("what") and design ("how") phases of a project. The principal value of this book is that it tackles both of these issues head-on. In just eight chapters, Rosenberg (who is the founder and president of ICONIX) presents a slimmed-down core of UML, organized around a four-stage design process. Each stage has clearly defined steps, and concrete milestones that specify what ought to be produced (that is, how to tell when you're finished).

UML's second weakness is addressed by one new bit of notation, which Rosenberg calls a "robustness diagram." While the connection between the general idea of robustness and these diagrams seems a bit tenuous to me, they appear to be a useful bridge between use cases on the one hand, and implementation-oriented diagrams on the other. Their value becomes clear during the development of the book's running example, a simple stock-trading system.

I have only two criticisms of this book. The first is that Rosenberg repeatedly refers to, and discusses, both older design notations and debates about the finer points of UML -- in fact, he devotes an entire appendix to the difference between "uses" and "extends," despite the fact that he clearly doesn't think the difference is significant. This material might be of interest to the cognoscenti, but is out of place in a book aimed at newcomers.

The second criticism of this book is one that I thought I'd never make: It is simply too short. Having finally found a useful, readable, and practical description of a design-centered development methodology, I really wanted a dozen or more examples of each point to work through. If the authors were to produce a companion workbook, I can promise them that they'd have at least one buyer...
Electronic Review of Books

Booknews
Written for software practitioners faced with aggressive schedules, this book presents a streamlined approach to UML modeling that includes a minimal but sufficient set of diagrams and techniques for progressing from use cases to code quickly. Annotation c. Book News, Inc., Portland, OR (booknews.com)
Read More Show Less

Product Details

  • ISBN-13: 9780201432893
  • Publisher: Addison-Wesley
  • Publication date: 3/5/1999
  • Series: Addison-Wesley Object Technology Series
  • Edition description: New Edition
  • Edition number: 1
  • Pages: 192
  • Product dimensions: 7.38 (w) x 9.26 (h) x 0.44 (d)

Meet the Author

Doug Rosenberg, of ICONIX Software Engineering, Inc., has been providing system development tools and training for nearly two decades, with particular emphasis on object-oriented methods. He developed a Unified Booch/Rumbaugh/Jacobson design method in 1993 that preceded Rational's UML by several years. He has produced over a dozen multimedia training courses on object technology, including COMPREHENSIVE COM and COMPLETE CORBA, and is the author of several Addison-Wesley titles.

Kendall Scott is a UML trainer and consultant. With more than sixteen years of experience as a technical writer, he is skilled in converting complex, technical material into understandable and easy-to-use manuals.

Read More Show Less

Read an Excerpt

Theory, in Practice

In our first book, Use Case Driven Object Modeling with UML, we suggested that the difference between theory and practice was that in theory there is no difference between theory and practice, but in practice, there is. In that book, we attempted to reduce OOAD modeling theory to a practical subset that was easy to learn and pretty much universally applicable, based on our experience in teaching this material to people working on hundreds of projects since about 1993.

Now, two years after hitting the shelves, that book is in its fifth printing. But even though our work has been favorably received, it seems like the job isn't all the way done yet. "We need to see more use case and UML modeling examples" is a phrase we've been hearing fairly often over the last couple of years. And, as we've used the first book as the backbone of training workshops where we apply the theory to real client projects, it's become clear that the process of reviewing the models is critically important and not well understood by many folks.

So, although we present a fairly extensive example in our first book, we convinced Addison-Wesley to let us produce this companion workbook, in which we dissect the design of an Internet bookstore, step-by-step, in great detail. This involves showing many common mistakes, and then showing the relevant pieces of the model with their mistakes corrected. We chose an Internet Bookstore because it's relevant to many of today's projects in the Web-driven world, and because we've been teaching workshops using this example and, as a result, had a rich source of classroom UML models with real student mistakes in them.

We collectedsome of our favorite mistakes—that is, the kind of mistakes we saw getting repeated over and over again—and built this workbook around those models. And then we added three new chapters about reviews—one on requirements reviews, one on preliminary design reviews, and one on critical design reviews. What really makes this book unique, though, is the fact that you, the reader, get to correct the mistakes. The Premise

After we give you an overview of the ICONIX process, in Chapter 1, four of the seven subsequent chapters address the four key phases of the process in some detail. The format of each of these chapters is as follows:


  1. The first part describes the essence of domain modeling (Chapter 2), use case modeling (Chapter 3), robustness analysis (Chapter 5), or sequence diagrams (Chapter 7), and places the material in the context of the "big picture" of the process.
  2. The next section describes the key elements of the given phase. Each of these sections is basically a condensed version of an associated chapter in Use Case Driven Object Modeling with UML, with some new information added within each chapter.
  3. The following section describes the top 10 mistakes that our students tend to make during workshops where we teach the process. We've added five new Top 10 lists in this book: Top 10 robustness analysis errors, Top 10 sequence diagramming errors, and Top 10 mistakes to avoid for each of the three "review" chapters.
  4. The final section presents a set of five exercises for you to work, to test your knowledge of the material in the chapter.

The following aspects are common to each set of exercises:

  • There's a red box, with a red label, at the top of each right-hand page. For the domain modeling and use case exercises, this label takes the form Exercise X; for the robustness analysis and sequence diagram exercises, the label takes the form of a use case name. (We'll explain the significance of this soon.)
  • There are three or four mistakes on each right-hand page. Each mistake has a "Top 10" logo next to it that indicates which rule is being violated.
  • The left-hand page on the flip side of each "red" page has a black box, with a black label, at the top. Corrections to the errors presented on the associated "bad" page are explicitly indicated; explanations of the mistakes appear at the bottom of the page.

Your task is to write corrections on each "bad" exercise page before you flip it over to see the "good" exercise diagram.

Chapter 2 presents classes used by 10 sample use cases. Chapter 3 presents fragments from all of those use cases. Chapters 5 and 7 present diagrams connected with five of the use cases. The idea is that you'll move from a partial understanding of the use cases through to sequence diagrams that present full text, and some of the associated elements of the detailed design, for each use case.

What about the other three chapters, you ask?

  • Chapter 4 describes how to perform requirements review, which involves trying to ensure that the use cases and the domain model work together to address the customers' functional requirements.
  • Chapter 6 describes how to perform preliminary design review (PDR), which involves trying to ensure that robustness diagrams exist for all use cases (and are consistent with those use cases), the domain model has a fairly rich set of attributes that correspond well with whatever prototypes are in place (and all of the objects needed by the use cases are represented in that model), and the development team is ready to move to detailed design.
  • Chapter 8 describes how to perform critical design review (CDR), which involves trying to ensure that the "how" of detailed design, as shown on sequence diagrams, matches up well with the "what" that the use cases specify, and that the detailed design is of sufficient depth to facilitate a relatively small and seamless leap into code.

All three of these chapters offer overviews, details, and top 10 lists, but we don't make you work any more exercises. What these reviews have in common is the goal of ensuring consistency of the various parts of the model, as expressed on the "good" exercise diagrams.

The appendix wraps things up in a nice bow by offering a report that shows the "good" model in its entirety—all of the class diagrams, use case text, robustness diagrams, and sequence diagrams represented in the body of the book, plus some other stuff too.

Cool premise, isn't it? We're not aware of another book like this one, and we're hoping you'll find it useful in your efforts to apply use case driven object modeling with UML.

Read More Show Less

Table of Contents

Preface.

Theory, in Practice.

The Premise.

Acknowledgments.

1. Introduction.

A Walk (Backwards) Through the ICONIX Process.

Key Features of the ICONIX Process.

Process Fundamentals.

The Process in a Nutshell.

2. Domain Modeling

The Key Elements of Domain Modeling.

The Top 10 Domain Modeling Errors.

Exercises.

3. Use Case Modeling.

The Key Elements of Use Case Modeling.

The Top 10 Use Case Modeling Errors.

Exercises.

4. Requirements Review.

The Key Elements of Requirements Review.

The Top 10 Requirements Review Errors.

5. Robustness Analysis.

The Key Elements of Robustness Analysis.

The Top 10 Robustness Analysis Errors.

Exercises.

6. Preliminary Design Review (PDR).

The Key Elements of Preliminary Design Review (PDR).

The Top 10 PDR Errors.

7. Sequence Diagrams.

The Key Elements of Sequence Diagrams.

The Top 10 Sequence Diagramming Errors.

Exercises.

8. Critical Design Review (CDR).

The Key Elements of Critical Design Review (CDR).

The Top 10 CDR Errors.

Appendix.

Index. 0201432897T04092002

Read More Show Less

Preface

Theory, in Practice

In our first book, Use Case Driven Object Modeling with UML, we suggested that the difference between theory and practice was that in theory there is no difference between theory and practice, but in practice, there is. In that book, we attempted to reduce OOAD modeling theory to a practical subset that was easy to learn and pretty much universally applicable, based on our experience in teaching this material to people working on hundreds of projects since about 1993.

Now, two years after hitting the shelves, that book is in its fifth printing. But even though our work has been favorably received, it seems like the job isn't all the way done yet. "We need to see more use case and UML modeling examples" is a phrase we've been hearing fairly often over the last couple of years. And, as we've used the first book as the backbone of training workshops where we apply the theory to real client projects, it's become clear that the process of reviewing the models is critically important and not well understood by many folks.

So, although we present a fairly extensive example in our first book, we convinced Addison-Wesley to let us produce this companion workbook, in which we dissect the design of an Internet bookstore, step-by-step, in great detail. This involves showing many common mistakes, and then showing the relevant pieces of the model with their mistakes corrected. We chose an Internet Bookstore because it's relevant to many of today's projects in the Web-driven world, and because we've been teaching workshops using this example and, as a result, had a rich source of classroom UML models with real student mistakes in them.

We collected some of our favorite mistakes--that is, the kind of mistakes we saw getting repeated over and over again--and built this workbook around those models. And then we added three new chapters about reviews--one on requirements reviews, one on preliminary design reviews, and one on critical design reviews. What really makes this book unique, though, is the fact that you, the reader, get to correct the mistakes.

The Premise

After we give you an overview of the ICONIX process, in Chapter 1, four of the seven subsequent chapters address the four key phases of the process in some detail. The format of each of these chapters is as follows:

  1. The first part describes the essence of domain modeling (Chapter 2), use case modeling (Chapter 3), robustness analysis (Chapter 5), or sequence diagrams (Chapter 7), and places the material in the context of the "big picture" of the process.
  2. The next section describes the key elements of the given phase. Each of these sections is basically a condensed version of an associated chapter in Use Case Driven Object Modeling with UML, with some new information added within each chapter.
  3. The following section describes the top 10 mistakes that our students tend to make during workshops where we teach the process. We've added five new Top 10 lists in this book: Top 10 robustness analysis errors, Top 10 sequence diagramming errors, and Top 10 mistakes to avoid for each of the three "review" chapters.
  4. The final section presents a set of five exercises for you to work, to test your knowledge of the material in the chapter.

The following aspects are common to each set of exercises:

  • There's a red box, with a red label, at the top of each right-hand page. For the domain modeling and use case exercises, this label takes the form Exercise X; for the robustness analysis and sequence diagram exercises, the label takes the form of a use case name. (We'll explain the significance of this soon.)
  • There are three or four mistakes on each right-hand page. Each mistake has a "Top 10" logo next to it that indicates which rule is being violated.
  • The left-hand page on the flip side of each "red" page has a black box, with a black label, at the top. Corrections to the errors presented on the associated "bad" page are explicitly indicated; explanations of the mistakes appear at the bottom of the page.

Your task is to write corrections on each "bad" exercise page before you flip it over to see the "good" exercise diagram.

Chapter 2 presents classes used by 10 sample use cases. Chapter 3 presents fragments from all of those use cases. Chapters 5 and 7 present diagrams connected with five of the use cases. The idea is that you'll move from a partial understanding of the use cases through to sequence diagrams that present full text, and some of the associated elements of the detailed design, for each use case.

What about the other three chapters, you ask?

  • Chapter 4 describes how to perform requirements review, which involves trying to ensure that the use cases and the domain model work together to address the customers’ functional requirements.
  • Chapter 6 describes how to perform preliminary design review (PDR), which involves trying to ensure that robustness diagrams exist for all use cases (and are consistent with those use cases), the domain model has a fairly rich set of attributes that correspond well with whatever prototypes are in place (and all of the objects needed by the use cases are represented in that model), and the development team is ready to move to detailed design.
  • Chapter 8 describes how to perform critical design review (CDR), which involves trying to ensure that the "how" of detailed design, as shown on sequence diagrams, matches up well with the "what" that the use cases specify, and that the detailed design is of sufficient depth to facilitate a relatively small and seamless leap into code.

All three of these chapters offer overviews, details, and top 10 lists, but we don't make you work any more exercises. What these reviews have in common is the goal of ensuring consistency of the various parts of the model, as expressed on the "good" exercise diagrams.

The appendix wraps things up in a nice bow by offering a report that shows the "good" model in its entirety--all of the class diagrams, use case text, robustness diagrams, and sequence diagrams represented in the body of the book, plus some other stuff too.

Cool premise, isn't it? We're not aware of another book like this one, and we're hoping you'll find it useful in your efforts to apply use case driven object modeling with UML.

0201432897P04302001

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star

(0)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)