Use Cases: Patterns and Blueprints(Software Patterns Series)

Use Cases: Patterns and Blueprints(Software Patterns Series)

by Gunnar Overgaard, Karin Palmkvist
     
 

ISBN-10: 0131451340

ISBN-13: 9780131451346

Pub. Date: 07/22/2004

Publisher: Addison-Wesley

"Gunnar and Karin have not only defined a large collection of use-case patterns and examples of how specific usages are to be modeled in a use-case model, they have also provided an accurate, complete, and comprehensible description of the constructs used in use-case modeling... I am impressed by this book."

—From the Foreword by Ivar

Overview

"Gunnar and Karin have not only defined a large collection of use-case patterns and examples of how specific usages are to be modeled in a use-case model, they have also provided an accurate, complete, and comprehensible description of the constructs used in use-case modeling... I am impressed by this book."

—From the Foreword by Ivar Jacobson

Employ the proven concept of design patterns to build more accurate, usable, and maintainable use-case models

This book brings together dozens of proven patterns for creating use cases that more accurately reflect real requirements, are easier to translate into working systems, and are simpler to maintain. Utilizing these patterns, architects, analysts, engineers, and managers can leverage decades of hard-earned knowledge to achieve far better results, far more quickly.

The authors carefully describe how each pattern works, what problems it is intended to solve, and the consequences associated with using it. All patterns are supported with detailed examples and platform-independent class models that demonstrate how they may be realized. All constructs and diagrams reflect the current UML 2.0 standard. This book also includes an insightful use-case primer that will be indispensable both to novices and veteran modelers seeking to become more effective.

Coverage includes

  • Modeling rules that lead to more comprehensible, maintainable, and correct models

  • Patterns for structuring, layering, mapping, sequencing, and viewing use cases more effectively

  • Blueprints for security, legacy integration, data input/ output, task scheduling, and reporting

  • Constructing use cases that separate mandatory elements from optional parts that can be delivered separately

  • Incorporating business rules in use-case modeling

  • Practical techniques for documenting use cases more effectively

  • When to use multiple patterns and blueprints together

  • Identifying and avoiding eight common mistakes in use-case modeling: guidance for designers and reviewers

  • Examples from a wide range of application domains

Rely on this book as the world's #1 reference to reusable use-case solutions—and as a catalyst for inspiration in all your use-case modeling projects.

Product Details

ISBN-13:
9780131451346
Publisher:
Addison-Wesley
Publication date:
07/22/2004
Series:
Software Patterns Series
Edition description:
New Edition
Pages:
433
Product dimensions:
7.16(w) x 9.60(h) x 1.35(d)

Table of Contents

Foreword.

Preface.

I. INTRODUCTION.

1. Use-Case Patterns and Blueprints.

Reusing Experience.

Contents of the Catalog.

2. Using Patterns and Blueprints in Use-Case Model Development.

The Internet Bank System.

The First Draft of the Model.

Applying Patterns and Blueprints.

The Complete Model.

Concluding Remarks.

II. USE CASES.

3. Use-Case Modeling: An Introduction.

4. Use Cases.

Use Case: A Type of Utilization Providing a Value.

A Gray-Box View of the System.

Use-Case Instance: A Specific Utilization.

Basic Flow and Variations.

Infinitely Large Models?

5. Modeling the System Environment.

Actor: An External User.

Interaction Between Use Cases and Actors.

6. Structuring a Use-Case Model.

7. Include: Reusing Existing Use Cases.

Include Relationship.

Documentation of the Include Relationship.

Dependency on Inclusion Use Cases.

8. Extend: Expanding Existing Use Cases.

Extend Relationship.

Characteristics of the Extend Relationship.

Extension Points.

Conditional Extensions.

Documentation of the Extend Relationship.

Dependencies Between Extending Use Cases.

9. Include vs. Extend.

10. More on Extend and Extension Points.

Multiple Fragments of Additional Behavior.

Multiple Insertions.

More on Extension Points.

11. Use-Case Generalization: Classification and Inheritance.

Generalization Between Use Cases.

Documentation of the Generalization Relationship.

Between Use Cases.

12. Actor Generalization: Overlapping Roles.

13. Describing Use Cases.

Documenting Use Cases.

Use Case: Order Ticket.

Guidelines for Writing.

Sections of a Use-Case Description.

14. Documenting a Use-Case Model.

Use-Case Model Survey.

Use-Case Diagrams.

Supplementary Documents.

15. Mapping Use Cases onto Classes.

Kick-Starting the Class Modeling.

Analysis Models and Design Models.

Analysis Classes.

Use-Case Realization: How Objects Perform a Use Case.

III. USE-CASE PATTERNS.

16. Business Rules.

Intent.

Patterns.

Discussion.

Example.

Use Case: Create Order for Shipping.

Business Rules.

Analysis Model.

17. Commonality.

Intent.

Patterns.

Discussion.

