Usability.gov offers this very helpful definition, slightly modified for our purposes:
A use case is a written description of how users will perform tasks with your software or app.
A use case is written from the user’s point of view, and documents how a system will behave as it responds to user action.
Each use case is written as a sequence of simple steps, beginning with a user’s goal and ending when that goal is fulfilled.
Use cases add value because they help explain how the system should behave and in the process, they also help brainstorm what could go wrong. They provide a list of goals and this list can be used to establish the cost and complexity of the system. Project teams can then negotiate which functions become requirements and are built.