Contract-Based Requirement Modularization via Synthesis of Correct Decompositions

In distributed development of modern systems, contracts play a vital role in ensuring interoperability of components and adherence to specifications. It is therefore often desirable to verify the satisfaction of an overall property represented as a contract, given the satisfaction of smaller properties also represented as contracts. When the verification result is negative, designers must face the issue of refining the subproperties and components. This is an instance of the classical synthesis problems: “can we construct a model that satisfies some given specification?” In this work, we propose two strategies enabling designers to synthesize or refine a set of contracts so that their composition satisfies a given contract. We develop a generic algebraic method and show how it can be applied in different contract models to support top-down component-based development of distributed systems.

[1]  Alberto L. Sangiovanni-Vincentelli,et al.  Library-based scalable refinement checking for contract-based design , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[2]  Davide Bresolin,et al.  Ariadne: Dominance Checking of Nonlinear Hybrid Automata Using Reachability Analysis , 2012, RP.

[3]  Axel Legay,et al.  A Tag Contract Framework for Modeling Heterogeneous Systems , 2014 .

[4]  Krishnendu Chatterjee,et al.  Assume-Guarantee Synthesis , 2007, TACAS.

[5]  Roberto Passerone,et al.  A contract-based formalism for the specification of heterogeneous systems , 2008, 2008 Forum on Specification, Verification and Design Languages.

[6]  Edsger W. Dijkstra,et al.  Guarded commands, non-determinacy and a calculus for the derivation of programs , 1975, Language Hierarchies and Interfaces.

[7]  Thomas A. Henzinger,et al.  Interface automata , 2001, ESEC/FSE-9.

[8]  Kim G. Larsen,et al.  Methodologies for Specification of Real-Time Systems Using Timed I/O Automata , 2009, FMCO.

[9]  Leslie Lamport,et al.  win and sin: predicate transformers for concurrency , 1990, TOPL.

[10]  Jeannette M. Wing,et al.  A behavioral notion of subtyping , 1994, TOPL.

[11]  Diego Marmsoler,et al.  A Model of Layered Architectures , 2015, FESCA.

[12]  Tullio Vardanega,et al.  Handling Synchronization Requirements under Separation of Concerns in Model-Driven Component-Based Development , 2012, Ada-Europe.

[13]  Roberto Passerone,et al.  Multiple Viewpoint Contract-Based Specification and Design , 2008, FMCO.

[14]  Axel Legay,et al.  A Modal Interface Theory for Component-based Design , 2011, Fundam. Informaticae.

[15]  Alberto L. Sangiovanni-Vincentelli,et al.  metroII , 2013, ACM Trans. Embed. Comput. Syst..

[16]  Tullio Vardanega,et al.  Correctness by Construction for High-Integrity Real-Time Systems: A Metamodel-Driven Approach , 2007, Ada-Europe.

[17]  Kim G. Larsen,et al.  Timed I/O automata: a complete specification theory for real-time systems , 2010, HSCC '10.

[18]  Roberto Passerone,et al.  Contract-Based Reasoning for Component Systems with Rich Interactions , 2014, Embedded Systems Development, From Functional Models to Implementations.

[19]  Pao-Ann Hsiung,et al.  Counterexample-Guided Assume-Guarantee Synthesis through Learning , 2011, IEEE Transactions on Computers.

[20]  Kim G. Larsen,et al.  Moving from Specifications to Contracts in Component-Based Design , 2012, FASE.

[21]  O. Khan,et al.  ACM Transactions on Embedded Computing Systems continued on back cover , 2018 .

[22]  Hardi Hungar,et al.  Using contract-based component specifications for virtual integration testing and architecture design , 2011, 2011 Design, Automation & Test in Europe.

[23]  Bertrand Meyer,et al.  Applying 'design by contract' , 1992, Computer.

[24]  Marsha Chechik,et al.  Tools and Algorithms for the Construction and Analysis of Systems , 2016, Lecture Notes in Computer Science.

[25]  Roberto Passerone,et al.  Refinement-based synthesis of correct contract model decompositions , 2014, 2014 Twelfth ACM/IEEE Conference on Formal Methods and Models for Codesign (MEMOCODE).

[26]  Alberto L. Sangiovanni-Vincentelli,et al.  Taming Dr. Frankenstein: Contract-Based Design for Cyber-Physical Systems , 2012, Eur. J. Control.

[27]  Alessandro Cimatti,et al.  A Property-Based Proof System for Contract-Based Design , 2012, 2012 38th Euromicro Conference on Software Engineering and Advanced Applications.