ebook img

UML 2.0 in Action: A project-based tutorial: A detailed and practical walk-through showing how to apply UML to real world development projects PDF

247 Pages·2005·9.17 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview UML 2.0 in Action: A project-based tutorial: A detailed and practical walk-through showing how to apply UML to real world development projects

UML 2.0 in Action A Project-Based Tutorial Patrick Grässle Henriette Baumann Philippe Baumann BIRMINGHAM - MUMBAI UML 2.0 in Action A Project-Based Tutorial Copyright © 2005 Packt Publishing All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews. Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the authors, Packt Publishing, nor its dealers or distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book. Packt Publishing has endeavored to provide trademark information about all the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information. First published: September 2005. Published by Packt Publishing Ltd. 32 Lincoln Road Olton Birmingham, B27 6PA, UK. ISBN 1-904811-55-8 www.packtpub.com Cover Design by www.visionwt.com Authorized translation from the German Edition: "UML 2.0 projektorientiert" © 2004 by Galileo Press GALILEO COMPUTING is an imprint of Galileo Press, Fort Lee, NJ (USA), Bonn (Germany). German Edition first published 2004 by Galileo Press. FM-2 Credits Authors Technical Editor Patrick Grässle Chris Smith Henriette Baumann Paramita Chakrabarti Philippe Baumann Translator Illustrators Silvia Saint-Vincent Nilesh Mohite Dinesh Kandalgaonkar Proofreader Chris Smith Cover Designer Helen Wood Layout Paramita Chakrabarti Manjiri Nadkarni FM-3 Table of Contents About This Book 1 Chapter 1: Introduction 5 Chapter 2: Basic Principles and Background 9 2.1 Introduction to the Case Study 9 2.2 Models, Views, and Diagrams 12 2.2.1 What is a Model? 12 2.2.2 Why do we Need Models? 14 2.2.3 Purpose and Target Group of a Model 15 Practical Tips 16 2.2.4 Process of Analysis 16 Practical Tips 17 2.2.5 Diagrams as Views 18 2.3 Information Systems and IT Systems 19 2.4 The Models of our Case Study 21 2.5 History of UML: Methods and Notations 22 2.6 Requirement Specification 25 2.6.1 Guidance for Decision Making 25 2.6.2 Verification 26 2.7 UML 2.0 26 2.7.1 Overview of UML 2.0 26 2.7.2 Effects on the Business System Model 29 2.7.3 Effects on the IT System Model 29 2.7.4 Effects on the Systems Integration Model 30 2.7.5 Conclusion 30 Chapter 3: Modeling Business Systems 31 3.1 Business Processes and Business Systems 32 3.1.1 What is a Business Process? 32 3.1.2 Definition of the Workflow Management Coalition 33 3.1.3 Business Systems 34 Table of Contents 3.1.4 Using UML to Model Business Processes and Business Systems 36 3.1.5 Practical Tips for Modeling Business Processes 37 3.2 One Model—Two Views 37 3.3 External View 40 3.3.1 What Benefit does a Business System Provide? 40 Business Use Cases 41 Actors 42 3.3.2 The Elements of a View 43 3.3.3 Use Case Diagrams 45 Reading Use Case Diagrams 47 3.3.4 Constructing Use Case Diagrams 49 Collecting Information Sources—How am I Supposed to Know That? 50 Identifying Potential Actors—Which Partners and Customers Use the Goods and Services of the Business System? 51 Identifying Potential Business Use Cases—Which Goods and Services Can Actors Draw Upon? 52 Practical Tips 53 Connecting Business Use Cases—Who Can Make Use of What Goods and Services of the Business System? 53 Describing Actors—Who or What do the Actors Represent? 54 Searching for More Business Use Cases—What else Needs to be Done? 54 Editing Business Use Cases—What actually has to be Included in a Business Use Case? 55 Documenting Business Use Cases—What Happens in a Business Use Case? 56 Modeling Relationships between Business Use Cases—What Activities are Conducted Repeatedly? 57 Verifying the View—Is Everything Correct? 57 Practical Tips 59 3.3.5 Activity Diagrams 59 Reading Activity Diagrams 65 3.3.6 Constructing Activity Diagrams 67 Collect Information Sources—How am I Supposed to Know That? 68 Find Activities and Actions—What has to be Done When Actors Draw upon Offered Goods and Services? 68 Connect Actions—In Which Order are Actions Processed? 69 Refine Activities—Do any Other Activity Diagrams have to be Added? 70 Adopt Actors from Business Use Cases—Who is Responsible for Each Action? 71 Verify the View—Is Everything Correct? 72 3.3.7 Sequence Diagrams 72 Reading Sequence Diagrams 74 ii Table of Contents 3.3.8 Constructing Sequence Diagrams 75 Designate Actors and Business System—Who is Taking Part? 76 Designate Initiators—Who Starts Interactions? 76 Describe the Message Exchange between Actors and the Business System—Which Messages are being Exchanged? 77 Identify the Course of Interactions—What is the Order? 77 Insert Additional Information—What Else is Important? 77 Verify the View—Is Everything Correct? 78 3.3.9 High-Level Sequence Diagrams 78 3.3.10 Sequence Diagrams for Scenarios of Business Use Cases 79 3.4 The Internal View 80 3.4.1 The Elements of the View 80 3.4.2 Package Diagram 81 Reading Package Diagrams 83 3.4.3 Constructing Package Diagrams 84 Develop an Initial Package Diagram of the Business System—Which Workers and Business Objects Make up the Business System? 84 Find Additional Organization Units—Who Else is There? 85 Assign Workers and Business Objects to the Organization Units—Who Belongs Where? 85 Find Additional Organization Units, Workers, or Business Objects—What Else is There? 85 Verify the View—Is Everything Correct? 86 3.4.4 Class Diagram 87 Reading Class Diagrams 89 3.4.5 Constructing Class Diagrams 90 Find Classes—Which Classes Exist in the Class Diagram? 90 Create Associations Between Classes—Which Classes Deal with Each Other? 91 Substantiate Associations—What do these Relationships Mean? 92 Insert Generalizations—Can Business Objects be Grouped? 92 Verify the View—Is Everything Correct? 93 3.4.6 Activity Diagram 94 Reading Activity Diagrams 94 3.4.7 Constructing Activity Diagrams 94 Collect Information Sources—How am I Supposed to Know That? 94 Find Activities and Actions—Which Activities Have to be Performed so that the Goods and Services Utilized by Actors can be Provided and Delivered? 95 Adopt Actors from Business Use Cases—Who is Responsible for Each Action? 95 iii Table of Contents Connect Actions—In Which Order are Actions Processed? 95 Refine Activities—Do any Other Activity Diagrams Have to be Added? 96 Verify the View—Is Everything Correct? 96 Chapter 4: Modeling IT Systems 99 4.1 External View 102 4.1.1 The User View or "I don't care how it works, as long as it works." 102 4.1.2 The Elements of a View 106 4.1.3 Use Case Diagram 107 Reading Use Case Diagrams 109 4.1.4 Query Events and Mutation Events 110 4.1.5 Use Case Sequence Diagram 112 Reading Use Case Sequence Diagrams 114 4.1.6 Constructing the External View 115 Collect Information Sources—How Am I Supposed to Know That? 116 Identify Potential Actors—Who Works with the IT System? 116 Identify Potential Use Cases—What Can be Done With the IT System? 117 Connect Actors and Use Cases—Who Can Do What with the IT System? 118 Describe Actors—Who or What do the Actors Represent? 118 Search for More Use Cases—What Functionalities does the IT System have to Provide? 119 Edit Use Cases—What Actually Has to be Included in a Use Case? 119 Document Use Cases—What Happens in a Use Case? 121 Model Relationships between Use Cases—What can be Reused? 122 Verify the View—Is Everything Correct? 123 4.2 Structural View 124 4.2.1 Objects and Classes 129 4.2.2 Generalization, Specialization, and Inheritance 128 4.2.3 Static and Dynamic Business Rules 132 4.2.4 Elements of the View 132 4.2.5 Class Diagram 133 Reading Class Diagrams 135 4.2.6 Constructing Class Diagrams 139 Identify and Model Classes—Which Classes do We Need? 140 Identify and Model Associations—How Are the Classes Connected? 141 Define Attributes—What do We Want to Know about the Objects? 142 List Required Queries and Inputs—What does the IT System Need to Deliver and Accept? 143 Formulate Queries and Inputs—How Exactly Should the Display Look? 143 Conduct Information Analysis—Which Classes, Associations, and Attributes do We Need? 144 iv Table of Contents Consolidate Class Diagrams—How Does Everything Fit Together? 146 Verify the Class Diagrams—Is Everything Correct? 146 4.3 The Behavioral View 147 4.3.1 The Life of an Object 147 4.3.2. The Elements of the View 151 4.3.3 Statechart Diagram 152 Reading Statechart Diagrams 154 4.3.4 Constructing Statechart Diagrams 159 Identify Mutation Events Relevant for the Object—What Affects the Object? 159 Group Relevant Events Chronologically—How Does a Normal Life Look? 160 Model States and Transitions—Which States are There? 161 Add Actions to the Statechart Diagram—What Do Objects Do? 161 Verify Statechart Diagram—Is Everything Correct? 162 4.4 Interaction View 163 4.4.1 Seeing What Happens Inside the IT System 163 4.4.2 Elements of the View 167 4.4.3 Communication Diagram 168 Reading Communication Diagrams 170 4.4.4 Sequence Diagram 172 Reading Sequence Diagrams 174 4.4.5 Constructing Communication Diagrams 175 Draft Query Result—What do We Want? 176 Identify Involved Classes—Which Classes do We Need? 177 Define Initial Object—Where Do We Start? 179 Design Event Path—Where Do We Go? 179 Amend Event Path—Exactly Which Objects do We Need? 181 Identify Necessary Attributes—What Exactly do We Want to Know? 182 Verify the Communication Diagram—Is Everything Correct? 183 4.4.6 Constructing Sequence Diagrams 184 Identify Involved Classes—What is Affected by Mutation Events? 184 Determine Initial Object—Where does the Mutation Event go First? 185 Propagate Events—How is the Mutation Event Forwarded? 185 Specify Event Parameter—What Do Objects have to Know? 186 Verify the Sequence Diagram—Is Everything Correct? 186 Chapter 5: Modeling for System Integration 187 5.1 Terminology of System Integration 188 Interfaces 188 Messages 188 Enterprise Application Integration 189 v

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.