Autonomous Agents and Multi-Agent Systems

, Volume 24, Issue 3, pp 345–373 | Cite as

Towards verifying contract regulated service composition

  • Alessio LomuscioEmail author
  • Hongyang Qu
  • Monika Solanki


We report on a novel approach to (semi-)automatically compile and verify contract-regulated service compositions implemented as multi-agent systems. We model web service behaviours and the contracts governing them as WSBPEL specification. We use the formalism of temporal-epistemic logic, suitably extended to deal with compliance/violations of contracts, to specify properties of service compositions. We compile the WSBPEL behaviours into a specialised system description language ISPL, to be used with the model checker MCMAS to verify the behaviours automatically. We illustrate these concepts using a motivating example whose state space is approximately 106 and discuss experimental results.


Multi-agent systems Web services Model checking 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Lomuscio, A., Qu, H., & Solanki, M. (2008). Towards verifying compliance in agent-based web service compositions. In Proceedings of the seventh international joint conference on autonomous agents and multi-agent systems (AAMAS-08) (pp. 265–272). New York: ACM Press.Google Scholar
  2. 2.
    Ågotnes, T., Hoek, W. V., Rodríguez-Aguilar, J. A., Sierra, C., & Wooldridge, M. (2007). On the logic of normative systems. In M. M. Veloso (Ed.), IJCAI (pp. 1175–1180).Google Scholar
  3. 3.
    Alur R., Henzinger T. A., Kupferman O. (2002) Alternating-time temporal logic. Journal of the ACM 49(5): 672–713MathSciNetCrossRefGoogle Scholar
  4. 4.
    Anderson A. R. (1958) A reduction of deontic logic to alethic modal logic. Mind 58: 100–103CrossRefGoogle Scholar
  5. 5.
    Baldoni, M., Baroglio, C., Martelli, A., & Patti, V. (2005). Verification of protocol conformance and agent interoperability. In CLIMA VI. LNCS (Vol. 3900, pp. 265–283). NY: Springer.Google Scholar
  6. 6.
    Baresi L., Bianculli D., Ghezzi C., Guinea S., Spoletini P. (2007) Validation of web service compositions. IET Software 1(6): 219–232CrossRefGoogle Scholar
  7. 7.
    Bengtsson, J., Larsen, K., Larsson, F., Pettersson, P., Yi, W., & Weise, C. (1998). New generation of Uppaal. In Proceedings of the international workshop on software tools for technology transfer. Aalborg, Denmark.Google Scholar
  8. 8.
    Bordini, R., Fisher, M., Pardavila, C., Visser, W., & Wooldridge, M. (2003). Model checking multi-agent programs with CASP. In CAV’03. Volume of LNCS 2725 (pp. 110–113). NY: Springer.Google Scholar
  9. 9.
    Cimatti, A., Clarke, E. M., Giunchiglia, E., Giunchiglia, F., Pistore, M., Roveri, M., et al. (2002). NuSMV2: An open-source tool for symbolic model checking. In Proceedings of the 14th international conference on computer aided verification (CAV’02). LNCS (Vol. 2404, pp. 359–364). NY: Springer.Google Scholar
  10. 10.
    Clarke E. M., Grumberg O., Peled D. A. (1999) Model checking. The MIT Press, Cambridge, MAGoogle Scholar
  11. 11.
    Craven R., Sergot M. J. (2008) Agent strands in the action language nc+. Journal of Applied Logic 6(2): 172–191MathSciNetzbMATHCrossRefGoogle Scholar
  12. 12.
    Booth, D., Haas, H., McCabe, F., Newcomer, E., Champion, M., Ferris, C., et al. (2004). Web service architecture. W3c working group note 11 february 2004.
  13. 13.
    Dembiński, P., Janowska, A., Janowski, P., Penczek, W., Pólrola, A., Szreter, M., et al. (2003). VerICS: A tool for verifying Timed Automata and Estelle specifications. In Proceedings of the 9th international conference on tools and algorithms for the construction and analysis of systems (TACAS’03). LNCS (Vol. 2619, pp. 278–283). NY: Springer.Google Scholar
  14. 14.
    Desai, N., Narendra, N. C., & Singh, M. P. (2008). Checking correctness of business contracts via commitments. In AAMAS ’08: Proceedings of the 7th international joint conference on autonomous agents and multiagent systems (pp. 787–794). Richland, SC: International Foundation for Autonomous Agents and Multiagent Systems.Google Scholar
  15. 15.
    Fagin R., Halpern J. Y., Moses Y., Vardi M. Y. (1995) Reasoning about Knowledge. MIT Press, CambridgezbMATHGoogle Scholar
  16. 16.
    Foster, H., Uchitel, S., Magee, J., & Kramer, J. (2003). Model-based verification of web service compositions. In Proceedings of the 10th IEEE international conference on automated software engineering. London: IEEE Press.Google Scholar
  17. 17.
    Fu, X., Bultan, T., & Su, J. (2004). Analysis of interacting BPEL web services. In 13th international conference on World Wide Web (pp. 621–630). NY: ACM Press.
  18. 18.
    Giunchiglia E., Lee J., Lifschitz V., McCain N., Turner H. (2004) Nonmonotonic causal theories. Artificial Intelligence 153(1–2): 49–104MathSciNetzbMATHCrossRefGoogle Scholar
  19. 19.
    Henzinger, T. A., Jhala, R., Majumdar, R., & Sutre, G. (2003). Software verification with blast. In Proceedings of the tenth international workshop on model checking of software (SPIN). LNCS (Vol. 2648, pp. 235–239). NY: Springer.
  20. 20.
    Holzmann G. J. (2003) SPIN model checker, the: Primer and reference manual. Addison Wesley Professional, CanadaGoogle Scholar
  21. 21.
    Huang, H., Tsai, W., Paul, R., & Chen, Y. (2005). Automated model checking and testing for composite web services. In Proceedings of ISORC’05 (pp. 300–307). IEEE Computer Society.
  22. 22.
    Hull, R., Benedikt, M., Christophides, V., & Su, J. (2003). E-services: A look behind the curtain. In Proceedings of the twenty-second ACM SIGMOD-SIGACT-SIGART symposium on principles of database systems (pp. 1–14). NY: ACM Press.
  23. 23.
    Jones, A. J. I., & Sergot, M. J. (1993). On the characterisation of law and computer systems: The normative systems perspective. In Deontic logic in computer science: Normative system specification (Chap. 12). UK: Wiley.Google Scholar
  24. 24.
    Kanger S. (1971) New foundations for ethical theory. In: Hilpinen R. (eds) Deontic logic: Introductory and systematic readings. Reidel Publishing Company, Dordrecht, pp 36–58Google Scholar
  25. 25.
    Kazhamiakin, R., Pistore, M., & Santuari, L. (2006). Analysis of communication models in web service compositions. In WWW (pp. 267–276). NY: ACM Press.Google Scholar
  26. 26.
    Kowalski R., Sergot M. (1986) A logic-based calculus of events. New Generation Computing 4(1): 67–95CrossRefGoogle Scholar
  27. 27.
    Lamanna, D. D., Skene, J., & Emmerich, W. (2003). Slang: A language for defining service level agreements. In FTDCS (pp. 100–106). San Juan, Puerto Rico: IEEE Computer Society Press.Google Scholar
  28. 28.
    Lazovik, A., Aiello, M., & Papazoglou, M. (2004). Associating assertions with business processes and monitoring their execution. In ICSOC ’04: Proceedings of the 2nd international conference on service oriented computing (pp. 94–104). NY: ACM Press.
  29. 29.
    Lomuscio, A., Qu, H., & Raimondi, F. (2009). Mcmas 0.9 beta.
  30. 30.
    Lomuscio, A., Qu, H., & Raimondi, F. (2009). MCMAS: A model checker for the verification of multi-agent systems. In Proceedings of CAV 2009. LNCS (Vol. 5643, pp. 682–688). NY: Springer.Google Scholar
  31. 31.
    Lomuscio A., Sergot M. (2003) Deontic interpreted systems. Studia Logica 75(1): 63–92MathSciNetzbMATHCrossRefGoogle Scholar
  32. 32.
    Lomuscio A., Sergot M. (2004) A formalisation of violation, error recovery, and enforcement in the bit transmission problem. Journal of Applied Logic 2(1): 93–116MathSciNetzbMATHCrossRefGoogle Scholar
  33. 33.
    Lomuscio, A., & Woźna, B. (2006). A complete and decidable axiomatisation for deontic interpreted systems. In Proceedings of the 8th international workshop on deontic logic in computer science (DEON’06) (Vol. 4048, pp. 238–254). NY: Springer.Google Scholar
  34. 34.
    Lomusico, A., Qu, H., & Solanki, M. (2008). Towards verifying contract regulated service composition. In Proceedings of IEEE international conference on web services (ICWS 2008) (pp. 254–261). IEEE Computer Society.Google Scholar
  35. 35.
    Meyer, J. J. C., Wieringa, R. J. (eds) (1993) Deontic logic in computer science: Normative system specification. John Wiley, UKzbMATHGoogle Scholar
  36. 36.
    Mongiello, M., & Castelluccia, D. (2006). Modelling and verification of bpel business processes. In the 4th workshop on model-based development of computer-based systems and 3rd international workshop on model-based methodologies for pervasive and embedded software (pp. 144–148). IEEE Computer Society.Google Scholar
  37. 37.
    Morgan, G., Parkin, S., Molina-Jimenez, C., & Skene, J. (2006). Monitoring middleware for service level agreements in heterogeneous environments. Challenges of Expanding Internet: E-Commerce, E-Business, and E-Government.Google Scholar
  38. 38.
    OASIS Web service Business Process Execution Language (WSBPEL) TC. (2007). Web service business process execution language. Version 2.0.Google Scholar
  39. 39.
    OASIS Web Services Transaction (WS-TX) TC. (2009). Web services coordination (ws-coordination). Version 1.2.Google Scholar
  40. 40.
    Ouyang C., Verbeek E., van der Aalst W. M. P., Breutel S., Dumas M., ter Hofstede A. H. M. (2007) Formal semantics and analysis of control flow in ws-bpel. Science of Computer Programming 67(2–3): 162–198MathSciNetzbMATHCrossRefGoogle Scholar
  41. 41.
    Panagiotidi, S., Vazquez-Salceda, J., Alvarez-Napagao, S., Ortega-Martorell, S., Willmott, S., Confalonieri, R., et al. (2008). Contracting agent language. In Symposium on behaviour regulation in multi-agent systems.Google Scholar
  42. 42.
    Penczek W., Lomuscio A. (2003) Verifying epistemic properties of multi-agent systems via bounded model checking. Fundamenta Informaticae 55(2): 167–185MathSciNetzbMATHGoogle Scholar
  43. 43.
    Pistore, M., Barbon, F., Bertoli, P., Shaparau, D., & Traverso, P. (2004). Planning and monitoring web service composition. In AIMSA (pp. 106–115). NY: Springer.Google Scholar
  44. 44.
    Prisacariu, C., & Schneider, G. (2007). A formal language for electronic contracts. In Proceedings of FMOODSG07. LNCS (Vol. 4468, pp. 174–189). NY: Springer.Google Scholar
  45. 45.
    Mazzara M. (2007) A pi-calculus based semantics for ws-bpel. Journal of Logic and Algebraic Programming 70(1): 96–118MathSciNetzbMATHCrossRefGoogle Scholar
  46. 46.
    Robby, Dwyer, M. B., & Hatcliff, J. (2006). Bogor: A flexible framework for creating software model checkers. In TAIC PART, (pp. 3–22). IEEE Computer Society.Google Scholar
  47. 47.
    Rouached, M., Perrin, O., & Godart, C. (2006). Towards formal verification of web service composition. In the 4th international conference on business process management (BPM06). LNCS (Vol. 4102, pp. 257–273). NY: Springer.Google Scholar
  48. 48.
    Schlingloff H., Martens A., Schmidt K. (2005) Modeling and model checking web services. Electronic Notes in Theoretical Computer Science 126: 3–26CrossRefGoogle Scholar
  49. 49.
    Solaiman, E., Molina-Jiménez, C., & Shrivastava, S. K. (2003). Model checking correctness properties of electronic contracts. In ICSOC (Vol. 2910, pp. 303–318). NY: Springer.Google Scholar
  50. 50.
    Walton, C. D. (2004). Model—checking multi-agent web services. In AAAI 2004: Spring symposium on semantic web services. Stanford, USA.Google Scholar
  51. 51.
    Wooldridge M. (2002) An introduction to multi-agent systems. John Wiley, EnglandGoogle Scholar
  52. 52.
    Wooldridge M., Huget M. P., Fisher M., Parsons S. (2006) Model checking for multiagent systems: The mable language and its applications. International Journal on Artificial Intelligence Tools 15(2): 195–226CrossRefGoogle Scholar
  53. 53.
    Wozna B., Lomuscio A., Penczek W. (2005) Bounded model checking for deontic interpreted systems. Electronic Notes in Theoretical Computer Science 126: 93–114CrossRefGoogle Scholar
  54. 54.
    Fu, X., Bultan, T., & Su, J. (2003). Conversation protocols: A formalism for specification and verification of reactive electronic services. In CIAA. Volume of LNCS 2759 (pp. 188–200). NY: Springer.Google Scholar

Copyright information

© The Author(s) 2010

Authors and Affiliations

  1. 1.Department of ComputingImperial College LondonLondonUK
  2. 2.Oxford University Computing LaboratoryOxfordUK
  3. 3.Department of Computer ScienceUniversity of LeicesterLeicesterUK

Personalised recommendations