Example.

Use Case: Perform Task.

Use Case: Generate Pick List.

Use Case: Generate Invoicing Basis.

Analysis Model.

18. Component Hierarchy.

Intent.

Patterns.

Discussion.

Example.

Use Case: Register Order.

Use Case: Create Order.

Use Case: Check Item.

Use Case: Reduce Number of Available Items.

Analysis Model.

19. Concrete Extension or Inclusion.

Intent.

Patterns.

Discussion.

Example.

Use Case: Look-Up Flight.

Use Case: Order Ticket.

Use Case: Present Help.

Analysis Model.

20. CRUD.

Intent.

Patterns.

Description.

Discussion.

Example.

Use Case: CRUD Task.

Analysis Model.

21. Large Use Case.

Intent.

Patterns.

Discussion.

Example.

Use Case: Register Insurance Tender.

Analysis Model.

22. Layered System.

Intent.

Patterns.

Discussion.

Example.

Use Case: Deposit Money.

Use Case: Register Event.

Use Case: Notify Advisor of Large Balance.

Analysis Model.

23. Multiple Actors.

Intent.

Patterns.

Discussion.

Example.

Use Case: Local Call.

Use Case: Order Ticket.

Analysis Model.

24. Optional Service.

Intent.

Patterns.

Discussion.

Example.

Use Case: Create Order.

Use Case: Restock Item.

Analysis Model.

25. Orthogonal Views.

Intent.

Patterns.

Discussion.

Example.

Use Case: Evaluate and Apply Rules.

Use Case: Check Spelling.

Analysis Model.

26. Use-Case Sequence.

Intent.

Patterns.

Discussion.

Example.

Use Case: Present Navigation Page.

Use Case: Present Accounts.

Use Case: Pay Bills.

Use Case: Present Account Transactions.

Analysis Model.

IV. USE-CASE BLUEPRINTS.

27. Access Control.

Problem.

Blueprints.

Discussion.

Example.

Use Case: Manage Form.

Use Case: Manage Access Rights of a Form.

Use Case: Check Access Rights.

Use Case: Present Event Information.

Use Case: Register to an Event.

Analysis Model.

28. Future Task.

Problem.

Blueprints.

Discussion.

Example.

Use Case: Manage Task.

Use Case: Perform Task.

Use Case: Generate Invoicing Basis.

Analysis Model.

29. Item Look-Up.

Problem.

Blueprints.

Discussion.

Example.

Use Case: Look-Up Flight.

Use Case: Order Ticket.

Analysis Model.

30. Legacy System.

Problem.

Blueprints.

Discussion.

Example.

Use Case: Register Order, Version 1.

Use Case: Register Order, Version 2.

Analysis Model.

31. Login and Logout.

Problem.

Blueprints.

Discussion.

Example.

Use Case: Login/Logout.

Use Case: Order Ticket.

Use Case: Check for Messages.

Use Case: Manage User Information.

Analysis Model.

32. Message Transfer.

Problem.

Blueprints.

Discussion.

Example.

Use Case: Create Order.

Use Case: Restock Item.

Use Case: Login/Logout.

Use Case: Deliver Message.

Analysis Model.

33. Passive External Medium.

Problem.

Blueprints.

Discussion.

Example.

Use Case: Turn the Heater On or Off.

Use Case: Run the Heater at Full Power.

Analysis Model.

34. Report Generation.

Problem.

Blueprints.

Discussion.

Example.

Use Case: Generate Report.

Use Case: Manage Report Template.

Use Case: Generate Order Report.

Analysis Model.

35. Stream Input.

Problem.

Blueprints.

Discussion.

Example.

Use Case: Amplify Input Stream.

Analysis Model.

36. Translator.

Problem.

Blueprints.

Discussion.

Example.

Use Case: Compile Source Code.

Analysis Model.

V. COMMON MISTAKES.

37. Mistake: Alternative Flow as Extension.

Fault.

Incorrect Model.

Discussion.

Way Out.

38. Mistake: Business Use Case.

Fault.

Incorrect Model.

Discussion.

Way Out.

39. Mistake: Communicating Use Cases.

Fault.

Incorrect Model.

Discussion.

Way Out.

40. Mistake: Functional Decomposition.

Fault.

Incorrect Model.

Discussion.

Way Out.

41. Mistake: Micro Use Cases.

Fault.

Incorrect Model.

Discussion.

Way Out.

42. Mistake: Mix of Abstraction Levels.

Fault.

Incorrect Model.

Discussion.

Way Out.

43. Mistake: Multiple Business Values.

Fault.

Incorrect Model.

Discussion.

Way Out.

44. Mistake: Security Levels with Actors.

Fault.

Incorrect Model.

Discussion.

Way Out.

Glossary.

References.

Index.

Customer Reviews

Average Review:

Write a Review

and post it to your social network

     

Most Helpful Customer Reviews

See all customer reviews >