| |
| |
Foreword | |
| |
| |
Preface | |
| |
| |
Introduction | |
| |
| |
| |
Fundamentals | |
| |
| |
| |
Actors | |
| |
| |
What Is an Actor? | |
| |
| |
Why Define Actors? | |
| |
| |
How to Find the Actors | |
| |
| |
Primary and Secondary Actor Types | |
| |
| |
Actor Personalities | |
| |
| |
Abstract Actors | |
| |
| |
Actor Notation | |
| |
| |
Conclusion | |
| |
| |
| |
Use Cases | |
| |
| |
Finding Use Cases | |
| |
| |
Describing Use Case | |
| |
| |
Refactoring the Use Case Model | |
| |
| |
Extending the UML Use Case Process | |
| |
| |
Organizing the Use Case Model | |
| |
| |
Another Approach to Building a Use Case Model | |
| |
| |
Conclusion | |
| |
| |
| |
Project Initiation | |
| |
| |
| |
Scoping the System: Vision Document and Business Case | |
| |
| |
Describing the Problem: Vision Document | |
| |
| |
Tackling the Dark Side | |
| |
| |
Determining Project Feasibility: Business Case | |
| |
| |
Writing the Business Case | |
| |
| |
Revising the Business Case | |
| |
| |
Conclusion | |
| |
| |
| |
Balancing the Software System Use Case Model | |
| |
| |
Analyzing the Domain | |
| |
| |
Documenting the Interfaces | |
| |
| |
Defining a Software Architecture | |
| |
| |
Packaging the Architecture | |
| |
| |
Conclusion | |
| |
| |
| |
Advanced Use Case Modeling Framework: Initial Use Case Model | |
| |
| |
| |
Introduction to the System Use Case Modeling Process Framework | |
| |
| |
Need for a Software Development Process | |
| |
| |
Advanced Use Case Modeling Process Framework | |
| |
| |
Creating or Customizing a Process Framework for a Specific Project | |
| |
| |
Conclusion | |
| |
| |
| |
Preparing for Use Case Modeling and Determining Use Case Approach | |
| |
| |
Perform a Stakeholder Analysis | |
| |
| |
Select and Customize a Use Case Process Framework | |
| |
| |
Select Use Case Standards, Templates, and Tools | |
| |
| |
Determine Training and Mentoring Needs | |
| |
| |
Conclusion | |
| |
| |
| |
Performing Initial Use Case Modeling | |
| |
| |
Develop Context Diagram | |
| |
| |
Identify the Major Actors | |
| |
| |
Discover the Conceptual System Use Cases | |
| |
| |
Develop Initial Use Case Diagram | |
| |
| |
Determine/Refine the Conceptual Business Objects | |
| |
| |
Relationship of Use Cases and the Object Model | |
| |
| |
Packaging and Validating the Use Case Conceptual Model | |
| |
| |
Conclusion | |
| |
| |
| |
Advanced Use Case Modeling Framework: Expanding the Use Case Model | |
| |
| |
| |
Develop Base Use Case Descriptions | |
| |
| |
Fields in a Base Use Case Description | |
| |
| |
Getting Started Creating Base Use Case Descriptions | |
| |
| |
Finding New Use Cases | |
| |
| |
Conclusion | |
| |
| |
| |
Elaborate the Base Use Case Description | |
| |
| |
Describing Alternative Flows | |
| |
| |
Text-Based Conditional and Iterative Logic in the Flow of Events | |
| |
| |
Using Activity Diagrams to Represent a Complex Flow of Events | |
| |
| |
Activity Diagrams versus Detailed Text | |
| |
| |
Conclusion | |
| |
| |
| |
Model Extend, Include, and Generalization Relationships | |
| |
| |
Extend Relationships | |
| |
| |
Include Relationships | |
| |
| |
Generalization Relationships | |
| |
| |
Bringing Together Extend, Include, and Generalization Relationships | |
| |
| |
Conclusion | |
| |
| |
| |
Add Supplemental Information to the Use Case Model | |
| |
| |
Use Case Priorities | |
| |
| |
Nonbehavioral Requirements | |
| |
| |
Interface Analysis | |
| |
| |
Focusing on Behavioral Details of Individual Use Case Activities | |
| |
| |
Documenting Details of Business Procedures and Rules | |
| |
| |
Conclusion | |
| |
| |
| |
Map Use Cases to Object Models | |
| |
| |
Analysis Object Modeling | |
| |
| |
Parallel Use Case and Object Modeling | |
| |
| |
Basic CRUD Matrix | |
| |
| |
Expanded CRUD Matrix | |
| |
| |
Analysis Sequence Diagrams | |
| |
| |
Mapping Use Cases to Object Models Using Sequence Diagrams | |
| |
| |
Issues with Using Sequence Diagrams during Analysis | |
| |
| |
Conclusion | |
| |
| |
| |
Develop Instance Scenarios | |
| |
| |
Use Case Instances Model Specific Executions of a Use Case | |
| |
| |
Use Cases Are to Object Classes as Use Case Instances Are to Object Instances | |
| |
| |
Why Create Use Case Instances? | |
| |
| |
Use Case Instances Can Be Applied Informally | |
| |
| |
Use Cases Can Be Applied More Formally | |
| |
| |
Layout of a Use Case Instance Description | |
| |
| |
Finding and Creating Use Case Instances | |
| |
| |
Conclusion | |
| |
| |
| |
Create Test Cases and Documentation | |
| |
| |
Creating a Test Strategy | |
| |
| |
Creating a Test Plan | |
| |
| |
Elements of a Test Plan | |
| |
| |
Creating Test Cases | |
| |
| |
Testing Range/Error Handling | |
| |
| |
Testing Interactions | |
| |
| |
Creating User Documentation | |
| |
| |
Conclusion | |
| |
| |
| |
Organize the Use Cases | |
| |
| |
Business Function Packages | |
| |
| |
Superordinate and Subordinate Use Cases | |
| |
| |
Dependency Streams | |
| |
| |
Activity Diagrams to Model Use Case Dependencies | |
| |
| |
Model Views | |
| |
| |
Putting It All Together in a System Use Case Model | |
| |
| |
Conclusion | |
| |
| |
| |
Additional Topics | |
| |
| |
| |
Building User Interfaces | |
| |
| |
Conceptual User Interface Design | |
| |
| |
Creating Conceptual Models from Use Cases | |
| |
| |
Physical User Interface Design | |
| |
| |
Conclusion | |
| |
| |
| |
Coping with Change | |
| |
| |
Requirements Churn | |
| |
| |
Source of Change | |
| |
| |
Accelerating Change | |
| |
| |
Managing Change | |
| |
| |
Change Cases | |
| |
| |
Changes to the Use Case Model | |
| |
| |
Conclusion | |
| |
| |
| |
Creating Your Advanced Use Case Modeling Process | |
| |
| |
Effect of the Project and Project Team on Ceremony | |
| |
| |
Effects of Artifacts on Ceremony | |
| |
| |
Development Case | |
| |
| |
Iterative Development and the Development Case | |
| |
| |
Conclusion | |
| |
| |
| |
Ensuring a Successful Use Case Modeling Effort | |
| |
| |
Appropriate Level of Detail and Organization in the Use Case Model | |
| |
| |
Attributes of a Good Use Case Model When Specifying Requirements | |
| |
| |
Incremental and Iterative Development with Use Cases | |
| |
| |
Know When Not to Use Use Cases | |
| |
| |
Questions to Ask When Use Case Modeling | |
| |
| |
Conclusion | |
| |
| |
| |
Use Case Development Review Checklist | |
| |
| |
| |
Development Case for Advanced Use Case Modeling | |
| |
| |
| |
Simplified Loan Processing System | |
| |
| |
| |
Simplified Loan Processing System User Interface Specification | |
| |
| |
Bibliography | |
| |
| |
Index | |