A use case diagram is a UML diagram that provides a graphical view of the requirements of your system, and helps you identify how users interact with it.
With a use case diagram, you immediately see a snapshot of the system functionality. Further details can later be added to the diagram if you need to elucidate interesting points in the system behavior.
A use case diagram is well suited to the task of describing all of the things that can be done with a database system by all the people who might use it. However, it would be poorly suited to describing the TCP/IP network protocol because there are many exception cases, branching behaviors, and conditional functionality (what happens when the connection dies, what happens when a packet is lost?)
In the following example, the actor "photographer" does two things with the camera: take pictures and change the film. When he takes a picture, he has to switch the flash on, open the shutter, and then close the shutter but these activities are not of a high enough level to be represented in a use case.