Course Content
Use Case Modeling Overview
- Business context for use cases
- Benefits of use case modeling
- Use case definitions, elements, and components
- Levels of use cases and a framework for developing them
- Use case pitfalls to avoid and tips for avoiding them
Use Case Diagrams
- Use case diagram steps
- Defining the system/problem domain
- Finding actors and use cases
- Using an actor checklist to help find actors
- Tips for finding use cases
- Interfaces between actors and use cases
- Use case diagram examples
- Use Case Packages and their use
- Case study and Use Case diagram workshop
Narrative Flows of Events
- Flows of events and their purpose: primary, alternate, and exception paths
- Use case scope: pre-and post-conditions
- Scenarios and their purpose
- Methods for documenting primary flows
- Documenting alternate and exception flows
- Documenting scenarios
- Narrative flow examples
- Tips for analyzing and documenting flows
- Use case flow of events workshop
Use Cases, Test Cases, and User Interfaces
- Relationship between use cases and test cases/scenarios
- Translating use cases into test cases
- How use cases lead to user interfaces and other hidden requirements
- Use cases and user interfaces/prototyping
- Prototyping roles, preparation, and execution
- Prototyping workshop
Use Cases and Class Diagrams
- UML notation
- Class and object relationships
- Extracting classes from use cases
- Verifying a class: attributes, operations, and associations/multiplicity
- Packaging and generalizing classes
- Class/data workshop
Activity Diagrams
- Discussion: What is an Activity Diagram?
- Activity Diagrams
- Purpose
- UML notation and terminology
- Advantages of this modeling technique
- Exercise: diagramming the primary path
- Decision diamonds and guard conditions
- Looping in Use Cases
- Exercise: diagramming alternate paths
- Workshop
Use Case Relationships
- UML notation
- Include relationship and example
- Referring to includes in flows
- Extend relationship and example
- Referring to extends in flows
- Generalization relationship and example
- Relationship workshop
Documenting Use Cases
- Use case documentation components
- Documentation template