A use case is a document or textual description of how a system or business process works and users interact with the system to achieve a specific objective. Conversely, a use case model uses a use case diagram and narrative text to describe the components of a system and illustrate how it works. A use case diagram is designed using Unified Modelling Language (UML) to show the feasible interactions between a system and the end-users and an overview of the entire system. The narrative text describes the flow of events, including pre-and post-conditions, primary process steps, alternate flows, and exception flows.