ApplyingUseCaseDrivenObjectModelingwithUML
Applying Use Case Driven Object Modeling with UML An Annotated e-Commerce Example 英文原版资料
[!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 3.2 Final//EN'> 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 pra ctice, 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 has 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: 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. In each of these chapters, you'll work through pieces of the Internet bookstore example, and then you'll see an overview diagram at the end of the chapter that brings the relevant pieces together. We present fragments of ten different use cases in Chapter 3; we carry five of these forward through preliminary design and detailed design in Chapters 5 and 7, respectively. (The fragments of class diagrams that appear in Chapter 2 also trace into the use case text and to full class diagrams that appear in Chapters 5 and 7.) 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. The following section describes the top 10 mistakes that our students tend to make during workshops in which 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. 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 white 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 white 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. To summarize: Chapter 2 presents classes used by the ten 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 review 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 contains a report that summarizes the model for the bookstore; you can download the full model from ctice, 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 has 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: 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. In each of these chapters, you'll work through pieces of the Internet bookstore example, and then you'll see an overview diagram at the end of the chapter that brings the relevant pieces together. We present fragments of ten different use cases in Chapter 3; we carry five of these forward through preliminary design and detailed design in Chapters 5 and 7, respectively. (The fragments of class diagrams that appear in Chapter 2 also trace into the use case text and to full class diagrams that appear in Chapters 5 and 7.) 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. The following section describes the top 10 mistakes that our students tend to make during workshops in which 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. 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 white 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 white 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. To summarize: Chapter 2 presents classes used by the ten 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 review 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 contains a report that summarizes the model for the bookstore; you can download the full model from
用户评论
mnikf 2019-03-04 05:35:49
还可以,只是好麻烦的样子