, Volume 95, Issue 6, pp 453–492 | Cite as

A sharing-based approach to supporting adaptation in service compositions

  • Dragan Ivanović
  • Manuel Carro
  • Manuel V. Hermenegildo


Data-related properties of the activities involved in a service composition can be used to facilitate several design-time and run-time adaptation tasks, such as service evolution, distributed enactment, and instance-level adaptation. A number of these properties can be expressed using a notion of sharing. We present an approach for automated inference of data properties based on sharing analysis, which is able to handle service compositions with complex control structures, involving loops and sub-workflows. The properties inferred can include data dependencies, information content, domain-defined attributes, privacy or confidentiality levels, among others. The analysis produces characterizations of the data and the activities in the composition in terms of minimal and maximal sharing, which can then be used to verify compliance of potential adaptation actions, or as supporting information in their generation. This sharing analysis approach can be used both at design time and at run time. In the latter case, the results of analysis can be refined using the composition traces (execution logs) at the point of execution, in order to support run-time adaptation.


Service composition Adaptation Sharing Static analysis  Horn clauses 

Mathematics Subject Classification

68M14 68U35 68N30 68Q85 68N17 68Q60 



The authors were partially supported by Spanish MEC project 2008-05624/TIN DOVES and CM project P2009/TIC/1465 (PROMETIDOS).


  1. 1.
    Agrawal R, Imieliński T, Swami A (1993) Mining association rules between sets of items in large databases. In: Proceedings of the 1993 ACM SIGMOD international conference on management of data, SIGMOD ’93, pp 207–216. ACM, New York. doi: 10.1145/170035.170072.
  2. 2.
    Armstrong WW (1974) Dependency structures of data base relationships. In: IFIP congress, pp 580–583 (1974)Google Scholar
  3. 3.
    Awad A, Puhlmann F (2008) Structural detection of deadlocks in business process models. In: Abramowicz W, Fensel D (eds) International conference on business information systems, LNBIP, vol 7. Springer, Berlin, pp 239–250CrossRefGoogle Scholar
  4. 4.
    Beauche S, Poizat P (2008) Automated service composition with adaptive planning. In: Proceedings of the 6th international conference on service-oriented computing, ICSOC ’08. Springer, Berlin. doi:  10.1007/978-3-540-89652-4-42.
  5. 5.
    Bi HH, Zhao JL (2004) Applying propositional logic to workflow verification. Inf Technol Manage 5:293–318CrossRefGoogle Scholar
  6. 6.
    Bueno F, García de la Banda M, Hermenegildo M (1999) Effectiveness of abstract interpretation in automatic parallelization: a case study in logic programming. ACM Toplas 21(2):189–238CrossRefGoogle Scholar
  7. 7.
    Cousot P, Cousot R (1977) Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: ACM symposium on principles of programming languages (POPL’77). ACM Press, New YorkGoogle Scholar
  8. 8.
    Cousot P, Cousot R (1977) Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: Proceedings of POPL’77. ACM Press, New York, pp 238–252Google Scholar
  9. 9.
    Davey BA, Priestley HA (2002) Introduction to lattices and order, 2nd edn. Cambridge University Press, CambridgezbMATHCrossRefGoogle Scholar
  10. 10.
    Dezani-Ciancaglini M, De’Liguoro U (2010) Sessions and session types: an overview. In: Proceedings of the 6th international conference on Web services and formal methods, WS-FM’09. Springer, Berlin, pp 1–28.
  11. 11.
    Di Nitto E, Ghezzi C, Metzger A, Papazoglou M, Pohl K (2008) A journey to highly dynamic, self-adaptive service-based applications. Autom Softw Eng 15:313–341. doi: 10.1007/s10515-008-0032-x.
  12. 12.
    DiNitto E (2009) S-Cube deliverable CD-IA-2.2.2: collection of industrial best practices, scenarios and business cases. Tech. rep., S-Cube ConsortiumGoogle Scholar
  13. 13.
    Euzenat J, Shvaiko P (2007) Ontology matching. Springer, HeidelbergzbMATHGoogle Scholar
  14. 14.
    Fdhila W, Yildiz U, Godart C (2009) A flexible approach for automatic process decentralization using dependency tables. In: ICWS, pp 847–855Google Scholar
  15. 15.
    Ganter B, Stumme G, Wille R (eds) (2005) Formal concept analysis, foundations and applications. Lecture notes in computer science, vol 3626. Springer, BerlinGoogle Scholar
  16. 16.
    Hermenegildo MV, Bueno F, Carro M, López P, Mera E, Morales J, Puebla G (2010) An overview of Ciao and its design philosophy. Tech. Rep. CLIP2/2010.0, Technical University of Madrid (UPM), School of Computer Science. Under consideration for publication in Theory and Practice of Logic Programming (TPLP)Google Scholar
  17. 17.
    Hintikka J (2004) Independence-friendly logic and axiomatic set theory. Ann Pure Appl Logic 126(1–3):313–333Google Scholar
  18. 18.
    Ivanović D, Carro M, Hermenegildo M (2010) Automatic fragment identification in workflows based on sharing analysis. In: Weske M, Yang J, Maglio P, Fantinato M (eds) Service-oriented computing–ICSOC 2010, no. 6470. LNCS. Springer, Berlin, pp 350–364Google Scholar
  19. 19.
    Ivanović D, Carro M, Hermenegildo M (2011) Automated attribute inference in complex service workflows based on sharing analysis. In: Proceedings of the 8th IEEE conference on services computing SCC 2011. IEEE Press, New York, pp 120–127Google Scholar
  20. 20.
    Jacobs D, Langen A (1989) North American conference on logic programming. MIT Press, CambridgeGoogle Scholar
  21. 21.
    Jordan D et al (2007) Web services business process execution language version 2.0. Tech. rep., IBM, Microsoft et alGoogle Scholar
  22. 22.
    Khalaf R (2007) Note on syntactic details of split BPEL-D business processes. Tech. Rep. 2007/2, IAAS, U. StuttgartGoogle Scholar
  23. 23.
    Khalaf R, Leymann F (2012) Coordination for fragmented loops and scopes in a distributed business process. Inf Syst 37(6):593–610CrossRefGoogle Scholar
  24. 24.
    Lagoon V, Stuckey P (2002) Precise pair-sharing analysis of logic programs. In: Principles and practice of declarative programming. ACM Press, New York, pp 99–108Google Scholar
  25. 25.
    Lloyd J (1987) Foundations of logic programming, second, extended edn. Springer, BerlinCrossRefGoogle Scholar
  26. 26.
    Ma Z, Leymann F (2009) Bpel fragments for modularized reuse in modeling bpel processes. In: Mauri JL, Giner VC, Tomas R, Serra T, Dini O (eds) ICNS. IEEE Computer Society, New York, pp 63–68Google Scholar
  27. 27.
    Mancioppi M, Danylevych O, Karastoyanova D, Leymann F (2011) Towards classification criteria for process fragmentation techniques. In: BDP2011, colocated with BPM’11Google Scholar
  28. 28.
    Muthukumar K, Bueno F, de la Banda MG, Hermenegildo M (1999) Automatic compile-time parallelization of logic programs for restricted, goal-level, independent and-parallelism. J Logic Program 38(2):165–218zbMATHCrossRefGoogle Scholar
  29. 29.
    Muthukumar K, Hermenegildo M (1989) Determination of variable dependence information at compile-time through abstract interpretation. In: North American conference on logic programming. MIT Press, Cambridge, pp 166–189Google Scholar
  30. 30.
    Muthukumar K, Hermenegildo M (1991) Combined determination of sharing and freeness of program variables through abstract interpretation. In: ICLP’91. MIT Press, Cambridge, pp 49–63Google Scholar
  31. 31.
    Navas J, Bueno F, Hermenegildo M (2006) Efficient top-down set-sharing analysis using cliques. In: Eight international symposium on practical aspects of declarative languages, no. 2819. LNCS. Springer, Berlin, pp 183–198Google Scholar
  32. 32.
    Nielson F, Nielson HR, Hankin C (2005) Principles of program analysis, 2nd edn. Springer, BerlinzbMATHGoogle Scholar
  33. 33.
    Object Management Group (2011) Business process model and notation (BPMN), Version 2.0.
  34. 34.
    Papazoglou MP, Pohl K, Parkin M, Metzger A (eds) (2010) Service research challenges and solutions for the future internet–S-Cube–towards engineering, managing and adapting service-based systems. Lecture notes in computer science, vol 6500. Springer, BerlinGoogle Scholar
  35. 35.
    Ponge J, Benatallah B, Casati F, Toumani F (2007) Fine-grained compatibility and replaceability analysis of timed web service protocols. In: Parent C, Schewe KD, Storey VC, Thalheim B (eds) ER, Lecture notes in computer science, vol 4801. Springer, Berlin, pp 599–614Google Scholar
  36. 36.
    Shvaiko P (2005) A classification of schema-based matching approaches. J Data Seman 4:146–171Google Scholar
  37. 37.
    Tan W, Fan Y (2007) Dynamic workflow model fragmentation for distributed execution. Comput Ind 58(5):381–391. Google Scholar
  38. 38.
    Ullman JD (1988) Database and knowledge-base systems, vol 1. Computer Science Press, MarylandGoogle Scholar
  39. 39.
    Väänänen J (2007) Dependence logic: a new approach to independence friendly logic. Cambridge University Press, Cambridge (London mathematical society student texts)Google Scholar
  40. 40.
    Valtchev P, Missaoui R, Godin R (2004) Formal concept analysis for knowledge discovery and data mining: The new challenges. In: ICFCA, pp 352–371Google Scholar
  41. 41.
    World Wide Web Consortium (2005) Web services choreography description language version 1.0.
  42. 42.
    Yildiz U, Godart C (2007) Information flow control with decentralized service compositions. In: ICWS, pp 9–17Google Scholar
  43. 43.
    Zaplata S, Kottke K, Meiners M, Lamersdorf W (2009) Towards runtime migration of ws-bpel processes. In: ICSOC/ServiceWave Workshops, pp 477–487Google Scholar
  44. 44.
    Zemni MA, Benbernou S, Carro M (2010) A soft constraint-based approach to qos-aware service selection. In: Weske M, Yang J, Maglio P, Fantinato M (eds) Service-oriented computing–ICSOC 2010, no. 6470. LNCS. Springer, Berlin, pp 596–602Google Scholar

Copyright information

© Springer-Verlag Wien 2012

Authors and Affiliations

  • Dragan Ivanović
    • 1
  • Manuel Carro
    • 1
    • 2
  • Manuel V. Hermenegildo
    • 1
    • 2
  1. 1.Facultad de InformaticaUniversidad Politécnica de MadridBoadilla del MonteSpain
  2. 2.IMDEA Software InstituteMadridSpain

Personalised recommendations