Software & Systems Modeling

, Volume 13, Issue 2, pp 573–598

A model-driven method for enacting the design-time QoS analysis of business processes

Theme Section Paper

Abstract

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.

Keywords

Business process MDA BPMN  Performance QoS LQN 

Abbreviations

AD

UML activity diagram

AM

Accommodation manager (example application)

BP

Business process

BPEL

Business process execution language

BPM

Business process management

BPMN

Business process modeling notation

FM

Flights manager (example application)

KPI

Key performance indicator

LQN

Layered queueing network

LQNS

Tool for analyzing LQN models

MARTE

Modeling and analysis of real-time and embedded systems (UML profile for)

MOF

Meta-object facility

MDA

Model-driven architecture

MTTF

Mean time to failure

MTTR

Mean time to repair

OMG

Object management group

PyBPMN

Performability-enabled business process modeling notation

SLA

Service level agreement

SOA

Service-oriented architecture

SoaML

Service-oriented architecture modeling manguage (UML profile for)

STD

State transition diagram

TM

Transportation manager (example application)

UML

Unified modeling notation

QoS

Quality of service

QVT

Query/View/Transformation language

XMI

XML metadata interchange

XML

eXtensible markup language

XSLT

eXtensible stylesheet language transformations

References

  1. 1.
    Alonso, G., Casati, F., Kuno, H., Machiraju, V.: Web Services: Concepts, Architecture and Applications. Springer, Berline (2004)Google Scholar
  2. 2.
    Amsden, J.: Modeling with SoaML, the Service-Oriented Architecture Modeling Language. Technical article, IBM, 2010. http://www.ibm.com/developerworks/rational/library/09/modelingwithsoaml-1/index.html
  3. 3.
    Avizienis, A., Laprie, J.-C., Randell, B., Landwehr, C.: Basic concepts and taxonomy of dependable and secure computing. IEEE Trans. Dependable Secur. Comput. 1, 11–33 (2004)CrossRefGoogle Scholar
  4. 4.
    Becker, J., Kugeler, M.: Process Management: A Guide for the Design of Business Processes. Springer, Berlin (2003)CrossRefGoogle Scholar
  5. 5.
    Bernardi, S. Merseguer, J., Petriu, , D.C.: Adding dependability analysis capabilities to the MARTE profile. In: Proceedings of the 11th International Conference on Model Driven Engineering Languages and Systems, MoDELS ’08, pp. 736–750. Springer, Berlin, Heidelberg (2008)Google Scholar
  6. 6.
    Bocciarelli, P., D’Ambrogio, A.: Model-driven performability analysis of composite web services. In: SPEC International Performance Evaluation Workshop (SIPEW 2008), Darmstadt, Germany, 27–28 June, 2008. LNCS vol 5119/2008Google Scholar
  7. 7.
    Bocciarelli, P., D’Ambrogio, A.: A BPMN extension for modeling non functional properties of Business Processes. In: Proceedings of the Symposium On Theory of Modeling and Simulation, DEVS-TMS ’11, (2011)Google Scholar
  8. 8.
    Bocciarelli, P., D’Ambrogio, A.: A model-driven method for describing and predicting the reliability of composite services. Softw. Syst. Model. 10(2), 265–281 (2011). doi:10.1007/s10270-010-0150-3 CrossRefGoogle Scholar
  9. 9.
    Bocciarelli, P., D’Ambrogio, A.: Performability-oriented description and analysis of Business Processes. In: Beckmann, J.A. (ed.) Business Process Modeling: Software Engineering, Analysis and Applications. Nova Publishers, New York (2011)Google Scholar
  10. 10.
    Braghetto, K.R., Ferreira, J.E., Vincent, J.-M.: Performance evaluation of business processes through a formal transformation to san. In: Proceedings of the 8th European conference on Computer Performance Engineering, EPEW’11, pp. 42–56. Springer-verlag, Berlin, Heidelberg (2011)Google Scholar
  11. 11.
    Brambilla, M., Ceri, S., Fraternali, P., Manolescu, I.: Process modeling in web applications. ACM Trans. Softw. Eng. Methodol. 15(4), 360–409 (2006)CrossRefGoogle Scholar
  12. 12.
    Calinescu, R., Grunske, L., Kwiatkowska, M., Mirandola, R., Tamburrelli, G.: Dynamic qos management and optimization in service-based systems. IEEE Trans. Softw. Eng. 37(3), 387–409 (2011)Google Scholar
  13. 13.
    Cardoso, J., Miller, J., Sheth, A., Arnold, J., Krys, K.: Quality of service for workflows and web service processes. J. Web Semant. 1, 281–308 (2004)CrossRefGoogle Scholar
  14. 14.
    Castro, M., Liskov, B.: Practical byzantine fault tolerance. In: Proceedings of the Third Symposium on Operating Systems Design and Implementation, OSDI ’99, pp. 173–186. USENIX Association, Berkeley, CA, USA (1999)Google Scholar
  15. 15.
    Catley, C., Petriu, D.C., Frize, M.: Software performance engineering of a web service-based clinical decision support infrastructure. In: Proceedings of the 4th International Workshop on Software and Performance, WOSP ’04, pp. 130–138. ACM, New York, NY, USA (2004)Google Scholar
  16. 16.
    Cheung, R.C.: A user-oriented software reliability model. IEEE Trans. Softw Eng 6, 118–125 (1980)CrossRefMATHGoogle Scholar
  17. 17.
    Chung, S., Davalos, S., Niiyama, C., Won, D., Baeg, S.-H., Park, S: A uml model-driven business process development methodology for a virtual enterprise using soa & esb. In: Proceedings of 4th IEEE Asia-Pacific Services Computing Conference, IEEE APSCC 2009, Singapore, pp. 246–253. 7–11 Dec 2009Google Scholar
  18. 18.
    Dahman, K., Charoy, F., Godart, C.: Generation of component based architecture from business processes: model driven engineering for soa. In: European Conference on Web Services, pp. 155–162 (2010)Google Scholar
  19. 19.
    D’Ambrogio, A.: A model transformation framework for the automated building of performance models from uml models. In: Proceedings of the 5th International Workshop on Software and Performance, WOSP ’05, pp. 75–86. ACM, New York, NY, USA (2005)Google Scholar
  20. 20.
    D’Ambrogio, A. Bocciarelli, P: A model-driven approach to describe and predict the performance of composite services. In: Proceedings of the 6th International Workshop on Software and Performance, WOSP ’07, pp. 78–89. ACM, New York, NY, USA (2007)Google Scholar
  21. 21.
    Apache Software Foundation. Apache ODE (Orchestration Director Engine). http://ode.apache.org/
  22. 22.
    Eclipse Foundation. Eclipse QVT Transformation Engine. http://www.eclipse.org/m2m
  23. 23.
    Eclipse Foundation. UML2—Eclipse EMF-based implementation of the UML 2.x OMG metamodel. http://www.eclipse.org/modeling/mdt/?project=uml2
  24. 24.
    Gilmore, S., Haenel, V., Kloul, L., Maidl, M.: Choreographing security and performance analysis for web services. In, Bravetti, M., Kloul, L., Zavattaro, G. (eds) Formal Techniques for Computer Systems and Business Processes. Lecture Notes in Computer Science, vol 3670, pp. 200–214. Springer, Berlin/Heidelberg (2005)Google Scholar
  25. 25.
    Grefen, P., Aberer, K., Hoffner, Y., Ludwig, H.: Crossflow: cross-organizational workflow management in dynamic virtual enterprises. Comput. Syst. Sci. Eng. 1(5), 277–290 (2000)Google Scholar
  26. 26.
    Gu, G.P., Petriu, D.C.: From uml to lqn by xml algebra-based model transformations. In Proceedings of the 5th International Workshop on Software and Performance, WOSP ’05, pp. 99–110, ACM, New York, NY, USA (2005)Google Scholar
  27. 27.
    ikv++ technologies ag. Medini QVT. http://projects.ikv.de/qvt
  28. 28.
    Jansen-Vullers, M., Netjes, M.: Business process simulation—a tool survey. In: Workshop and Tutorial on Practical Use of Coloured Petri Nets and the CPN (2006)Google Scholar
  29. 29.
    Kamrani, F., Ayani, R., Karimson, A.: Optimizing a business process model by using simulation. In: IEEE Workshop on Principles of Advanced and Distributed Simulation (PADS), pp. 1–8. Atlanta, GA May 2010Google Scholar
  30. 30.
    Kettinger, W.J., Teng, J.T.C.: Business process change: a study of methodologies, techniques, and tools. MIS Q. 21, 55–80 (1997)Google Scholar
  31. 31.
    Ko, R.K.L.: A computer scientist’s introductory guide to business process management (bpm). Crossroads 15, 11–18 (2009)CrossRefGoogle Scholar
  32. 32.
    Krishnaswamy, S., Zaslasvky, A., Loke, S.W.: Estimating computation times in data intensive e-services. In: International Conference on Web Information Systems Engineering, pp. 72 (2003)Google Scholar
  33. 33.
    Lyu, M.R. (ed.): Handbook of Software Reliability Engineering. McGraw-Hill, Inc., Hightstown (1996)Google Scholar
  34. 34.
    Mayerl, C., Huner, K.M., Gaspar, J.-U., Momm, C., Abeck, S.: Definition of metric dependencies for monitoring the impact of quality of services on quality of processes. In: 2nd IEEE/IFIP International Workshop on Business-Driven IT Management, 2007. BDIM ’07. pp. 1–10 (2007)Google Scholar
  35. 35.
    Menascé, D.A.: Response-time analysis of composite web services. IEEE Internet Comput. 8, 90–92 (2004)CrossRefGoogle Scholar
  36. 36.
    Meyer, J.F.: On evaluating performability of degradable computing systems. IEEE Trans. Comput. 29(8), 720–731 (1980)CrossRefMATHGoogle Scholar
  37. 37.
    Momm, C., Malec, R., Abeck, S.: Towards a model-driven development of monitored processes. In: Oberweis, A., Weinhardt, C., Gimpel, H. Koschmider, A., Pankratius, V., Schnizler, B. (eds.) Wirtschaftsinformatik (2), pp. 319–336. Universitaetsverlag Karlsruhe (2007)Google Scholar
  38. 38.
    Van Moorsel, A.: Metrics for the internet age: quality of experience and quality of business. In: 5th International Workshop on Performability Modeling of Computer and Communication Systems, Erlangen, Germany, Sept 2001Google Scholar
  39. 39.
    Musa, J.D., Iannino, A., Okumoto, K.: Software Reliability: Measurement, Prediction, Application, (professional) edn. McGraw-Hill, Inc., New York (1990)Google Scholar
  40. 40.
    OASIS: Web Services Business Process Execution Language (WSBPEL), version 2.0. 2007Google Scholar
  41. 41.
    OMG: MDA Guide, version 1.0.1. 2003Google Scholar
  42. 42.
    OMG: XML Metadata Interchange (XMI) Specification, version 2.1.1. 2007Google Scholar
  43. 43.
    OMG: Meta Object Facility (MOF) 2.0 Query/View/Transformation, version 1.0. 2008Google Scholar
  44. 44.
    OMG: Service oriented architecture Modeling Language (SoaML), v. 1.0 Beta 2. 2009Google Scholar
  45. 45.
    OMG: A UML profile for Modeling and Analysis of Real Time Embedded Systems, v. 1.0. 2009Google Scholar
  46. 46.
    OMG: Business Process Modeling Notation (BPMN), version 2.0 (2011). http://www.omg.org/spec/BPMN/2.0/
  47. 47.
    Oussena, S., Barn, B.S.: Layered process models—analysis an implementation (using mda principles). In: Cordeiro, J., Filipe, J., (eds.) Proceedings of the 11th International Conference on Enterprise Information Systems (ICEIS), Institute for Systems and Technologies of Information, Control and Communication, vol. 3, pp. 168–175 (2009)Google Scholar
  48. 48.
    Ouyang, C., Dumas, M.: From business process models to process-oriented software systems. ACM Trans. Softw. Eng. Methodol. 19(1), 1–37 (2009)CrossRefGoogle Scholar
  49. 49.
    Ouyang, C., Dumas, M., Ter Hofstede, A.H.M., van der Aalst, W.: Pattern-based translation of bpmn process models to bpel web services. Int. J. Web Serv. Res. (JWSR) 5(1), 42–62 (2007)Google Scholar
  50. 50.
    Papazoglou, M.P.: Georgakopoulos, Dimitrios G.: Service-oriented computing. Commun. ACM 46, 24–28 (2003)CrossRefGoogle Scholar
  51. 51.
    Putnam, L.H., Myers, W. (1991) Measures for Excellence: Reliable Software on Time, within Budget, 1st edn. Prentice Hall Professional Technical ReferenceGoogle Scholar
  52. 52.
    Raedts, I., Petkovic, M., Usenko, Y.S., van der Werf, J.M.E.M., Groote, J.F., Somers, L.J.:. Transformation of bpmn models for behaviour analysis. In: MSVVEIS, pp. 126–137 (2007)Google Scholar
  53. 53.
    Carleton University Real-Time and Distributed Systems Group: Layered queueing network solver software package. http://www.sce.carleton.ca/rads/lqns/
  54. 54.
    Braghetto, K.R., Ferreira, J.E., Vincent, J.-M.: Comparison of modeling approaches to business process performance evaluation. Research Report RR-7065, INRIA 2009Google Scholar
  55. 55.
    Ryan, J., Heavey, C.: Process modeling for simulation. Comput. Ind. 57, 437–450 (2006)CrossRefGoogle Scholar
  56. 56.
    Silver, B.: Optimizing Business Performance with Business Process Management. Bruce Silver Associates (2006)Google Scholar
  57. 57.
    Silver, G.A., Maduko, A., Jafri, R., Miller, J.A., Sheth, A.P.: Modeling and simulation of quality of service for composite web services. In: Proceedings of the 7th World Multiconference on Systemics, Cybernetics, and Informatics, SCI’03, pp. 420–425 (2003)Google Scholar
  58. 58.
    Smith, R.M., Trivedi Kishor, S.: Performability analysis: Measures, an algorithm, and a case study. IEEE Trans. Comput. 37(4), 406–417 (1988)CrossRefGoogle Scholar
  59. 59.
    Song, H. Ryu, Y., Chung, T., Jou, W., Lee, K.: Metrics, methodology, and tool for performance-considered web service composition. In: Yolum, P., Gungor, T., Gurgen, F., Ozturan, C. (eds.) Computer and Information Sciences—ISCIS 2005. Lecture Notes in Computer Science, vol. 3733, pp. 392–401. Springer, Berlin/Heidelberg (2005)Google Scholar
  60. 60.
    Torres, V., Pelechano, V.: Building business process driven web applications. In: Proceedings of the 4th International Conference on Business Process Management, BPM’06, pp. 322–337. Springer-Verlag, Berlin, Heidelberg (2006)Google Scholar
  61. 61.
    van der Aalst, W.: The application of Petri Nets to workflow management. J. Circuits Syst. Comput. 8(1), 21–66 (1998)CrossRefGoogle Scholar
  62. 62.
    van der Aalst, W., Nakatumba, J., Rozinat, A., Russell, N.: Business Process Simulation: How to get it right? In: Handbook on Business Process Management, International Handbooks on Information Systems, pp. 317–342. Springer-Verlag (2010)Google Scholar
  63. 63.
    van der Aalst, W., ter Hofstede, A., Weske, M.: Business Process Management: A Survey. In: Weske, M., (ed.) Business Process Management. Lecture Notes in Computer Science, vol. 2678, pp. 1019–1019. Springer Berlin/Heidelberg (2003)Google Scholar
  64. 64.
    Wang, W.-L., Pan, D., Chen, M.-H.: Architecture-based software reliability modeling. J. Syst. Softw. 79(1), 132–146 (2006)CrossRefGoogle Scholar
  65. 65.
    Wetzstein, B., Karastoyanova, D., Leymann, F.: Towards Management of SLA-Aware Business Processes Based on Key Performance Indicators. In: 9th Workshop on Business Process Modeling, Development and Support (BPMDS’08)—Business Process Life-Cycle: Design, Deployment, Operation & Evaluation (2008)Google Scholar
  66. 66.
    White, S.A.:. Process modeling notations and workflow patterns. In: Fisher, L. (ed.) Workflow Handbook Future Strategies Inc., pp. 265–294 (2004). ISBN 0970350961Google Scholar
  67. 67.
    Whittaker, J.A., Thomason, M.G.: A markov chain model for statistical software testing. IEEE Trans. Softw. Eng. 20, 812–824 (1994)CrossRefGoogle Scholar
  68. 68.
    Woodside, M.: Tutorial introduction to layered modeling of software performance. http://www.sce.carleton.ca/rads/lqns/lqn-documentation/tutorialg.pdf
  69. 69.
    Yacoub, S.M., Cukic, B., Ammar, H.H.: Scenario-based reliability analysis of component-based software. In: Proceedings of the 10th International Symposium on Software Reliability Engineering, p. 22. IEEE Computer Society, Washington, DC, USA 1999Google Scholar
  70. 70.
    Yang, F., Shen, W., Tan, W., Ghenniwa, H.: A framework for service enterprise workflow simulation based on multi-agent cooperation. In: Proceedings of the IEEE International Conference on Systems, Man and Cybernetics, Istanbul, Turkey, pp. 2587–2594. 10–13 Oct 2010Google Scholar
  71. 71.
    Zeng, L., Benatallah, B., Ngu, A.H.H., Dumas, M., Kalagnanam, J., Chang, H.: Qos-aware middleware for web services composition. IEEE Trans. Softw. Eng. 30, 311–327 (2004)CrossRefGoogle Scholar
  72. 72.
    Zheng, Z., Lyu, M.R.: Collaborative reliability prediction of service-oriented systems. In: Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering—ICSE ’10, vol. 1, pp. 35–44. ACM, New York, NY, USA 2010 Google Scholar
  73. 73.
    Zheng, Z., Lyu, M.R.: A qos-aware fault tolerant middleware for dependable service composition. In: Proceedings of the 39th International Conference on Dependable Systems and Networks, pp. 239–248. IEEE, Estoril, Lisbon, 209Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  1. 1.Department of Enterprise EngineeringUniversity of Rome Tor VergataRomeItaly

Personalised recommendations