Making Sense of Use Cases
- Description
- Curriculum
- FAQ
- Reviews
Come join us as we explore the world of use cases and use case modeling. We’ll take a deep dive into this part of the UML, looking at actors, use cases, use case diagrams, flows of events, and activity diagrams. With these powerful tools at your disposal, you’ll be able to create requirements artifacts that are invaluable to your team.
In this course, you’ll learn:
- What a use case is, and how to effectively use them in a project
- What an actor is, and how they can help us understand our users’ perspectives
- How to find use cases and actors in your project
- How to build an effective use case diagram
- How to model reusable logic with Includes and Extends relationships
- How to model actor inheritance using Generalization relationships
- What not to do when defining or modeling use cases and actors
- How to write a use case specification, with a description, preconditions, basic and alternate flows of events, and post-conditions
- How to build an activity diagram to give you a picture of the flow
- How use cases fit into the SDLC
- What to do with non-functional requirements
And through the whole class, we’ll use real world examples and exercises to help reinforce the ideas and give you the chance to practice. In this short course, you’ll get the skills you need to start applying use cases to your projects right away.
-
1Overview of the Course
An overview of the goals and contents of the course
-
2Introduction to the Example
An introduction to a sample problem we'll use throughout the course. We'll come back to this example over and over, as we go through the different concepts and ideas in the class. We'll use it for exercises as well, to tie all of the ideas together.
-
3Introduction to Use Cases
This lecture is an introduction to use cases. We'll look in detail at the definition of the term "use case" and talk about the value a use case provides. We'll see some examples and talk about how we should (and shouldn't!) name use cases.
-
4Finding Use Cases
We'll talk about the process we follow to find use cases in a project, starting with the project's Vision and features. Then we'll put this into practice by going through our sample project and identifying use cases for that project.
-
5Actors
In this session, we'll take a closer look at actors. We'll look closely at the definition of the term "actor", and talk about different types of actors, how to find them, and how to name them.
-
6Exercise: Identify Actors and Use Cases
Practice the skills you just learned by identifying actors and use cases in a sample project.
-
7Exercise Solution: Identify Actors and Use Cases
This is our solution to the exercise, including the actors and use cases we found.
-
8Diagramming Use Cases, Actors, and Associations
A picture can be worth a thousand words, and a use case diagram can help a team better visualize and understand use cases, actors, and their relationships. In this session, we'll take a closer look at this diagram, including the UML notation for actors, use cases, and associations.
-
9Include and Extend Relationships
This session builds on the last, adding Include and Extend relationships to our use case diagrams. We can use these relationships to model reusable functionality in a system. We'll talk about how and when we might want to use them, the differences between Includes and Extends, and the UML notation for each one.
-
10Actor Generalization
In this session, we'll go through one final type of relationship on a use case diagram - a generalization relationship between actors. We can use generalizations to model actors with some commonality.
-
11Things Not to Do
It's important to recognize things not to do in a use case diagram. In this session, we'll go through some common mistakes in use case modeling, and talk about better approaches and solutions.
-
12Example of a Use Case Diagram
This session will tie all of the use case diagram discussions together. We'll walk through our example project and talk about how we build a use case diagram for that project.
-
13Exercise: Build a Use Case Diagram
Practice building a use case diagram by crtating one for teh actors and use cases you identified in the previous exercise.
-
14Exercise Solution: Build a Use Case Diagram
Our solution to the use case diagram exercise. We'll walk through the use case diagram we put together for our actors and use cases.
-
15Writing a Use Case Specification
The use case specification is a document that gives us requirements and other details for a use case. In this session, we'll take a close look at this document and its contents, format, and use in a project. We'll walk through each of the sections of the document, including the brief description, preconditions, basic flow of events, alternate flow of events, and post-conditions, and talk about what belongs in each section.
-
16Exercise: Write a Use Case Specification
Practice the skills you just learned by writing a use case specification for one of your use cases.
-
17Exercise Solution: Write a Use Case Specification
We'll walk through the use case specificqation we wrote for one of our use cases.
-
18Activity Diagrams
An activity diagram is an optional, but very useful, addition to a use case specification. It can help the team better visualize the flow through the use case. In this session, we'll talk about this UML diagram and the notation we use.
-
19Exercise: Activity Diagram
Practice this UML skill by building an activity diagram for your use case.
-
20Exercise Solution: Activity Diagram
Our solution to the activity diagram exercise. We'll walk through the diagram we put together for our use case.
-
21Use Cases in the SDLC
In this session, we'll talk about how use cases fit into a typical software development life cycle. In particular, we'll look at how use cases evolve through an iterative approach.
-
22What About Non-Functional Requirements?
Use cases are a great way to capture functional requirements, but here we'll explore ways to capture non-functional requirements as well.