Testing Event-Driven Business Processes Gerd Saurer, Josef Schiefer Senactive IT Dienstleisungs GmbH, Vienna, Austria Email: {gerd.saurer, josef.schiefer}@senactive.com Alexander Schatten Institute for Software Technology and Interactive Systems, Vienna, Austria Email: aschatt@ifs.tuwien.ac.at Abstract—Today’s business climate requires you to constantly evolve IT strategies responding to new opportunities or threats. While the fundamentals of IT - reliability, availability, security and manageability – are still crucial, rapid results are mandatory for business success. These business challenges can be solved by acting with agility – striking the proper balance between the introduction of leading-edge technology and the pragmatic application of IT. In this paper, we introduce a testing framework for business solutions dealing with complex and dynamic IT environments. Our framework supports test- driven development which facilitates an incremental construction of reliable business solutions that can be adapted to changes of a business environment easily. We compare our testing framework with model-driven development approaches and show how we applied it to an event-driven process management platform called SARI (Sense And Respond Infrastructure). Index Terms—Testing, Test-Driven Development, Business Process Management, Business Process Engineering, Event Management. I. INTRODUCTION The emergence of e-business has dramatically changed the context in which information systems are used for providing a better service to customers. With the increased rate of change possible in e-business, it has become essential that business processes can be adapted according to the changing business environment more quickly than in the past. Static processes that cannot adapt to changing needs are a liability. Enterprises are scrutinizing the effectiveness of their business and IT operations to identify opportunities for greater efficiencies. Sense & Respond [5] and Event Management [1] have emerged as disciplines to enable enterprises to manage time-sensitive and dynamic business processes which are highly integrated with information systems. A major challenge for systems in continuously changing business environments is to keep them robust and operational for critical business processes [14]. In this paper, we introduce a framework for testing the functionality of event-driven and time-sensitive business processes. With our testing framework we address the following issues: - Validation of the quality and correctness of a process model - Automated testing of business process execution within a distributed environment - Testing side effects from modifications of a process model - Detecting and diagnosing performance problems of process deployments - Facilities for investigating discovered malfunctioned processing steps Traditional business process management solutions use simulation for analyzing the quality of process models. Process simulation is a top-down approach for process reengineering programs and provides valuable insight in variations of process models. However, process simulation is only as good as the underlying assumptions for the simulation parameters. In this paper, we propose a testing framework which follows a bottom-up approach for gaining insight in existing business processes or business process solutions in development. Starting from an existing process model, we use our framework to validate it with tests bottom up. For the testing, we not only consider the description of the process model, but also runtime aspects as - Verifying the outcomes of processing steps by actually invoking services and components, - Measuring the throughput of processing engines, - Testing the robustness of the process management system during failover scenarios, - Testing changes for configuration settings such as parameters for processing engine, business rules, or resource assignments. - Creating simulation tools and mockup strategy to replace complex business environments like SAP during test scenarios The remainder of this paper is organized as follows. In Section II, we discuss test-driven development of business solutions and compare it with model-driven development. Section III describes problems and issues of process testing. In Sections IV – VI, we give an overview of our testing framework for testing Sense &