Foundations of Software Engineering

Kenneth M. Anderson <kena@cs.colorado.edu>

Lecture 11: Software Requirements, Part 3

Relationship to Textbook

In this Lecture

Use Cases

Use Case Terminology

Use Cases as Requirements

More on Use Cases

Parts of a Use Case

Parts of a Use Case

Primary Actor Goal in Context
Scope Level
Stakeholders and Interests Precondition
Minimal Guarantees Success Guarantees
Trigger Main Success Scenario
Extensions Technology and Data Variations List
Priority Releases
Response Time Frequency of Use
Channel to Primary Actor Secondary Actors
Channels to Secondary Actor Open Issues

Highlights from Parts List

Examples

Use Case Narratives

Use case narratives are used to motivate the existence of a use case. They are not use cases themselves!

Use Case Narrative

User-Level Use Case

User-Level Use Case

Summary-Level Use Case

Summary-Level Use Case

Low-Ceremony Use Case

Low-Ceremony Use Case

High-Ceremony Use Case

High-Ceremony Use Case Part 1 High-Ceremony Use Case Part 2 High-Ceremony Use Case Part 3

Graphical Notation

UseCaseNotation

Actors and Goals

Actors and Goals Illustrated

ActorsGoals

The Writing Process

Requirements Validation

Inspections to the Rescue!

Metrics

Function Points

Calculating Function Points

Problems with Function Points

Summary

Coming Up Next