# A Petri Net Approach for Business Process Modeling and Simulation
## 3 Related Work  
In the 1990s, numerous industries developed workflow management systems and created languages for modeling business processes. Many of these languages utilized graphical syntax. However, despite the apparent simplicity of defining such languages, it is a complex undertaking due to the dynamic semantics of processes. Examples of these languages include ARIS, BPEL, BPMN, and UML. However, these modeling languages encountered issues with their formal semantics. For instance, BPEL lacks graphical modeling capabilities, while the semantics of UML and BPMN activity diagrams converge towards PNs [6]. The ease and flexibility offered by graphical modeling languages provides the possibility of introducing control flow anomalies into process specifications [20]. A process is a series of related and structured activities, and Petri nets (PNs) can effectively reflect this process by simulating the changes of state involved. PN modeling is distinguished by being a formal tool with available support to analyze and verify systems, thereby increasing reliability and detecting errors during the design phase [21]. However, classical PNs have limitations when it comes to describing multiple tokens within BP modeling, as they become indistinguishable. To overcome this limitation, it is recommended to use Colored Petri Nets (CPNs), which allow for the integration of different types of data with complex manipulation. CPNs provide the advantage of enhanced flexibility and versatility in modeling business processes [22]. In this case, it is necessary to establish the rules or policies of the business process. One approach to accomplish this is by using the Event-Condition-Action (ECA) concept to represent the main rules found in the workflow. These ECA rules are assigned strictly based on full CPNs, allowing for a clear representation of the rules and corresponding actions within the process [22]. A CPN is a graphical language used for constructing models of concurrent systems and analyzing system properties [22], including the establishment of various business rules. These rules can represent policy agreements or definitions related to the criteria applied by organizations in their interactions with customers, partners, or employees, typically expressed in natural language. Additionally, a decision table can be utilized to describe a set of interconnected decision rules using the \"If-Then\" structure [23]. Describing a BP using natural language presents a significant challenge due to the inherent ambiguity, semantic nuance, sentence composition, word relevance, and contextual connections between sentences [24]. It can be configured as a flow consisting of numerous sub-operations aimed at fulfilling a commercial function or adapting to changing business requirements. The objective is to simulate the operational granularity of the process. However, it is important to note that as the granularity of operations becomes smaller, the system becomes more costly and challenging to operate and maintain. Therefore, achieving the correct decomposition of a system becomes a crucial goal in supporting changes to the business process. This ensures that the final process operations can effectively support the overall business operation and accommodate potential changes [25]. It is common for organizations to have multiple variations of a specific business process, such as different sales processes for various products or distinct accounting processes for different countries. However, traditional business process modeling languages do not explicitly support the representation of such process variants. This challenge has prompted significant research efforts in the past decade, resulting in various approaches to business process variability modeling. These approaches typically extend conventional process modeling languages by introducing constructs that can capture customizable process models.