Auto-Generation of Domain-Specific Systems: Cloud-Hosted DevOps for Business Users
The wide use of spreadsheet-based solutions for business processes illustrates the importance of giving business users simple mechanisms for specifying and managing their processes. However, spreadsheet-based solutions are hard to maintain, reuse, integrate, and scale. This paper describes an approach for supporting 'DevOps for business users' that enables business-level users to manage the full lifecycle of a large class of cloud-hosted business processes. The approach builds on DevOps for software engineering, but removes software engineers from the loop. Unlike general-purpose 'low code' business process management systems, the approach incorporates aspects of a processing domain (e.g., billing) to create a DevOps experience that business users can master easily. In the approach, business users follow an agile 'specify-check-generate-deploy' methodology, enabling them to rapidly and iteratively generate and operationalize cloud-hosted processing systems, with little or no assistance from IT staff. We demonstrate and evaluate the approach using a system built for the billing application area, developed at IBM, which provides technology support and maintenance services for numerous clients, each with different billing needs and logic. The paper describes the system, requirements, empirical evaluation of key components, and lessons learned.