Process modeling is the activity of representing processes of an enterprise in a graphical way so that the current business processes may be analyzed, improved, and automated. It is a visual depiction of the flow of work and tasks for specific goals. Process modeling tools enable the collaborative modeling of complex processes by users working in teams, where users can share and simulate models collaboratively. There are different types of process models, including flowcharts, process maps, swim lanes, process trees, and state transition diagrams, which all allow for unique ways to represent different types of processes. The goals of a process model are to be descriptive and track what actually happens during a process. Process modeling addresses the process aspects of an enterprise business architecture, leading to an all-encompassing enterprise architecture. The relationships of business processes in the context of the rest of the enterprise systems, data, organizational structure, strategies, etc. create greater capabilities in analyzing and planning a change. Process modeling is a powerful tool that leverages BPMN to help optimize business processes. It is a visual representation of an organizations operations and processes and provides the ability to identify opportunities for improvement.