Towards code generation from simulation models: A framework for business process automation
Abstract
Background: Business processes and information systems are closely linked, and the effectiveness of a software product is heavily dependent upon the accurate capture and implementation of business requirements. Numerous software projects experience delays, budget overruns, and quality complications stemming from discrepancies between stakeholder expectations and the features that are ultimately implemented. Simulation provides a dynamic perspective on system behavior, representing it a powerful tool for visualizing and comprehending business workflows prior to their translation into software components. Such comprehension can facilitate clearer requirements, enhance communication, and ultimately foster more efficient and reliable software development.
Methods: This research introduces a framework that bridges the gap between simulation modeling and software implementation. The framework empowers developers to autonomously generate and modify databases, microservices, and interfaces grounded in business process simulation models, thereby removing the necessity to construct such components from the ground up. Initially, the framework was evaluated using a straightforward banking process model to authenticate its core functionalities. Subsequently, it was assessed through the involvement of 61 participants, who were assigned the task of manually developing microservices for an online shopping simulation case study. The identical task was repeated using the proposed framework to evaluate time efficiency and implementation efficacy.
Results: The results show that there is a substantial decrease in development duration and manual development. On average, participants needed between 45 to 60 minutes to manually construct the whole process including database, microservices, and interfaces, whereas the frameworks automated generation mechanism completed the equivalent task in roughly 8 minutes. Beyond time efficiency, the automated methodology yielded more uniform and less erroneous modules, thereby facilitating a clearer alignment between simulated processes and their software representations.
Conclusion: The proposed framework illustrates how simulation models can be seamlessly converted into software products, thereby enhancing the efficiency and accuracy of the software development process. By modifying dependence on manual implementation, the framework promotes superior integration of business process comprehension into software systems, ultimately contributing to swifter, more cost-effective, and higher-quality outcomes in practical development contexts.