Business process discovery (BPD) related to business process management and process mining is a set of techniques that manually or automatically construct a representation of an organisations' current business processes and their major process variations. These techniques use data recorded in the existing organisational methods of work, documentations, and technology systems that run business processes within an organisation. The type of data required for process discovery is called an event log. Any record of data that contains the case id (a unique identifier that is helpful in grouping activities belonging to the same case), activity name (description of the activity taking place), and timestamp. Such a record qualifies for an event log and can be used to discover the underlying process model. The event log can contain additional information related to the process, such as the resources executing the activity, the type or nature of the events, or any other relevant details. Process discovery aims to obtain a process model that describes the event log as closely as possible. The process model acts as a graphical representation of the process (Petri nets, BPMN, activity diagrams, state diagrams, etc.). The event logs used for discovery could contain noise, irregular information, and inconsistent/incorrect timestamps. Process discovery is challenging due to such noisy event logs and because the event log contains only a part of the actual process hidden behind the system. The discovery algorithms should solely depend on a small percentage of data provided by the event logs to develop the closest possible model to the actual behaviour.
Process discovery techniques
Various algorithms have been developed over the years for the discovering the process model using an event log: α-algorithm - α-algorithm was the first process discovery algorithms that could adequately deal with concurrency. With an event log as the input, the α-algorithm derives various "relations" between the activities occurring in the event log. These relations are used to produce a Petri net that represents the log. Although the α-algorithm should not be considered as mining technique that can be used in practice, it provides a good introduction to the topic. The α-algorithm provided the basis for many other process discovery techniques. Heuristic mining – Heuristic mining algorithms use a representation similar to causal nets. Moreover, these algorithms take frequencies of events and sequences into account when constructing a process model. The basic idea is that infrequent paths should not be incorporated into the model. Genetic process mining - The α-algorithm and techniques for heuristic and fuzzy mining provide process models in a direct and deterministic manner. Genetic algorithms are a search technique that mimics the natural process of evolution in biological systems. These algorithms try to find a solution in the search space, by either testing existing points, or through the process of mutation or a combination of existing points. Such approaches are not deterministic and depend on randomisation to find new alternatives. Region-Based mining - In the context of Petri nets, researchers have been looking at the so-called synthesis problem, i.e., constructing a system model from a description of its behavior. State-based regions can be used to construct a Petri net from a transition system. This technique finds "General Excitation Regions" and builds Petri nets using such regions. Language-based regions can be used to construct a Petri net from a prefix-closed language. The language-based region technique uses algebraic constraints modeled from the event log to determine the places that allow the behavior observed in the event log. Inductive miner - A range of inductive process discovery techniques exists for process trees, which ensure soundness from construction. Therefore, the inductive mining framework is highly extendible and allows for many variants of the basic approach. It is considered one of the leading process discovery approaches due to its flexibility, formal guarantees, and scalability.