Log in

A sharing-based approach to supporting adaptation in service compositions

  • Published:
Computing Aims and scope Submit manuscript

Abstract

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
EUR 32.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or Ebook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price includes VAT (Germany)

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19

Similar content being viewed by others

Notes

  1. By convention, and in order to differentiate actions at design time and at run time, any adaptation which impacts the initial assumptions of a SOC, such as those stemming from changes in the requirements and which require a (deep) change in the design of the system, is termed evolution. We will in general not use this term unless it is unclear from the context whether we are referring to design time or run time adaptation.

  2. The set of axioms presented here follows [40] and has been chosen for its minimality. These axioms are equivalent to those originally proposed by Armstrong [2].

References

  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. http://doi.acm.org/10.1145/170035.170072

  2. Armstrong WW (1974) Dependency structures of data base relationships. In: IFIP congress, pp 580–583 (1974)

  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–250

    Chapter  Google Scholar 

  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. http://dx.doi.org/10.1007/978-3-540-89652-4-42

  5. Bi HH, Zhao JL (2004) Applying propositional logic to workflow verification. Inf Technol Manage 5:293–318

    Article  Google Scholar 

  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–238

    Article  Google Scholar 

  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 York

  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–252

  9. Davey BA, Priestley HA (2002) Introduction to lattices and order, 2nd edn. Cambridge University Press, Cambridge

    Book  MATH  Google Scholar 

  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. http://dl.acm.org/citation.cfm?id=1880906.1880907

  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. http://dx.doi.org/10.1007/s10515-008-0032-x

  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 Consortium

  13. Euzenat J, Shvaiko P (2007) Ontology matching. Springer, Heidelberg

    MATH  Google Scholar 

  14. Fdhila W, Yildiz U, Godart C (2009) A flexible approach for automatic process decentralization using dependency tables. In: ICWS, pp 847–855

  15. Ganter B, Stumme G, Wille R (eds) (2005) Formal concept analysis, foundations and applications. Lecture notes in computer science, vol 3626. Springer, Berlin

  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)

  17. Hintikka J (2004) Independence-friendly logic and axiomatic set theory. Ann Pure Appl Logic 126(1–3):313–333

    Google Scholar 

  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–364

  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–127

  20. Jacobs D, Langen A (1989) North American conference on logic programming. MIT Press, Cambridge

    Google Scholar 

  21. Jordan D et al (2007) Web services business process execution language version 2.0. Tech. rep., IBM, Microsoft et al

  22. Khalaf R (2007) Note on syntactic details of split BPEL-D business processes. Tech. Rep. 2007/2, IAAS, U. Stuttgart

  23. Khalaf R, Leymann F (2012) Coordination for fragmented loops and scopes in a distributed business process. Inf Syst 37(6):593–610

    Article  Google Scholar 

  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–108

  25. Lloyd J (1987) Foundations of logic programming, second, extended edn. Springer, Berlin

    Book  Google Scholar 

  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–68

  27. Mancioppi M, Danylevych O, Karastoyanova D, Leymann F (2011) Towards classification criteria for process fragmentation techniques. In: BDP2011, colocated with BPM’11

  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–218

    Article  MATH  Google Scholar 

  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–189

  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–63

  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–198

  32. Nielson F, Nielson HR, Hankin C (2005) Principles of program analysis, 2nd edn. Springer, Berlin

    MATH  Google Scholar 

  33. Object Management Group (2011) Business process model and notation (BPMN), Version 2.0. http://www.omg.org/spec/BPMN/2.0/PDF

  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, Berlin

  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–614

    Google Scholar 

  36. Shvaiko P (2005) A classification of schema-based matching approaches. J Data Seman 4:146–171

    Google Scholar 

  37. Tan W, Fan Y (2007) Dynamic workflow model fragmentation for distributed execution. Comput Ind 58(5):381–391. http://dx.doi.org/10.1016/j.compind.2006.07.004

    Google Scholar 

  38. Ullman JD (1988) Database and knowledge-base systems, vol 1. Computer Science Press, Maryland

    Google Scholar 

  39. Väänänen J (2007) Dependence logic: a new approach to independence friendly logic. Cambridge University Press, Cambridge (London mathematical society student texts)

  40. Valtchev P, Missaoui R, Godin R (2004) Formal concept analysis for knowledge discovery and data mining: The new challenges. In: ICFCA, pp 352–371

  41. World Wide Web Consortium (2005) Web services choreography description language version 1.0. http://www.w3.org/TR/ws-cdl-10/

  42. Yildiz U, Godart C (2007) Information flow control with decentralized service compositions. In: ICWS, pp 9–17

  43. Zaplata S, Kottke K, Meiners M, Lamersdorf W (2009) Towards runtime migration of ws-bpel processes. In: ICSOC/ServiceWave Workshops, pp 477–487

  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–602

Download references

Acknowledgments

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

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Dragan Ivanović.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Ivanović, D., Carro, M. & Hermenegildo, M.V. A sharing-based approach to supporting adaptation in service compositions. Computing 95, 453–492 (2013). https://doi.org/10.1007/s00607-012-0230-z

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00607-012-0230-z

Keywords

Mathematics Subject Classification

Navigation