There are multiple types of models and diagrams that can be used for different domains and contexts. For example, use case diagrams are used to illustrate the interactions and scenarios between the system and the users, while class diagrams display the structure and attributes of the system components. Sequence diagrams demonstrate the flow and timing of messages between the system components, while activity diagrams show the steps and logic of a process or a function. Additionally, state diagrams depict the states and transitions of a system component or a behavior, data flow diagrams illustrate the sources, destinations, and transformations of data, and entity-relationship diagrams present entities, attributes, and relationships of data. Business process models demonstrate activities, roles, and events of a business process, quality attribute scenarios show stimuli, responses, and measures of a quality attribute, and user interface mockups display the layout, elements, and navigation of a user interface.