A use case diagram captures system functionality and requirements by modeling actors and use cases. Actors represent roles that interact with the system, while use cases represent system functions. A use case diagram visually shows the relationships between actors and use cases. An include relationship shows that one use case includes the functionality of another, while an extend relationship shows optional or conditional behavior. Generalization defines one use case as a generalization of another to replace generic functionality.