A model-driven method for enacting the design-time QoS analysis of business processes
|A model-driven method for enacting the design-time QoS analysis of business processes
|Year of Publication
|Bocciarelli, P., and Andrea D'Ambrogio
|Software and Systems Modeling
|Administrative data processing, Automation, Availability, BPMN, Business Process, Competition, Design, Enterprise resource management, Forecasting, High level languages, Information services, LQN, Mathematical models, MDA, Performance, Quality of service, Reliability, Service oriented architecture (SOA), Software architecture, Specifications, Web services
Business Process Management (BPM) is a holistic approach for describing, analyzing, executing, managing, and improving large enterprise business processes. A business process can be seen as a flow of tasks that are orchestrated to accomplish well-defined goals such as goods production or services delivery. From an IT perspective, BPM is closely related to a business process automation approach carried out by use of IT standards and technologies, such as service-oriented architectures (SOAs) and Web Services. This paper specifically focuses on fully automated business processes that are defined and executed as orchestrations of software services. In a BPM context, the ability to predict at design time the business process behavior assumes a strategic relevance, both to early assess whether or not the business goals are achieved and to gain a competitive advantage. A business process is typically specified by use of Business Process Modeling Notation (BPMN), the standard language for the high-level description of business processes. Unfortunately, BPMN does not support the characterization of the business process in terms of nonfunctional or QoS properties, such as performance and reliability. To overcome such a limitation, this paper introduces Performability-enabled BPMN (PyBPMN), a lightweight BPMN extension for the specification of performance and reliability properties. PyBPMN enables the design time prediction of the business processes behavior, in terms of performance and reliability properties. Such prediction activity requires the use of models that are to be first built and then evaluated. In this respect, this work introduces a model-driven method that exploits PyBPMN to predict, at design time, the performance and the reliability of a business process, either to select the process configuration that provides the best behavior or to check if a given configuration satisfies the overall requirements. The proposed model-driven method that enacts the automated analysis of a business process behavior embraces the complete business process development cycle, from the specification phase down to the implementation phase. The paper also describes how the proposed model-driven method is implemented. The several model transformations at the core of the method have been implemented by use of QVT, and the standard language for specifying model transformations provided by OMG's MDA. The availability of such automated model transformations allows business analysts to predict the process behavior with no extra effort and without being required to own specific skills of performance or reliability theory, as shown by use of an example application. © 2013 Springer-Verlag Berlin Heidelberg.