Offline Trace Checking of Quantitative Properties of Service-Based Applications

Service-based applications are often developed as compositions of partner services. A service integrator needs precise methods to specify the quality attributes expected by each partner service, as well as effective techniques to verify these attributes. In previous work, we identified the most common specification patterns related to provisioning service-based applications and developed an expressive specification language (SOLOIST) that supports them. SOLOIST is an extension of metric temporal logic with aggregate temporal modalities that can be used to write quantitative temporal properties. In this paper we address the problem of performing offline checking of service execution traces against quantitative requirements specifications written in SOLOIST. We present a translation of SOLOIST into CLTLB (D), a variant of linear temporal logic, and reduce the trace checking of SOLOIST to bounded satisfiability checking of CLTLB (D), which is supported by ZOT, an SMT-based verification toolkit. We detail the results of applying the proposed offline trace checking procedure to different types of traces, and compare its performance with previous work.

[1]  Amir Pnueli,et al.  The Glory of the Past , 1985, Logic of Programs.

[2]  Cesare Pautasso,et al.  Specification patterns from research to industry: A case study in service-based applications , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[3]  Sylvain Hallé,et al.  BabelTrace: A Collection of Transducers for Trace Validation , 2012, RV.

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

[5]  Luca de Alfaro,et al.  Temporal Logics for the Specification of Performance and Reliability , 1997, STACS.

[6]  M. Harman,et al.  Testing & Verification In Service-Oriented Architecture : A Survey , 2012 .

[7]  B.H.C. Cheng,et al.  Real-time specification patterns , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[8]  Sylvain Hallé,et al.  MapReduce for parallel trace validation of LTL properties , 2015, Journal of Cloud Computing.

[9]  Matteo Pradella,et al.  Constraint LTL satisfiability checking without automata , 2012, J. Appl. Log..

[10]  Nikolaj Bjørner,et al.  Z3: An Efficient SMT Solver , 2008, TACAS.

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

[12]  Matteo Pradella,et al.  Bounded satisfiability checking of metric temporal logic specifications , 2013, TSEM.

[13]  Miguel Felder,et al.  Validating real-time systems by history-checking TRIO specifications , 1992, ICSE '92.

[14]  Carlo Ghezzi,et al.  SMT-Based Checking of SOLOIST over Sparse Traces , 2014, FASE.

[15]  Bernd Finkbeiner,et al.  Collecting Statistics Over Runtime Executions , 2005, Formal Methods Syst. Des..

[16]  Alessandro Sperduti,et al.  PLG: A Framework for the Generation of Business Process Models and Their Execution Logs , 2010, Business Process Management Workshops.

[17]  Deepak D'Souza,et al.  An automata-theoretic approach to constraint LTL , 2002, Inf. Comput..

[18]  Carlo Ghezzi,et al.  The Tale of SOLOIST: A Specification Language for Service Compositions Interactions , 2012, FACS.

[19]  Nicolai M. Josuttis,et al.  Soa In Practice The Art Of Distributed System Design , 2007 .

[20]  Rajeev Goré,et al.  A First-Order Policy Language for History-Based Transaction Monitoring , 2009, ICTAC.

[21]  Srdjan Marinovic,et al.  Monitoring of temporal first-order properties with aggregations , 2013, Formal Methods Syst. Des..

[22]  Luciano Baresi,et al.  Test and Analysis of Web Services , 2007, Test and Analysis of Web Services.

[23]  George S. Avrunin,et al.  Property specification patterns for finite-state verification , 1998, FMSP '98.

[24]  Gwen Salaün,et al.  Analysis and Verification of Service Interaction Protocols - A Brief Survey , 2010, TAV-WEB.

[25]  Matteo Pradella,et al.  The symmetry of the past and of the future: bi-infinite time in the verification of temporal properties , 2007, ESEC-FSE '07.

[26]  Gerardo Canfora,et al.  Service-Oriented Architectures Testing: A Survey , 2009, ISSSE.