Verified Service Compositions by Template-Based Construction

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8997)

Abstract

Today, service compositions often need to be assembled or changed on-the-fly, which leaves only little time for quality assurance. Moreover, quality assurance is complicated by service providers only giving information on their services in terms of domain specific concepts with only limited semantic meaning.

In this paper, we propose a method to construct service compositions based on pre-verified templates. Templates, given as workflow descriptions, are typed over a (domain-independent) template ontology defining concepts and predicates. Templates are proven correct using an abstract semantics, leaving the specific meaning of ontology concepts open, however, only up to given ontology rules. Construction of service compositions amounts to instantiation of templates with domain-specific services. Correctness of an instantiation can then simply be checked by verifying that the domain ontology (a) adheres to the rules of the template ontology, and (b) fulfills the constraints of the employed template.

References

  1. 1.
    Apt, K., de Boer, F., Olderog, E.R.: Verification of Sequential and Concurrent Programs. Springer, London (2009)CrossRefMATHGoogle Scholar
  2. 2.
    Arbab, F., Rutten, J.J.M.M.: A coinductive calculus of component connectors. In: Wirsing, M., Pattinson, D., Hennicker, R. (eds.) WADT 2003. LNCS, vol. 2755, pp. 34–55. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  3. 3.
    Arbad, F.: Reo: a channel-based coordination model for component composition. Math. Struct. Comput. Sci. 14, 329–366 (2004)CrossRefGoogle Scholar
  4. 4.
    Arifulina, S., Becker, M., Platenius, M.C., Walther, S.: SeSAME: modeling and analyzing high-quality service compositions. In: Proceedings of the 29th IEEE/ACM International Conference on Automated Software Engineering (ASE 2014), Tool Demonstrations. ACM, 15–19 September 2014, to appearGoogle Scholar
  5. 5.
    Baader, F., Horrocks, I., Sattler, U.: Description logics. In: Frank van Harmelen, V.L., Porter, B. (eds.) Foundations of Artificial Intelligence, vol. 3, pp. 135–179. Elsevier (2008)Google Scholar
  6. 6.
    Becker, M., Luckey, M., Becker, S.: Performance analysis of self-adaptive systems for requirements validation at design-time. In: QoSA, pp. 43–52. ACM (2013)Google Scholar
  7. 7.
    Becker, S., Koziolek, H., Reussner, R.: The palladio component model for model-driven performance prediction. J. Syst. Softw. 82(1), 3–22 (2009). Special Issue: Software Performance - Modeling and AnalysisCrossRefGoogle Scholar
  8. 8.
    Bures, T., Hnetynka, P., Plasil, F.: SOFA 2.0: balancing advanced features in a hierarchical component model. In: SERA, pp. 40–48 (2006)Google Scholar
  9. 9.
    Calinescu, R., Ghezzi, C., Kwiatkowska, M., Mirandola, R.: Self-adaptive software needs quantitative verification at runtime. Commun. ACM 55(9), 69–77 (2012)CrossRefGoogle Scholar
  10. 10.
    Farahbod, R., Glässer, U., Vajihollahi, M.: Abstract operational semantics of the business process execution language for web services. Technical report (2005)Google Scholar
  11. 11.
    Franconi, E., Tessaris, S.: Rules and queries with ontologies: a unified logical framework. In: Ohlbach, H.J., Schaffert, S. (eds.) PPSWR 2004. LNCS, vol. 3208, pp. 50–60. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  12. 12.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Boston (1995)Google Scholar
  13. 13.
    Gruber, T.R.: A translation approach to portable ontology specifications. Knowl. Acquisition 5(2), 199–220 (1993)CrossRefGoogle Scholar
  14. 14.
    Guarino, N., Oberle, D., Staab, S.: What is an ontology? In: Staab, S., Studer, R. (eds.) Handbook on Ontologies: International Handbooks on Information Systems, pp. 1–17. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  15. 15.
    Hemer, D.: Semi-automated component-based development of formally verified software. In: Proceedings of the 11th Refinement Workshop (REFINE 2006), Electronic Notes in Theoretical Computer Science, vol. 187, pp. 173–188 (2007)Google Scholar
  16. 16.
    Hemer, D., Lindsay, P.: Reuse of verified design templates through extended pattern matching. In: Fitzgerald, J.S., Jones, C.B., Lucas, P. (eds.) FME 1997. LNCS, vol. 1313, pp. 495–514. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  17. 17.
    Holzmann, G.J.: The model checker SPIN. IEEE Trans. Softw. Eng. 23(5), 279–295 (1997)CrossRefMathSciNetGoogle Scholar
  18. 18.
    Kovács, M., Gönczy, L.: Simulation and formal analysis of workflow models. Electron. Notes Theor. Comput. Sci. 211, 221–230 (2008)CrossRefGoogle Scholar
  19. 19.
    Kumar, S.K., Harding, J.A.: Ontology mapping using description logic and bridging axioms. Comput. Ind. 64(1), 19–28 (2013)CrossRefGoogle Scholar
  20. 20.
    Lindsay, P.A., Hemer, D.: An industrial-strength method for the construction of formally verified software. In: Australian Software Engineering Conference, p. 27 (1996)Google Scholar
  21. 21.
    Martin, D., Paolucci, M., McIlraith, S.A., Burstein, M., McDermott, D., McGuinness, D.L., Parsia, B., Payne, T.R., Sabou, M., Solanki, M., Srinivasan, N., Sycara, K.: Bringing semantics to web services: the OWL-S approach. In: Cardoso, J., Sheth, A.P. (eds.) SWSWPC 2004. LNCS, vol. 3387, pp. 26–42. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  22. 22.
    Noy, N.F.: Ontology mapping. In: Staab, S., Studer, R. (eds.) Handbook on Ontologies: International Handbooks on Information Systems, pp. 573–590. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  23. 23.
    OASIS: Web services business process execution language v2.0. http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.pdf
  24. 24.
    Ouyang, C., Verbeek, E., van der Aalst, W.M.P., Breutel, S., Dumas, M., ter Hofstede, A.H.M.: Formal semantics and analysis of control flow in WS-BPEL. Sci. Comput. Program. 67(2–3), 162–198 (2007)CrossRefMATHGoogle Scholar
  25. 25.
    Pnueli, A.: The temporal logic of programs. In: FOCS, pp. 46–57 (1977)Google Scholar
  26. 26.
    Singh, M.P.: Formal aspects of workflow management - part 1: semantics (1997)Google Scholar
  27. 27.
    Walther, S., Wehrheim, H.: Knowledge-based verification of service compositions - an SMT approach. In: ICECCS, pp. 24–32 (2013)Google Scholar
  28. 28.
    Woodcock, J., Davies, J.: Using Z: Specification, Refinement, and Proof. Prentice Hall, Upper Saddle River (1996)MATHGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.Department of Computer ScienceUniversity of PaderbornPaderbornGermany

Personalised recommendations