وبلاگ بلیان

Advanced Use Case Modeling : Software Systems, Portable Documents

جلد کتاب Advanced Use Case Modeling : Software Systems, Portable Documents

معرفی کتاب «Advanced Use Case Modeling : Software Systems, Portable Documents» نوشتهٔ Armour, Frank, Miller, Granville، منتشرشده توسط نشر Addison-Wesley Professional در سال 2001. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است.

used their wealth of experience to produce an excellent and insightful collection of detailed examples, explanations, and advice on how to work with use cases. Maria Ericsson The toughest challenge in building a software system that meets the needs of your audience lies in clearly understanding the problems that the system must solve. Advanced Use Case Modeling presents a framework for discovering, identifying, and modeling the problem that the software system will ultimately solve. Software developers often employ use cases to specify what should be performed by the system theyre constructing. Although use case-driven analysis, design, and testing of software systems has become increasingly popular, little has been written on the role of use cases in the complete software cycle. This book fills that need by describing how to create use case models for complex software development projects, using practical examples to explain conceptual information. The authors extend the work of software visionary Ivar Jacobson, using the Unified Modeling Language (UML) as the notation to describe the books models. Aimed primarily at software professionals, Advanced Use Case Modeling also include Cover......Page 1 Contents......Page 8 Foreword......Page 14 Preface......Page 16 Introduction......Page 26 Part 1 Fundamentals......Page 34 Chapter 1 Actors......Page 38 What Is an Actor?......Page 39 Why Define Actors?......Page 40 How to Find the Actors......Page 41 Primary and Secondary Actor Types......Page 42 Actor Personalities......Page 44 Abstract Actors......Page 48 Conclusion......Page 49 Chapter 2 Use Cases......Page 52 Finding Use Cases......Page 53 Describing Use Cases......Page 55 Refactoring the Use Case Model......Page 58 Extending the UML Use Case Process......Page 60 Another Approach to Building a Use Case Model......Page 63 Conclusion......Page 65 Part 2 Project Initiation......Page 66 Chapter 3 Scoping the System: Vision Document and Business Case......Page 68 Tackling the Dark Side......Page 69 Determining Project Feasibility: Business Case......Page 72 Writing the Business Case......Page 73 Revising the Business Case......Page 75 Conclusion......Page 76 Chapter 4 Balancing the Software System Use Case Model......Page 78 Analyzing the Domain......Page 80 Documenting the Interfaces......Page 83 Defining a Software Architecture......Page 85 Packaging the Architecture......Page 87 Conclusion......Page 88 Part 3 Advanced Use Case Modeling Framework: Initial Use Case Model......Page 90 Chapter 5 Introduction to the System Use Case Modeling Process Framework......Page 94 Need for a Software Development Process......Page 95 Advanced Use Case Modeling Process Framework......Page 96 Creating or Customizing a Process Framework for a Specific Project......Page 102 Conclusion......Page 105 Perform a Stakeholder Analysis......Page 106 Select Use Case Standards, Templates, and Tools......Page 109 Determine Training and Mentoring Needs......Page 110 Conclusion......Page 113 Chapter 7 Performing Initial Use Case Modeling......Page 114 Develop Context Diagram......Page 115 Identify the Major Actors......Page 117 Discover the Conceptual System Use Cases......Page 121 Develop Initial Use Case Diagram......Page 128 Determine/Refine the Conceptual Business Objects......Page 129 Relationship of Use Cases and the Object Model......Page 130 Conclusion......Page 134 Part 4 Advanced Use Case Modeling Framework: Expanding the Use Case Model......Page 136 Chapter 8 Develop Base Use Case Descriptions......Page 140 Fields in a Base Use Case Description......Page 142 Getting Started Creating Base Use Case Descriptions......Page 160 Finding New Use Cases......Page 162 Conclusion......Page 167 Chapter 9 Elaborate the Base Use Case Description......Page 168 Describing Alternative Flows......Page 169 Text-Based Conditional and Iterative Logic in the Flow of Events......Page 171 Using Activity Diagrams to Represent a Complex Flow of Events......Page 177 Conclusion......Page 183 Chapter 10 Model Extend, Include, and Generalization Relationships......Page 184 Extend Relationships......Page 185 Include Relationships......Page 198 Generalization Relationships......Page 208 Bringing Together Extend, Include, and Generalization Relationships......Page 213 Conclusion......Page 215 Use Case Priorities......Page 216 Nonbehavioral Requirements......Page 218 Interface Analysis......Page 220 Focusing on Behavioral Details of Individual Use Case Activities......Page 222 Documenting Details of Business Procedures and Rules......Page 223 Conclusion......Page 226 Chapter 12 Map Use Cases to Object Models......Page 228 Analysis Object Modeling......Page 229 Parallel Use Case and Object Modeling......Page 232 Basic CRUD Matrix......Page 234 Expanded CRUD Matrix......Page 236 Analysis Sequence Diagrams......Page 238 Mapping Use Cases to Object Models Using Sequence Diagrams......Page 242 Issues with Using Sequence Diagrams during Analysis......Page 247 Conclusion......Page 248 Chapter 13 Develop Instance Scenarios......Page 250 Use Cases Are to Object Classes as Use Case Instances Are to Object Instances......Page 251 Why Create Use Case Instances?......Page 253 Use Case Instances Can Be Applied Informally......Page 254 Use Cases Can Be Applied More Formally......Page 256 Finding and Creating Use Case Instances......Page 257 Conclusion......Page 262 Chapter 14 Create Test Cases and Documentation......Page 264 Creating a Test Plan......Page 265 Creating Test Cases......Page 267 Testing Range/Error Handling......Page 270 Testing Interactions......Page 272 Creating User Documentation......Page 274 Conclusion......Page 275 Chapter 15 Organize the Use Cases......Page 276 Business Function Packages......Page 278 Superordinate and Subordinate Use Cases......Page 280 Dependency Streams......Page 287 Activity Diagrams to Model Use Case Dependencies......Page 291 Model Views......Page 294 Putting It All Together in a System Use Case Model......Page 295 Conclusion......Page 296 Part 5 Additional Topics......Page 298 Chapter 16 Building User Interfaces......Page 300 Conceptual User Interface Design......Page 301 Creating Conceptual Models from Use Cases......Page 302 Conclusion......Page 312 Chapter 17 Coping with Change......Page 314 Requirements Churn......Page 315 Source of Change......Page 316 Accelerating Change......Page 317 Managing Change......Page 318 Change Cases......Page 319 Changes to the Use Case Model......Page 320 Conclusion......Page 323 Chapter 18 Creating Your Advanced Use Case Modeling Process......Page 324 Effect of the Project and Project Team on Ceremony......Page 325 Effects of Artifacts on Ceremony......Page 326 Development Case......Page 328 Conclusion......Page 332 Chapter 19 Ensuring a Successful Use Case Modeling Effort......Page 334 Appropriate Level of Detail and Organization in the Use Case Model......Page 335 Attributes of a Good Use Case Model When Specifying Requirements......Page 337 Incremental and Iterative Development with Use Cases......Page 344 Know When Not to Use Use Cases......Page 347 Questions to Ask When Use Case Modeling......Page 348 Conclusion......Page 349 Appendix A: Use Case Development Review Checklist......Page 350 Appendix B: Development Case for Advanced Use Case Modeling......Page 356 Appendix C: Simplified Loan Processing System......Page 374 Appendix D: Simplified Loan Processing System User Interface Specification......Page 408 Bibliography......Page 420 A......Page 432 B......Page 434 C......Page 436 D......Page 438 E......Page 440 F......Page 441 G......Page 442 I......Page 443 L......Page 445 O......Page 446 P......Page 448 R......Page 450 S......Page 451 T......Page 454 U......Page 456 Z......Page 458 Cover 1 Contents 8 Foreword 14 Preface 16 Introduction 26 Part 1 Fundamentals 34 Chapter 1 Actors 38 What Is an Actor? 39 Why Define Actors? 40 How to Find the Actors 41 Primary and Secondary Actor Types 42 Actor Personalities 44 Abstract Actors 48 Actor Notation 49 Conclusion 49 Chapter 2 Use Cases 52 Finding Use Cases 53 Describing Use Cases 55 Refactoring the Use Case Model 58 Extending the UML Use Case Process 60 Organizing the Use Case Model 63 Another Approach to Building a Use Case Model 63 Conclusion 65 Part 2 Project Initiation 66 Chapter 3 Scoping the System: Vision Document and Business Case 68 Describing the Problem: Vision Document 69 Tackling the Dark Side 69 Determining Project Feasibility: Business Case 72 Writing the Business Case 73 Revising the Business Case 75 Conclusion 76 Chapter 4 Balancing the Software System Use Case Model 78 Analyzing the Domain 80 Documenting the Interfaces 83 Defining a Software Architecture 85 Packaging the Architecture 87 Conclusion 88 Part 3 Advanced Use Case Modeling Framework: Initial Use Case Model 90 Chapter 5 Introduction to the System Use Case Modeling Process Framework 94 Need for a Software Development Process 95 Advanced Use Case Modeling Process Framework 96 Creating or Customizing a Process Framework for a Specific Project 102 Conclusion 105 Chapter 6 Preparing for Use Case Modeling and Determining Use Case Approach 106 Perform a Stakeholder Analysis 106 Select and Customize a Use Case Process Framework 109 Select Use Case Standards, Templates, and Tools 109 Determine Training and Mentoring Needs 110 Conclusion 113 Chapter 7 Performing Initial Use Case Modeling 114 Develop Context Diagram 115 Identify the Major Actors 117 Discover the Conceptual System Use Cases 121 Develop Initial Use Case Diagram 128 Determine/Refine the Conceptual Business Objects 129 Relationship of Use Cases and the Object Model 130 Packaging and Validating the Use Case Conceptual Model 134 Conclusion 134 Part 4 Advanced Use Case Modeling Framework: Expanding the Use Case Model 136 Chapter 8 Develop Base Use Case Descriptions 140 Fields in a Base Use Case Description 142 Getting Started Creating Base Use Case Descriptions 160 Finding New Use Cases 162 Conclusion 167 Chapter 9 Elaborate the Base Use Case Description 168 Describing Alternative Flows 169 Text-Based Conditional and Iterative Logic in the Flow of Events 171 Using Activity Diagrams to Represent a Complex Flow of Events 177 Activity Diagrams versus Detailed Text 183 Conclusion 183 Chapter 10 Model Extend, Include, and Generalization Relationships 184 Extend Relationships 185 Include Relationships 198 Generalization Relationships 208 Bringing Together Extend, Include, and Generalization Relationships 213 Conclusion 215 Chapter 11 Add Supplemental Information to the Use Case Model 216 Use Case Priorities 216 Nonbehavioral Requirements 218 Interface Analysis 220 Focusing on Behavioral Details of Individual Use Case Activities 222 Documenting Details of Business Procedures and Rules 223 Conclusion 226 Chapter 12 Map Use Cases to Object Models 228 Analysis Object Modeling 229 Parallel Use Case and Object Modeling 232 Basic CRUD Matrix 234 Expanded CRUD Matrix 236 Analysis Sequence Diagrams 238 Mapping Use Cases to Object Models Using Sequence Diagrams 242 Issues with Using Sequence Diagrams during Analysis 247 Conclusion 248 Chapter 13 Develop Instance Scenarios 250 Use Case Instances Model Specific Executions of a Use Case 251 Use Cases Are to Object Classes as Use Case Instances Are to Object Instances 251 Why Create Use Case Instances? 253 Use Case Instances Can Be Applied Informally 254 Use Cases Can Be Applied More Formally 256 Layout of a Use Case Instance Description 257 Finding and Creating Use Case Instances 257 Conclusion 262 Chapter 14 Create Test Cases and Documentation 264 Creating a Test Strategy 265 Creating a Test Plan 265 Elements of a Test Plan 267 Creating Test Cases 267 Testing Range/Error Handling 270 Testing Interactions 272 Creating User Documentation 274 Conclusion 275 Chapter 15 Organize the Use Cases 276 Business Function Packages 278 Superordinate and Subordinate Use Cases 280 Dependency Streams 287 Activity Diagrams to Model Use Case Dependencies 291 Model Views 294 Putting It All Together in a System Use Case Model 295 Conclusion 296 Part 5 Additional Topics 298 Chapter 16 Building User Interfaces 300 Conceptual User Interface Design 301 Creating Conceptual Models from Use Cases 302 Physical User Interface Design 312 Conclusion 312 Chapter 17 Coping with Change 314 Requirements Churn 315 Source of Change 316 Accelerating Change 317 Managing Change 318 Change Cases 319 Changes to the Use Case Model 320 Conclusion 323 Chapter 18 Creating Your Advanced Use Case Modeling Process 324 Effect of the Project and Project Team on Ceremony 325 Effects of Artifacts on Ceremony 326 Development Case 328 Iterative Development and the Development Case 332 Conclusion 332 Chapter 19 Ensuring a Successful Use Case Modeling Effort 334 Appropriate Level of Detail and Organization in the Use Case Model 335 Attributes of a Good Use Case Model When Specifying Requirements 337 Incremental and Iterative Development with Use Cases 344 Know When Not to Use Use Cases 347 Questions to Ask When Use Case Modeling 348 Conclusion 349 Appendix A: Use Case Development Review Checklist 350 Appendix B: Development Case for Advanced Use Case Modeling 356 Appendix C: Simplified Loan Processing System 374 Appendix D: Simplified Loan Processing System User Interface Specification 408 Bibliography 420 Index 432 A 432 B 434 C 436 D 438 E 440 F 441 G 442 H 443 I 443 J 445 K 445 L 445 M 446 N 446 O 446 P 448 Q 450 R 450 S 451 T 454 U 456 V 458 W 458 Y 458 Z 458 'This book isn't just another introduction to use cases. The authors have used their wealth of experience to produce an excellent and insightful collection of detailed examples, explanations, and advice on how to work with use cases.'–Maria Ericsson The toughest challenge in building a software system that meets the needs of your audience lies in clearly understanding the problems that the system must solve. Advanced Use Case Modeling presents a framework for discovering, identifying, and modeling the problem that the software system will ultimately solve. Software developers often employ use cases to specify what should be performed by the system they're constructing. Although use case-driven analysis, design, and testing of software systems has become increasingly popular, little has been written on the role of use cases in the complete software cycle. This book fills that need by describing how to create use case models for complex software development projects, using practical examples to explain conceptual information. The authors extend the work of software visionary Ivar Jacobson, using the Unified Modeling Language (UML) as the notation to describe the book's models. Aimed primarily at software professionals, Advanced Use Case Modeling also includes information that relates use case technique to business processes. This book presents a process for creating and maintaining use case models in a framework that can be fully customized for your organization. The authors, pioneers in the application of use cases in software development, bring their extensive experience to cover topics such as: A process model for applying a use case model How to keep your use case modeling effort on track Tips and pitfalls in use case modeling How to organize your use case model for large-system development Similarities between Advanced Use Case Modeling and the Rational Unified Process framework Effect of use cases on user interface design Guidelines for quality use case modeling "The toughest challenge in building a software system that meets the needs of your audience lies in clearly understanding the problems that the system must solve. Advanced Use Case Modeling presents a framework for discovering, identifying, and modeling the problem that the software system will ultimately solve." "Software developers often employ use cases to specify what should be performed by the system they're constructing. Although use case-driven analysis, design, and testing of software systems has become increasingly popular, little has been written on the role of use cases in the complete software cycle. This book fills that need by describing how to create use case models for complex software development projects, using practical examples to explain conceptual information." "The authors extend the work of software visionary Ivar Jacobson, using the Unified Modeling Language (UML) as the notation to describe the book's models. Aimed primarily at software professionals, Advanced Use Case Modeling also includes information that relates use case technique to business processes." "This book presents a process for creating and maintaining use case models in a framework that can be fully customized for your organization. The authors, pioneers in the application of use cases in software development, bring their extensive experience to cover topics such as: a process model for applying a use case model; how to keep your use case modeling effort on track; tips and pitfalls in use case modeling; how to organize your use case model for large-system development; similarities between Advanced Use Case Modeling and the Rational Unified Process framework; effect of use cases on user interface design; and guidelines for quality use case modeling."--Jacket Use cases are increasingly popular, but many large organizations find it difficult to develop the complex use case models they need -- and poorly developed models fail to achieve their goals. In Advanced Use Case Modeling, Volume I, two leading use case experts present proven techniques for applying use cases in even the most challenging environments. The book begins with a clear, rigorous, example-driven explanation of the fundamental concepts of use cases. Next, the authors introduce repeatable processes for developing use cases that successfully drive systems design. Readers will learn the traps and pitfalls of use case design and how to avoid them; then discover new techniques for addressing the most important use case modeling issues -- several of which have never before been discussed in a book. All descriptions and examples reflect the latest UML notation. For all object-oriented designers, analysts, and software engineers -- and for all managers and users involved in object-oriented development projects.
دانلود کتاب Advanced Use Case Modeling : Software Systems, Portable Documents