Service Oriented Computing and Applications

, Volume 11, Issue 3, pp 315–327 | Cite as

Automatic run-time versioning for BPEL processes

  • Paulo Melo
  • Paulo Rupino da Cunha
  • Catarina Ferreira da Silva
  • André Macedo
Original Research Paper


We describe a middleware solution for automatic run-time process versioning in Business Process Execution Language (BPEL) and then analyse its impact in terms of scalability and performance. Business processes change in response to business needs, but the deployment of new versions to a BPEL engine must ensure that running instances are not disrupted and can conclude following their original workflows. Our solution is implemented as a standalone component that manages versioning transparently to the process editor, the orchestration engine, the web services used by the process, and the end-user. We have tested it for almost 1 year in the production environment of a telecommunications company, without significant overhead in terms of process invocation time.


Business process versioning Business Process Execution Language (BPEL) BPEL versioning Service-oriented architecture (SOA) Web services Middleware 


  1. 1.
    Andrikopoulos V, Benbernou S, Papazoglou MP (2012) On the evolution of services. IEEE Trans Softw Eng 38(3):609–628CrossRefGoogle Scholar
  2. 2.
    Aria (2017) About ARIA TOSCA.
  3. 3.
    Baresi L, Guinea S, Manna VPL (2014) Consistent runtime evolution of service-based business processes. In: 2014 IEEE/IFIP conference on software architecture. Institute of Electrical and Electronics Engineers (IEEE), pp 77–86Google Scholar
  4. 4.
    Baresi L, Guinea S, Pasquale L (2012) Service-oriented dynamic software product lines. Computer 45(10):42–48CrossRefGoogle Scholar
  5. 5.
    Becker K, Pruyne J, Singhal S, Lopes A, Milojičić D (2011) Automatic determination of compatibility in evolving services. Int J Web Serv Res 8(1):21–40CrossRefGoogle Scholar
  6. 6.
    Brahm M, Fletcher AN, Pargmann H (2003) Workflow management with SAP\(\textregistered \) WebFlow\(\textregistered \). Springer, HeidelbergGoogle Scholar
  7. 7.
    Brown K, Ellis M (2004) Best practices for web services versioning.
  8. 8.
    Fang R, Chen Y, Fong L, Lam L, Frank D, Vignola C, Du N (2007) A version-aware approach for web service client application. IEEE, New YorkCrossRefGoogle Scholar
  9. 9.
    Frank D, Fong L, Lam L (2010) A continuous long running batch orchestration model for workflow instance migration. In: 2010 IEEE international conference on services computing. Institute of Electrical and Electronics Engineers (IEEE), pp 226–233Google Scholar
  10. 10.
    Frank D, Lam L, Fong L, Fang R, Vignola C (2007) An approach to hosting versioned web services. IEEE, New YorkCrossRefGoogle Scholar
  11. 11.
    Harrer S, Lenhard J, Wirtz G, Lessen TV (2014) Towards uniform BPEL engine management in the cloud. In: Proceedings of the CloudCycle14 workshop, Stuttgart, Germany, September 22nd 2014. Gesellschaft für Informatik, pp 259–270Google Scholar
  12. 12.
    Ibrahim DHA (2009) The concept of web service versioning in provenance. IEEE, New YorkCrossRefGoogle Scholar
  13. 13.
    Juric MB, Šaša A (2010) Version management of BPEL processes in SOA. In: SERVICES, 2010, IEEE 2010 6th world congress on services, Los Alamitos, CA, USA. Institute of Electrical and Electronics Engineers (IEEE), pp 146–147Google Scholar
  14. 14.
    Juric MB, Šaša A, Rozman I (2009) WS-BPEL extensions for versioning. Inf Softw Technol 51(8):1261–1274CrossRefGoogle Scholar
  15. 15.
    Kramer J, Magee J (1990) The evolving philosophers problem: dynamic change management. IEEE Trans Softw Eng 16(11):1293–1306CrossRefGoogle Scholar
  16. 16.
    Louridas P (2008) Orchestrating web services with BPEL. IEEE Softw 25(2):85–87CrossRefGoogle Scholar
  17. 17.
    Michlmayr A, Rosenberg F, Leitner P, Dustdar S (2010) Selective service provenance in the VRESCo runtime. Int J Web Serv Res 7(2):65–86CrossRefGoogle Scholar
  18. 18.
    MuleSoft (2016) Mule user guide: proxying web services.
  19. 19.
    Neth J, Smolny M, Zentner C (2008) Versioning business processes and human tasks in WebSphere Process Server.
  20. 20.
    OASIS Topology and Orchestration Specification for Cloud Applications (TOSCA) TC (2013) Topology and orchestration specification for cloud applications version 1.0. OASIS Standard, OASIS.
  21. 21.
    O’Hanlon B (2005) Create a simple HTTP web services gateway service with WebSphere application server V6.
  22. 22.
    Oracle (2007) Oracle BPEL Process Manager Developer’s Guide 10g ( Part Number B28981-03. Technical report, Oracle CorporationGoogle Scholar
  23. 23.
    Oracle Corporation (2016) Oracle fusion middleware developing SOA applications with Oracle SOA Suite, 12c ( Technical report, Oracle Corporation.
  24. 24.
    Vandewoude Y, Ebraert P, Berbers Y, D’Hondt T (2007) Tranquility: a low disruptive alternative to quiescence for ensuring safe dynamic updates. IEEE Trans Softw Eng 33(12):856–868CrossRefGoogle Scholar
  25. 25.
    Wessels D (2004) Squid the definitive guide. O’Reilly Media, SebastopolGoogle Scholar
  26. 26.
    Widrow B, Kollar I, Liu M-C (1996) Statistical theory of quantization. IEEE Trans Instrum Meas 45(2):353–361CrossRefGoogle Scholar

Copyright information

© Springer-Verlag London 2017

Authors and Affiliations

  1. 1.INESC Coimbra - Instituto de Engenharia de Sistemas e Computadores de CoimbraCoimbraPortugal
  2. 2.Center for Business and Economics Research (CeBER)University of CoimbraCoimbraPortugal
  3. 3.CISUC, Department of Informatics EngineeringUniversity of CoimbraCoimbraPortugal
  4. 4.Université Lyon 1, LIRIS, CNRS, UMR5205VilleurbanneFrance

Personalised recommendations