Duration: 2 Days
In this course, you will build on your existing knowledge of the use case approach and learn the latest techniques for developing use cases, discovering other types of requirements, and documenting them expertly. You will gain a thorough understanding of common requirements, use case pitfalls, and challenges. You will learn the practical approaches for discovering and writing use cases and requirements, as well as strategies for applying the use case methodology throughout the project life cycle in your organization.
What You Will Learn
- Project initiation to
determine and document project scope
- Basic requirements elicitation and use case discovery methods
- Discover actors, events, normal scenarios, and extension scenarios
- Work as a team to establish the appropriate level of detail for any use case
- Write complete, fully dressed
use cases, usage narratives, and use case briefs
- Write user stories and use them to discover and confirm use cases
- Produce well written use case diagrams and narratives
- Includes and extends relationships in use cases
- Use cases for large and/or complex systems
- Write high-quality statements of requirements
- Derive other requirements from use cases
- Traceability issues and apply use case traceability to improve testing and
quality
- Use cases improve
your software testing and QA processes
- Generate test procedures from use cases
- Derive design elements from use cases
- Generate a plan for bringing these methods back to your organization
Audience
- Business customer, user, or partner
- Business analyst
- Business
systems analyst
- Systems
analyst
- Systems architect
or designer
- Systems or
application developer
- Systems tester
- Leader of
systems project or teams
Prerequistes
Course Outline
1. Review of Requirements Development with Use Cases
- Terms
- Levels and types of requirements
- Characteristics of effective requirements
- Requirements, use cases, and the development life cycle
- Assess use case quality
- Requirements associated with a use case
- Use cases and Agile methods
2. IT Project Initiation
and Use Cases
- Project scope and stakeholders
- Actor/goal and use cases
- Event identification
- User
stories for agile development
- Use case briefs and usage narratives
- Use case diagram
3. Documenting Requirements with
Use Cases
- Use case
preamble
- Normal course (
main success scenario)
- Extension scenarios
- Includes (sub-function use cases) and extends relationships (extension use
cases)
- Linking uses cases
for larger or more complex systems
4. Improving Use
Case Quality
- Characteristics of well-written use cases
- Common problems with use cases
- Avoiding use case traps and pitfalls
- Validating use cases through reviews and inspections
5.
Use Cases and Other Requirements
- Deriving non-functional requirements
- Business rules
- Data definitions
- Interfaces
- Quality attributes
- Relating use cases to other requirements
- Design constraints
- Documenting requirements and use case traceability
6.
Use Cases and Testing
- Benefits of early test case development
- Relating use cases to test cases
- Automated tools
- Reducing test procedure development time and testing time
7. Use Cases and Design Elements
- Design elements
- Relationship between a use case and design elements
- Functional decomposition for finding design elements
- Specifying design elements from a use case
- Validating requirements from user stories, use cases, and interface design
Exercises:
Exercise 1: Review poorly written requirements to discover
characteristics of effective requirements
-
Analyze several use cases and then extract possible requirements from those
sample use cases
Exercise 2: Determine if the use case approach is
appropriate, identify the use cases using the actor/goal identification method,
and write user stories and use case briefs for the case project
-
Practice diagramming the actors and the use cases
Exercise 3: Write a fully
dressed use case, including a preamble, the main success scenario, and the
extension scenarios
-
Write an included (or sub-function) use case and an extension use case
Exercise 4: Review another team's use case using a quality checklist
-
Refine your own use case based on feedback from another team
Exercise 5:
Derive and capture non-functional requirements from the use case
-
Develop and document traceability between the requirements and the use cases
Exercise 6: Automated use case documentation tool
-
Develop a partial set of test procedures
Exercise 7: Analyze the use case
you wrote to identify and specify required design elements
-
Prototype an interface design for a use case and use it to validate the
requirements
Course Labs