Misuse Cases
A misuse case is a scenario that describes how a system could be exploited or attacked by a malicious actor. Unlike traditional use cases that show how a system should be used, misuse cases focus on what the system must not allow, helping teams identify security risks and define protective requirements during software design.
A misuse case is a business process modeling tool derived from the traditional use case concept, representing a use case from the perspective of an actor hostile to the system under design (referred to as a "misactor"). Misuse cases describe functions or interactions that the system must prevent or detect, and they are used during requirements analysis and threat modeling to systematically identify security and quality requirements. They typically include corresponding countermeasure cases that represent how the system prevents or detects the described misuse. Misuse cases are most effective when applied early in the software development lifecycle to surface adversarial scenarios, though their scope is limited to anticipated threat patterns and they may not capture novel or context-dependent attack vectors that emerge only at runtime or in specific deployment environments.
Why it matters
Traditional use cases capture how a system should behave when used as intended, but they leave a critical blind spot: how the system might behave when deliberately abused. Misuse cases fill this gap by forcing development teams to think like adversaries during the design phase, surfacing security and quality requirements that might otherwise be discovered only after deployment. By modeling hostile interactions early, organizations can define protective countermeasures before code is written, when the cost of remediation is significantly lower than fixing vulnerabilities found in production.
Who it's relevant to
Inside Misuse Cases
Common questions
Answers to the questions practitioners most commonly ask about Misuse Cases.