Use cases are a tool to specify how a system should work, by defining a sequence of actions that yields a useful outcome for an user. Although initially developed for software systems, the concept is applicable to other engineering domains, in particular, those that involve designing products or systems with user interaction. Another related concept is “user-stories”; they are similar, but they are not the same.

Stellmann and Greene have an online example of a Software Requirement Specification document with use case examples that can be useful to grasp the concept.

In a 2002 paper, T. Zink and Ian Alexander discuss the application of Use Cases to system engineering.