At its most basic level, a use case is simply a written description of a business process. We can employ this technique as a high-level analysis tool to determine overall system requirements, and to identify broad business objects that are involved in high-level processes. At the other end of the spectrum, we can get very specific in the use case description, defining detailed functionality and objects.
The process of starting with high-level use cases, and then zooming in to a number of increasingly detailed functional use cases, until we reach a set of specific objects and behaviors, is a technique known as functional decomposition.
This is very much a top-down approach to software analysis, and one that end users can usually relate to very well. It's easy to get a user to describe their high-level requirements, and then just continue to ask more and more questions to get a more detailed view of what they need. Usually, we can take the written use cases back to the user to make sure that what we heard and wrote down was actually what they meant.