The art is to identify the users' goals, not the system functions. One way of doing this is to treat a user's business task as a use case, and to ask how the computer system can support it. Use-case diagrams provide a way of describing the external view of the system and its interactions with the outside world. In this way it resembles the context diagram of traditional approaches. In this representation the outside world is represented as actors.
Actors are roles played by various people, or other computer systems.
Use-cases are then typical interactions that the actor has with the system. Use-cases can be seen as a large unstructured set or they can be structured in some way. This is somewhat like pulling a common subroutine out which is shared by other routines. The second construct allows one use-case to extend another. Use-cases act as the structuring mechanism for interaction diagrams.