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.
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig1_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig2_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig3_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig4_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig5_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig6_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig7_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig8_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig9_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig10_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig11_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig12_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig13_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig14_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig15_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig16_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig17_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig18_HTML.gif)
![](http://media.springernature.com/m312/springer-static/image/art%3A10.1007%2Fs00607-012-0230-z/MediaObjects/607_2012_230_Fig19_HTML.gif)
Similar content being viewed by others
Notes
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.
References
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
Armstrong WW (1974) Dependency structures of data base relationships. In: IFIP congress, pp 580–583 (1974)
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
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
Bi HH, Zhao JL (2004) Applying propositional logic to workflow verification. Inf Technol Manage 5:293–318
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
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
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
Davey BA, Priestley HA (2002) Introduction to lattices and order, 2nd edn. Cambridge University Press, Cambridge
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
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
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
Euzenat J, Shvaiko P (2007) Ontology matching. Springer, Heidelberg
Fdhila W, Yildiz U, Godart C (2009) A flexible approach for automatic process decentralization using dependency tables. In: ICWS, pp 847–855
Ganter B, Stumme G, Wille R (eds) (2005) Formal concept analysis, foundations and applications. Lecture notes in computer science, vol 3626. Springer, Berlin
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)
Hintikka J (2004) Independence-friendly logic and axiomatic set theory. Ann Pure Appl Logic 126(1–3):313–333
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
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
Jacobs D, Langen A (1989) North American conference on logic programming. MIT Press, Cambridge
Jordan D et al (2007) Web services business process execution language version 2.0. Tech. rep., IBM, Microsoft et al
Khalaf R (2007) Note on syntactic details of split BPEL-D business processes. Tech. Rep. 2007/2, IAAS, U. Stuttgart
Khalaf R, Leymann F (2012) Coordination for fragmented loops and scopes in a distributed business process. Inf Syst 37(6):593–610
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
Lloyd J (1987) Foundations of logic programming, second, extended edn. Springer, Berlin
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
Mancioppi M, Danylevych O, Karastoyanova D, Leymann F (2011) Towards classification criteria for process fragmentation techniques. In: BDP2011, colocated with BPM’11
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
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
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
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
Nielson F, Nielson HR, Hankin C (2005) Principles of program analysis, 2nd edn. Springer, Berlin
Object Management Group (2011) Business process model and notation (BPMN), Version 2.0. http://www.omg.org/spec/BPMN/2.0/PDF
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
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
Shvaiko P (2005) A classification of schema-based matching approaches. J Data Seman 4:146–171
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
Ullman JD (1988) Database and knowledge-base systems, vol 1. Computer Science Press, Maryland
Väänänen J (2007) Dependence logic: a new approach to independence friendly logic. Cambridge University Press, Cambridge (London mathematical society student texts)
Valtchev P, Missaoui R, Godin R (2004) Formal concept analysis for knowledge discovery and data mining: The new challenges. In: ICFCA, pp 352–371
World Wide Web Consortium (2005) Web services choreography description language version 1.0. http://www.w3.org/TR/ws-cdl-10/
Yildiz U, Godart C (2007) Information flow control with decentralized service compositions. In: ICWS, pp 9–17
Zaplata S, Kottke K, Meiners M, Lamersdorf W (2009) Towards runtime migration of ws-bpel processes. In: ICSOC/ServiceWave Workshops, pp 477–487
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
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
Corresponding author
Rights 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
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00607-012-0230-z