ebook img

UML for the IT business analyst : a practical guide to object-oriented requirements gathering PDF

385 Pages·2005·5.83 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 for the IT business analyst : a practical guide to object-oriented requirements gathering

UML™ for the IT Business Analyst: A Practical Guide to Object-Oriented Requirements Gathering Howard Podeswa © 2005 by Thomson Course Technology PTR.All rights reserved.No Publisher and General Manager, part ofthis book may be reproduced or transmitted in any form or by Thomson Course Technology PTR: any means,electronic or mechanical,including photocopying,recording, Stacy L.Hiquet or by any information storage or retrieval system without written per- Associate Director ofMarketing: mission from Thomson Course Technology PTR,except for the inclu- Sarah O’Donnell sion ofbriefquotations in a review. Manager ofEditorial Services: The Thomson Course Technology PTR logo and related trade dress are Heather Talbot trademarks ofThomson Course Technology and may not be used with- out written permission. Marketing Manager: Kristin Eisenzopf The Unified Modeling Language,UML,and the UML and OMG logos are either registered trademarks or trademarks of the Object Acquisitions Editor: Management Group,Inc.,in the United States and/or other countries. Mitzi Koontz Rational Rose is a registered trademark ofIBM in the United States. Senior Editor: All other trademarks are the property oftheir respective owners. Mark Garvey Important:Thomson Course Technology PTR cannot provide software Marketing Coordinator: support.Please contact the appropriate software manufacturer’s techni- Jordan Casey cal support line or Web site for assistance. Project Editor: Thomson Course Technology PTR and the author have attempted Kim Benbow throughout this book to distinguish proprietary trademarks from Technical Reviewer: descriptive terms by following the capitalization style used by the man- Brian Lyons ufacturer. Thomson Course Technology PTR Information contained in this book has been obtained by Thomson Editorial Services Coordinator: Course Technology PTR from sources believed to be reliable.However, Elizabeth Furbish because ofthe possibility ofhuman or mechanical error by our sources, Thomson Course Technology PTR,or others,the Publisher does not Copyeditor: guarantee the accuracy,adequacy,or completeness ofany information Andy Saff and is not responsible for any errors or omissions or the results obtained from use ofsuch information.Readers should be particularly aware of Interior Layout Tech: the fact that the Internet is an ever-changing entity.Some facts may have Bill Hartman changed since this book went to press. Cover Designer: Educational facilities,companies,and organizations interested in multi- Mike Tanamachi ple copies or licensing of this book should contact the publisher for Indexer: quantity discount information.Training manuals,CD-ROMs,and por- Sharon Shock tions ofthis book are also available individually or can be tailored for specific needs. Proofreader: Kezia Endsley ISBN:1-59200-912-3 Library ofCongress Catalog Card Number:2005924934 Printed in Canada 05 06 07 08 09 WC 10 9 8 7 6 5 4 3 2 1 Thomson Course Technology PTR, a division of Thomson Course Technology 25 Thomson Place (cid:1) Boston, MA 02210 (cid:1) http://www.courseptr.com Contents chapter 1 Who Are IT Business Analysts?.................................................1 Chapter Objectives.....................................................................................1 The IT and Non-IT BA.................................................................................1 Perspective on the IT BA Role....................................................................1 Why Modeling Is a Good Thing.................................................................2 The Dynamic (Behavioral) Model..............................................................3 The Static (Structural) Model.....................................................................3 For Those Trained in Structured Analysis..................................................4 Chapter Summary.......................................................................................5 chapter 2 The BA’s Perspective on Object Orientation............................7 Chapter Objectives.....................................................................................7 What Is OO?................................................................................................8 The UML Standard......................................................................................8 Cognitive Psychology and OO?..................................................................8 Objects........................................................................................................9 The BA Perspective............................................................................9 Attributes and Operations.........................................................................9 The BA Perspective............................................................................9 Operations and Methods.........................................................................10 The BA Perspective..........................................................................10 Encapsulation...........................................................................................10 The BA Perspective..........................................................................10 OO Concept: Classes.................................................................................11 The BA Perspective..........................................................................12 OO Concept: Relationships......................................................................12 OO Concept: Generalization....................................................................12 The BA Perspective..........................................................................14 OO Concept: Association.........................................................................14 The BA Perspective..........................................................................14 OO Concept: Aggregation.......................................................................15 The BA Perspective..........................................................................15 OO Concept: Composition.......................................................................15 The BA Perspective..........................................................................16 OO Concept: Polymorphism.....................................................................16 The BA Perspective..........................................................................17 Use Cases and Scenarios...........................................................................18 The BA Perspective..........................................................................18 Business and System Use Cases................................................................19 The BA Perspective..........................................................................19 Chapter Summary.....................................................................................20 chapter 3 An Overview of Business Object-Oriented Modeling (B.O.O.M.)................................................................21 Chapter Objectives...................................................................................21 B.O.O.M. and SDLCs.................................................................................21 The B.O.O.M. Steps...................................................................................22 1: Initiation......................................................................................22 2: Analysis........................................................................................23 Sequencing the Steps...............................................................................24 What Do You Define First—Attributes or Operations?.........................25 Chapter Summary.....................................................................................25 chapter 4 Analyzing End-to-End Business Processes.............................27 Chapter Objectives...................................................................................27 B.O.O.M. Steps..........................................................................................27 1. Initiation......................................................................................27 Interviews During the Initiation, Analysis, and Test Phases..................28 Step 1: Initiation.......................................................................................29 What Happens During Initiation?..................................................29 How Long Does the Initiation Phase Take?...................................29 Deliverables of the Initiation Step: BRD (Initiation Version)........29 Business Requirements Document Template..........................................30 Timetable..................................................................................................39 Step 1a: Model Business Use Cases..........................................................49 How Do You Document Business Use Cases?................................49 Step 1a i: Identify Business Use Cases (Business Use-Case Diagram).....49 Other Model Elements....................................................................50 Putting Theory into Practice....................................................................51 Note to Rational Rose Users....................................................................51 Case Study D1: Business Use-Case Diagrams...........................................53 Problem Statement.........................................................................53 Suggestions......................................................................................53 Step 1a ii: Scope Business Use Cases (Activity Diagram)........................68 Activity Diagrams for Describing Business Use Cases....................68 Case Study D2: Business Use-Case Activity Diagram with Partitions.....77 Problem Statement.........................................................................79 Suggestions......................................................................................79 Business Use Case: Manage Case (Dispute)....................................79 Business Use Case: Administer Payments.......................................80 Case Study D2: Resulting Documentation.....................................81 Next Steps........................................................................................81 Chapter Summary.....................................................................................84 chapter 5 Scoping the IT Project with System Use Cases......................85 Chapter Objectives...................................................................................85 Step 1b: Model System Use Cases............................................................85 Step 1b i: Identify Actors (Role Map).............................................86 Case Study E1: Role Map..........................................................................91 Problem Statement.........................................................................91 Case Study E1: Resulting Documentation......................................92 Step 1b ii: Identify System Use-Case Packages (System Use-Case Diagram)...................................................................................................92 Managing a Large Number of Use Cases.......................................92 What Criteria Are Used to Group System Use Cases into Packages?.........................................................................................93 Naming Use-Case Packages............................................................93 Diagramming System Use-Case Packages......................................94 What If a Use-Case Package Is Connected to All of the Specialized Actors of a Generalized Actor?...................................95 Case Study E2: System Use-Case Packages..............................................96 Problem Statement.........................................................................96 Suggestions......................................................................................96 Case Study E2: Resulting Documentation......................................96 Step 1b iii: Identify System Use Cases (System Use-Case Diagram).......98 System Use Cases.............................................................................98 Features of System Use Cases.........................................................99 What Is the Purpose of Segmenting the User Requirements into System Use Cases?...................................................................99 Modeling System Use Cases..........................................................100 Is There a Rule of Thumb for How Many System Use Cases a Project Would Have?..................................................................102 Case Study E3: System Use-Case Diagrams...........................................103 A) Manage Case............................................................................103 B) Administer Payments................................................................104 C) Other Business Use Cases..........................................................108 Case Study E3: Resulting Documentation....................................108 Step 1c: Begin Static Model (Class Diagrams for Key Business Classes)....................................................................................................111 Step 1d: Set Baseline for Analysis (BRD/Initiation)...............................112 Chapter Summary...................................................................................112 chapter 6 Storyboarding the User’s Experience...................................113 Chapter Objectives.................................................................................113 Step 2: Analysis.......................................................................................113 Step 2a i: Describe System Use Cases...........................................114 The Use-Case Description Template......................................................115 The Fundamental Approach Behind the Template.....................115 Documenting the Basic Flow.................................................................118 Use-Case Writing Guidelines..................................................................118 Basic Flow Example: CPP System Review Case Report.........................120 Documenting Alternate Flows...............................................................120 Typical Alternate Flows.................................................................121 Alternate Flow Documentation...................................................121 Example of Use Case with Alternate Flows: CPP System/Review Case Report..........................................................122 Documenting an Alternate of an Alternate................................123 Documenting Exception Flows..............................................................124 Guidelines for Conducting System Use-Case Interviews......................124 Activity Diagrams for System Use Cases................................................125 Related Artifacts.....................................................................................125 Decision Tables.......................................................................................126 The Underlying Concept...............................................................126 When Are Decision Tables Useful?...............................................126 Example of a Use Case with a Decision Table.............................127 A Step-by-Step Procedure for Using a Decision Table During an Interview to Analyze System Behavior......................128 Case Study F1: Decision Table................................................................129 Suggestion.....................................................................................129 Case Study F1: Resulting Documentation....................................129 Decision Trees.........................................................................................130 How to Draw a Decision Tree.......................................................130 Case Study F2: Decision Tree..................................................................131 Case Study F2: Resulting Documentation....................................131 Condition/Response Table......................................................................132 Business Rules.........................................................................................133 Advanced Use-Case Features.................................................................133 Case Study F3: Advanced Use-Case Features........................................144 Problem Statement.......................................................................144 Case Study F3: Resulting Documentation....................................144 Chapter Summary...................................................................................145 chapter 7 Life Cycle Requirements for Key Business Objects..............147 Chapter Objectives.................................................................................147 What Is a State Machine Diagram?.......................................................148 Step 2a ii: 1. Identify States of Critical Objects....................................149 Types of States...............................................................................150 Case Study G1: States.............................................................................152 Case Study G1: Resulting Diagram...............................................152 Step 2a ii: 2. Identify State Transitions..................................................152 Depicting State Transitions in UML..............................................154 Mapping State Machine Diagrams to System Use Cases............156 Case Study G2: Transitions.....................................................................157 Case Study G2: Resulting Documentation...................................158 Step 2a ii: 3. Identify State Activities....................................................160 Case Study G3: State Activities..............................................................161 Case Study G3: Resulting Diagram...............................................162 Step 2a ii: 4. Identify Composite States................................................162 Case Study G4: Composite States..........................................................164 Suggestion.....................................................................................164 Case Study G4: Resulting Documentation...................................164 Step 2a ii: 5. Identify Concurrent States...............................................166 Concurrent State Example............................................................166 Chapter Summary...................................................................................167 chapter 8 Gathering Across-the-Board Rules with Class Diagrams....169 Chapter Objectives.................................................................................169 Step 2b: Static Analysis..........................................................................170 FAQs about Static Analysis............................................................171 Step 2b i: Identify Entity Classes............................................................172 FAQs about Entity Classes.............................................................172 Indicating a Class in UML..............................................................173 Naming Conventions.....................................................................174 Grouping Classes into Packages...................................................174 The Package Diagram...................................................................175 Interview Questions for Finding Classes......................................175 Challenge Questions.....................................................................176 Supporting Class Documentation.................................................177 Case Study H1: Entity Classes.................................................................178 Your Next Step...............................................................................179 Suggestions....................................................................................179 Case Study H1: Resulting Documentation...................................179 Notes on the Model......................................................................179 Step 2b ii: Model Generalizations.........................................................181 Subtyping.......................................................................................181 Generalization...............................................................................182 Case Study H2: Generalizations.............................................................186 Suggestions....................................................................................186 Case Study H2: Resulting Documentation...................................186 Notes on the Model......................................................................187 Step 2b iii: Model Transient Roles.........................................................188 Example of Transient Role............................................................189 How Does a Transient Role Differ from a Specialization?..........189 Some Terminology.........................................................................189 Why Indicate Transient Roles?......................................................189 Rules about Transient Roles..........................................................189 Indicating Transient roles..............................................................190 Sources of Information for Finding Transient Roles...................190 Interview Questions for Determining Transient Roles................190 What If a Group of Specialized Classes Can All Play the Same Role?.....................................................................................191 Case Study H3: Transient Roles..............................................................191 Case Study H3: Resulting Documentation...................................192 Step 2b iv: Model Whole/Part Relationships........................................193 The “Whole” Truth........................................................................193 Examples of Whole/Part Relationships........................................194 Why Indicate Whole/Part Relationships?.....................................194 How Far Should You Decompose a Whole into Its Parts?..........194 Sources of Information for Finding Aggregation and Composition...................................................................................195 Rules Regarding Aggregation and Composition........................195 Indicating Aggregation and Composition in UML......................195 The Composite Structure Diagram........................................................195 Interview Questions for Determining Aggregation and Composition...................................................................................197 Challenge Question.......................................................................197 Case Study H4: Whole/Part Relationships.............................................199 Case Study H4: Resulting Documentation...................................199 Notes on the Model......................................................................199 Step 2b v: Analyze Associations............................................................200 Examples of Association...............................................................200 Why Indicate Association?............................................................201 Why Isn’t It the Developers’ Job to Find Associations?..............201 Discovering Associations...............................................................201 Rules Regarding Associations.......................................................201 The Association Must Reflect the Business Reality.....................202 Redundant Association Rule of Thumb.......................................204 Exception to the Rule of Thumb..................................................205 Case Study H5: Associations...................................................................208 Your Next Step...............................................................................208 Case Study H5: Resulting Documentation...................................208 Step 2b vi: Analyze Multiplicity.............................................................210 Example of Multiplicity.................................................................210 Why Indicate Multiplicity?............................................................210 Indicating Multiplicity in UML......................................................210 Rules Regarding Multiplicity........................................................210 Sources of Information for Finding Multiplicity..........................212 The Four Interview Questions for Determining Multiplicity......212 Case Study H6: Multiplicity....................................................................213 Your Next Step...............................................................................214 Case Study H6: Resulting Documentation...................................214 Chapter Summary...................................................................................217 chapter 9 Optimizing Consistency and Reuse in Requirements Documentation......................................................................219 Chapter Objectives.................................................................................219 Where Do You Go from Here?..............................................................220 Does the Business Analyst Need to Put Every Attribute and Operation on the Static Model?...........................................220 Step 2b vii: Link System Use Cases to the Static Model.......................221 Case Study I1: Link System Use Cases to the Static Model...................222 Suggestions....................................................................................222 Case Study I1: Results.............................................................................224 Step 2b viii: Add Attributes...................................................................225 Analyzing Attributes.....................................................................225 Example..........................................................................................227 Why Indicate Attributes?..............................................................227 Don’t Verification Rules about Attributes Belong with the System Use-Case Documentation?.........................................227 Sources of Information for Finding Attributes............................227 Rules for Assigning Attributes......................................................228 Derived Attributes.........................................................................228 Indicating Attributes in the UML.................................................229 Meta-Attributes......................................................................................231 Case Study I2: Add Attributes................................................................232 People/Organizations....................................................................232 Events/Transactions.......................................................................233 Products and Services....................................................................233 Your Next Step...............................................................................233 Suggestions....................................................................................233 Case Study I2: Resulting Documentation.....................................234 Association Classes........................................................................234

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.