Course Overview:
This 2-day course provides a strong foundation in the mechanics of use case diagramming and writing textual descriptions of use cases. In this highly interactive workshop, you will learn how to enhance and refine your use case skills, how to involve your stakeholders in the use case process, and how to develop use cases that provide valuable information to the designers and testers.
Course Description:
Audience profile
This course has been expressly designed for the Business Analyst, Business System Analyst, System Analyst, and/or Requirements Engineer. The Designer, Developer and Tester who are actively involved in utilizing use cases may also benefit from this workshop.
At course completion
After completing this course, students will be able to:
- Employ use cases to elicit requirements, at a business, system or subsystem level
- Employ use cases to document the scope of a project
- Write use cases in a clear and unambiguous way.
- Model use cases with workflow diagrams
- Plan and divide up the project work based on your use cases
- Manage a use case as it evolves over time and goes through many changes
Course Outline
Module 1: Introduction
- Course objectives
- Understanding of business analysis
- Knowledge areas of BABOK® Guide
Module 2: Overview of Use Cases
- Describe the purpose and value of a use case approach
- Use case terminology
- Introducing a use case approach
Module 3: Needs Assessment
- Purpose of Needs Assessment
- Needs Assessment and use cases
- Defining and understanding the strategic goals and objectives
- Understanding the business process
- Identifying actors
- Identifying business information
- Analyzing locations and operations
- Drawing the business use case diagram
- Building the business architecture
- Defining solution options
Module 4: Defining System Scope
- Product scope/project scope
- System actors versus business actors
- Analyzing the business process model
- Analyzing business use cases
- Identifying candidate use cases
- Identifying scenarios
- Diagramming use cases
- Draw a use case diagram
- Create a use case catalog
Module 5: Evaluating, Prioritizing, and Packaging Use Cases
- Iterative nature of this work
- Evaluating use cases
- Use case priority
- Use case risk
- Use case complexity
- Use case dependencies
- Evaluate and Prioritize use cases
- Dividing work up between releases
- Packaging
- A process for how to perform packaging
Module 6: Writing the main success scenario
- Use case descriptions
- Primary and secondary goals
- Assumptions
- Pre-conditions
- Triggers
- Post-conditions
- Scenario example
- Main success scenario
- Conditional execution
- Use cases and requirements
- Best practices for writing a use case description
Module 7: Writing the other scenarios
- Scenarios and flows
- Alternate scenarios and flows
- Alternate vs. basic flow
- Guidelines for alternate flows
- Exception flows
- Failed post conditions
- Write alternate and exception flows
Module 8: Process Modeling to describe use case flows
- UML® Activity Diagram Notation
- Sequencing activities
- Developing an activity diagram
- Facilitated sessions
- Draw a UML® Activity Diagram
Module 9 Using Advanced Diagramming Techniques
- Commonality
- Dependency Relationships
- <<Includes>>
- <<Extends>>
- Identify <<include>> and <<extend>> relationships
- Comparing the different relationships
Module 10: Developing a Requirements Specification
- Requirements and use cases
- Detailed requirements
- Common approaches to specifications
- Non-functional requirements
- Write non-functional requirements
- User interface requirements
- UI data descriptions
- Business rules
- Decision tables and inference rules
- How to document simple calculations
- Reporting requirements
- Data requirements
- Data accessibility requirements
- Traceability
Module 11: Course Summary
- Wrap-up
- Finding more information