Specifying and verifying contract-driven service compositions using commitments and model checking

A novel approach is provided to specify and verify service compositions contracts.BPEL is extended to represent specifications and mark the points to be verified.Properties are derived automatically from composition implementations.The verification process relies on commitment logic and its model checking.Web services are verified from the perspectives of compliance and violations. The paper proposes a novel model checking-based approach towards verifying the compliance of intelligent agent-based web services with contracts regulating their compositions specified in the Business Process Execution Language (BPEL). Unlike the existing approaches in the literature, the main contribution and impact of the introduced approach is the ability to verify intelligent and autonomous composite web services by capturing and describing in details both compliance and violation behaviors, how the system can distinguish between them, and how the system reacts and can be recovered after each violation. The approach encompasses three contributing parts, namely: 1) the marking process of an extended BPEL; 2) the transformation of the extended and marked BPEL to an automata model; and 3) the encoding of the resulting automata model into the Interpreted Systems Programming Language (ISPL), the input language of the MCMAS model checker for intelligent and autonomous multi-agent systems. In the first part, we extend BPEL that specifies the business process of the composition by creating custom activities called labels. We use those labels as means to represent the specifications and mark the points the developer aims to verify. A significant advantage of this labeling is the ability to highlight specific points in the design to be verified and to distinguish compliance behaviors from violations, which makes this verification focused and highly efficient. In the second part, we introduce new transformation rules to transform the extended and marked BPEL to an automata model. This transformation requires a prior modeling of agent-based web services composition using automata definitions. In the third part, we introduce algorithmic translation rules encoding the resulting automata model into ISPL. This translation makes model checking the behavior of our contract-driven compositions possible. A novel characteristic of the proposed approach is the automatic generation of the properties against which the system is verified from the composition's implementation, which is technically challenging. The verification properties are expressed in the Computation Tree Logic of Commitments (CTLC). Technically, CTLC provides a powerful representation to formally model 1) interactions among multi-agent based web services and 2) compliance and violation behaviors within composite business contracts by making use of communicative commitment operators. CTLC also includes a fulfillment operator which helps formally check the compliance with business contracts and specify the system recovery. A detailed case study from expert and intelligent systems domain along with experimental results are also reported in the paper. Finally, the main impact and significance of the paper on expert and intelligent systems is the ability to use these systems safely since there is a way to verify if the intelligent components behave according to and in compliance with the underlying regulating contracts.

[1]  Alessio Lomuscio,et al.  MCMAS: A Model Checker for the Verification of Multi-Agent Systems , 2009, CAV.

[2]  Lori L. Pollock,et al.  The Construction of Contextual Def-Use Associations for Object-Oriented Systems , 2003, IEEE Trans. Software Eng..

[3]  Jamal Bentahar,et al.  Verifying conformance of multi-agent commitment-based protocols , 2013, Expert Syst. Appl..

[4]  Raouf Boutaba,et al.  Cloud computing: state-of-the-art and research challenges , 2010, Journal of Internet Services and Applications.

[5]  Athman Bouguettaya,et al.  Deploying and managing Web services: issues, solutions, and directions , 2008, The VLDB Journal.

[6]  Rolf Drechsler,et al.  Automatic property generation for the formal verification of bus bridges , 2011, 14th IEEE International Symposium on Design and Diagnostics of Electronic Circuits and Systems.

