Duration
2 days
Overview
This use cases training course is a hands-on introduction to the basic concepts of identifying and writing use cases for system analysts, business analysts and subject matter experts. Students will learn how use cases are identified during requirements gathering, and how actors are used to initiate use cases. Prerequisites and guarantees will be identified, and guidelines established for their use. Students will learn how to identify and document alternate paths. Use Case Diagrams, their syntax and use within UML will be discussed, along with practical advice concerning their use. Finally, the differences between high-level (essential) and detailed (system) use cases will be covered. Concepts will be reinforced with hands-on lab exercises, facilitated by the instructor, to simulate the development of use cases in a production environment.
In this course, you will learn how to utilize use case modeling to document functional requirements that can be understood and validated by all project stakeholders, including technical staff and business stakeholders, increasing the likelihood that stakeholder needs on a project are met.
Through hands-on activities and 75% of your class time spent practicing new skills, you will master creating use case models, including creating use case diagrams and descriptions to communicate functional requirements. You will learn the theory and practice of creating use case flows to describe normal and exceptional usage scenarios and using advanced techniques to refine the use case model. You will learn how use cases can enhance your skills as a business analyst and help technical staff clearly understand the requirements of the business. Leveraging the best practices of use case modeling on your next project will ensure that it is designed to requirements and that client expectations are met.
Benefits
- Describe how Use Cases are used in gathering user requirements
- Define the differences between functional and non-functional requirements
- Explain the role of an Actor in a Use Case
- Understand the use of Prerequisites and Guarantees in Use Cases
- Explain the differences between high-level and detailed Use Cases
- Identify and write main and alternate paths in a Use Case
- Use a Use Case Diagram to document the relationship between Use Cases
- Participate as a member of a team identifying and writing Use Cases
COURSE OUTINE
Module 1: Blending Use Case and User Requirements
Improve customer satisfaction and product delivery by applying techniques from this Use Case training course for User & System Requirements. With this use case training, you will understand the difference between user requirements vs system requirements, and gain the skills to capture software and IT business needs and requirements. You will also write use cases to specify software requirements, draw UML diagrams to model the system, create the data and interface models, and develop an IT requirements document.
- Business -> User -> System
- Nonfunctional vs. functional
- User Requirements by focus
- User Requirements by level
- Iterative Development
- The origin of Use Cases
- Use Cases in the development lifecycle
- UML and Use Cases
- Scripting user stories and use cases
- Iteration and progressive elaboration of use cases
Module 2: Practices for Preparing Use Cases
The development of use cases is vital to understanding the “real world” interactions of customers when using a product to meet their need. During the planning stages of the product delivery process, it is important to create a user persona, a fictional character that embodies the characteristics of your target audience. A user persona enables you to better understand the habits, activities and more importantly, the goals of your target market. The role of the user persona is to guide you to make better decisions during the product delivery process.
- Organizing the Requirements Team
- Stakeholders and participants
- Context Diagrams
- The mission statement/direction statement
- Identifying major components and risk
- Use cases as behavioral requirements
- Identifying stakeholders and actors Naming and scoping use cases
- Writing scenarios: main and alternatives
- Adding preconditions and guarantees
- Exploring the use cases and the interface
- Determining data business rules
DAY 2Module 3: Writing Use Cases
A use case is a written description of how users will perform tasks on your website. It outlines, from a user’s point of view, a system’s behavior as it responds to a request. Each use case is represented as a sequence of simple steps, beginning with a user's goal and ending when that goal is fulfilled. Use cases add value because they help explain how the system should behave and in the process, they also help brainstorm what could go wrong. They provide a list of goals and this list can be used to establish the cost and complexity of the system. Project teams can then negotiate which functions become requirements and are built.
- Actors
- Discovering Use Cases
- High-level Use Cases
- Detailed Use Cases
- Use Case Structure and Format
- Required elements of a use case
- Optional elements of a use case Design by Contract
- Identifying Alternate Paths
- Refining use cases with stakeholders
- Factoring common steps
- Discovering extension scenarios
- Verifying use case completeness
Module 4: Refining Use Cases
To support the design and coding activities, the use cases developed in the elicitation activities must be more fully elaborated. Use cases are most appropriate when the system is rich in functionality and must support differing types of users. Use cases are not as effective when applied to systems with few or no users and minimal interfaces, those with mostly nonfunctional requirements, and design constraints.
- Evolving to detailed Use Cases
- Iteration - identifying new Use Cases
- Use Case Diagrams
- Diagramming scenarios with UML
- Choosing free text vs. formal use case notation
- Supporting use cases with user interface mock-ups
- Comparing types of interface
- <<includes>> vs. <<extends>>
- Problems with Use Cases
- Maintaining the glossary
- Common Use Case Errors
- Using and maintaining a glossary
Programme scope, delivery arrangements and suitability are confirmed during enquiry.