[7]  Matthew B. Dwyer,et al.  Bogor: A Flexible Framework for Creating Software Model Checkers , 2006, Testing: Academic & Industrial Conference - Practice And Research Techniques (TAIC PART'06).

[8]  Marina Mongiello,et al.  Modelling and verification of BPEL business processes , 2006, Fourth Workshop on Model-Based Development of Computer-Based Systems and Third International Workshop on Model-Based Methodologies for Pervasive and Embedded Software (MBD-MOMPES'06).

[9]  James Harland,et al.  Temporal linear logic as a basis for flexible agent interactions , 2007, AAMAS '07.

[10]  Jie Xing,et al.  Engineering commitment-based multiagent systems: a temporal logic approach , 2003, AAMAS '03.

[11]  Nuno Laranjeiro,et al.  Benchmarking the Robustness of Web Services , 2007 .

[12]  Wil M. P. van der Aalst,et al.  Formal semantics and analysis of control flow in WS-BPEL , 2007, Sci. Comput. Program..

[13]  J. Leon Zhao,et al.  A framework for transformation from conceptual to logical workflow models , 2012, Decis. Support Syst..

[14]  Honghao Gao,et al.  A Novel Approach to Generate the Property for Web Service Verification from Threat-Driven Model , 2014 .

[15]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[16]  Zakaria Maamar,et al.  Symbolic model checking composite Web services using operational and control behaviors , 2013, Expert Syst. Appl..

[17]  Tao Xie,et al.  Property Verification for Generic Access Control Models , 2008, 2008 IEEE/IFIP International Conference on Embedded and Ubiquitous Computing.

[18]  Ronald Fagin,et al.  Reasoning about knowledge and probability , 1988, JACM.

[19]  Brahim Chaib-draa,et al.  A logical model for commitment and argument network for agent communication , 2004, Proceedings of the Third International Joint Conference on Autonomous Agents and Multiagent Systems, 2004. AAMAS 2004..

[20]  Santosh K. Shrivastava,et al.  Model Checking Correctness Properties of Electronic Contracts , 2003, ICSOC.

[21]  Munindar P. Singh,et al.  Checking correctness of business contracts via commitments , 2008, AAMAS.

[22]  Munindar P. Singh,et al.  Amoeba: A methodology for modeling and evolving cross-organizational business processes , 2009, TSEM.

[23]  Michael Wooldridge,et al.  Introduction to multiagent systems , 2001 .

[24]  Enrico Giunchiglia,et al.  Nonmonotonic causal theories , 2004, Artif. Intell..

[25]  Christine Hofmeister,et al.  Modeling and verification of adaptive navigation in web applications , 2006, ICWE '06.

[26]  Wei Sun,et al.  BPEL4WS Unit Testing: Test Case Generation Using a Concurrent Path Analysis Approach , 2006, 2006 17th International Symposium on Software Reliability Engineering.

[27]  Wolfgang Emmerich,et al.  SLAng: a language for defining service level agreements , 2003, The Ninth IEEE Workshop on Future Trends of Distributed Computing Systems, 2003. FTDCS 2003. Proceedings..

[28]  Christopher D. Walton,et al.  Model Checking Agent Dialogues , 2004, DALT.

[29]  Marco Aiello,et al.  Associating assertions with business processes and monitoring their execution , 2004, ICSOC '04.

[30]  Marek J. Sergot,et al.  Agent strands in the action language nC+ , 2008, J. Appl. Log..

[31]  Michael N. Huhns,et al.  Commitments Among Agents , 2003, IEEE Internet Comput..

[32]  Rolf Drechsler,et al.  Advanced verification by automatic property generation , 2009, IET Comput. Digit. Tech..

[33]  Xiang Fu,et al.  Analysis of interacting BPEL web services , 2004, WWW '04.

[34]  Jianwen Su,et al.  E-services: a look behind the curtain , 2003, PODS.

[35]  Jie Xing,et al.  Formalization of commitment-based agent interaction , 2001, SAC.

[36]  T. H. Tse,et al.  Testing context-aware middleware-centric programs: a data flow approach and an RFID-based experimentation , 2006, SIGSOFT '06/FSE-14.

[37]  Cristina Baroglio,et al.  Behavior-Oriented Commitment-based Protocols , 2010, ECAI.

[38]  Jamal Bentahar,et al.  Communicative commitments: Model checking and complexity analysis , 2012, Knowl. Based Syst..

[39]  Ronald Fagin,et al.  Reasoning about knowledge , 1995 .

[40]  Michael Wooldridge,et al.  On the Logic of Normative Systems , 2007, IJCAI.

[41]  Munindar P. Singh,et al.  Toward verification of commitment protocols and their compositions , 2007, AAMAS '07.

[42]  M. Brian Blake,et al.  Workflow composition of service level agreements for web services , 2012, Decis. Support Syst..

[43]  Piergiorgio Bertoli,et al.  Planning and Monitoring Web Service Composition , 2004, AIMSA.

[44]  Munindar P. Singh A Social Semantics for Agent Communication Languages , 2000, Issues in Agent Communication.

[45]  Luciano Baresi,et al.  Validation of web service compositions , 2007, IET Softw..

[46]  Koen V. Hindriks,et al.  Specification and Verification of Multi-agent Systems , 2010 .

[47]  J. Leon Zhao,et al.  Formal workflow design analytics using data flow modeling , 2013, Decis. Support Syst..

[48]  Mark Harman,et al.  Testing and verification in service‐oriented architecture: a survey , 2013, Softw. Test. Verification Reliab..

[49]  Randy H. Katz,et al.  A view of cloud computing , 2010, CACM.

[50]  Mohammad Jamshidi,et al.  Systems of Systems Engineering: Principles and Applications , 2008 .

[51]  W. L. Yeung,et al.  A formal and visual modeling approach to choreography based web services composition and conformance verification , 2011, Expert Syst. Appl..

[52]  Feng Liu,et al.  Transformation BPEL to CP-nets for verifying Web services composition , 2005, International Conference on Next Generation Web Services Practices (NWeSP'05).

[53]  Sebastián Uchitel,et al.  LTSA-WS: a tool for model-based verification of web service compositions and choreography , 2006, ICSE.

[54]  Hang Yu,et al.  Testing BPEL-based Web Service Composition Using High-level Petri Nets , 2006, 2006 10th IEEE International Enterprise Distributed Object Computing Conference (EDOC'06).

[55]  Patrice Moreaux,et al.  An Integrated Framework for Web Services Orchestration , 2009, Int. J. Web Serv. Res..

[56]  Alessio Lomuscio,et al.  Towards verifying contract regulated service composition , 2008, 2008 IEEE International Conference on Web Services.

[57]  Yannis Smaragdakis,et al.  J-Orchestra: Enhancing Java programs with distribution capabilities , 2009, TSEM.

[58]  Alessio Lomuscio,et al.  Towards verifying compliance in agent-based web service compositions , 2008, AAMAS.

[59]  Jamal Bentahar,et al.  Reducing model checking commitments for agent communication to model checking ARCTL and GCTL* , 2013, Autonomous Agents and Multi-Agent Systems.

[60]  Mohsen Rouached,et al.  Web Services Compositions Modelling and Choreographies Analysis , 2010, Int. J. Web Serv. Res..

[61]  Alberto Martelli,et al.  Verification of Protocol Conformance and Agent Interoperability , 2005, CLIMA.

[62]  John-Jules Ch. Meyer,et al.  A New Logical Semantics for Agent Communication , 2006, CLIMA.

[63]  Raymond A. Paul,et al.  Automated model checking and testing for composite Web services , 2005, Eighth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC'05).

[64]  Andrea Ferrara,et al.  Web services: a process algebra approach , 2004, ICSOC '04.

[65]  Raman Kazhamiakin,et al.  Analysis of communication models in web service compositions , 2006, WWW '06.

[66]  Jianwen Su Web Service Interactions: Analysis and Design , 2005, SDWP@ICWS.

[67]  Schahram Dustdar,et al.  A survey on web services composition , 2005, Int. J. Web Grid Serv..

[68]  Munindar P. Singh,et al.  Resolving Commitments among Autonomous Agents , 2003, Workshop on Agent Communication Languages.