Model Learning and Test Generation for Event-B Decomposition

Event-B is a formal method for reliable systems specification and verification, which uses model refinement and decomposition as techniques to scale the design of complex systems. In previous work, we proposed an iterative approach for test generation and state model inference based on a variant of Angluin's learning algorithm, which integrates well with the notion of Event-B refinement. In this paper, we extend the method to work also with the mechanisms of Event-B decomposition. Two types of decomposition, i.e. shared-events and shared-variables, are considered and the generation of a global test suite from the local ones is proposed at the end. The implementation of the method is evaluated on publicly available Event-B decomposed models.

[1]  Michael J. Butler,et al.  Applying Atomicity and Model Decomposition to a Space Craft System in Event-B , 2011, NASA Formal Methods.

[2]  Michael J. Butler,et al.  Shared Event Composition/Decomposition in Event-B , 2010, FMCO.

[3]  P. S. Thiagarajan,et al.  A Trace Consistent Subset of PTL , 1995, CONCUR.

[4]  Alexandre Petrenko,et al.  Testing of Software and Communicating Systems , 2007, Lecture Notes in Computer Science.

[5]  Florentin Ipate Bounded sequence testing from deterministic finite state machines , 2010, Theor. Comput. Sci..

[6]  Florentin Ipate Learning finite cover automata from queries , 2012, J. Comput. Syst. Sci..

[7]  Keqin Li,et al.  Learning and Integration of Parameterized Components Through Testing , 2007, TestCom/FATES.

[8]  Brijesh Dongol,et al.  Approximating Idealised Real-Time Specifications Using Time Bands , 2011, Electron. Commun. Eur. Assoc. Softw. Sci. Technol..

[9]  Frank D. Valencia,et al.  Formal Methods for Components and Objects , 2002, Lecture Notes in Computer Science.

[10]  Wei Wei,et al.  A Survey on Event-B Decomposition , 2011, Electron. Commun. Eur. Assoc. Softw. Sci. Technol..

[11]  Elena Troubitsyna,et al.  Supporting Reuse in Event B Development: Modularisation Approach , 2010, ASM.

[12]  Dana Angluin,et al.  Learning Regular Sets from Queries and Counterexamples , 1987, Inf. Comput..

[13]  Jean-Raymond Abrial,et al.  Event Model Decomposition , 2009 .

[14]  Bengt Jonsson,et al.  Inferring Compact Models of Communication Protocol Entities , 2010, ISoLA.

[15]  Thai Son Hoang,et al.  Decomposition tool for event‐B , 2011, Softw. Pract. Exp..

[16]  Jeffrey D. Ullman,et al.  Introduction to Automata Theory, Languages and Computation , 1979 .

[17]  Florentin Ipate,et al.  Learn and Test for Event-B - A Rodin Plugin , 2012, ABZ.

[18]  David Lee,et al.  Principles and methods of testing finite state machines-a survey , 1996, Proc. IEEE.

[19]  Thai Son Hoang,et al.  A survey on event-b decomposition , 2012 .

[20]  Michael J. Butler,et al.  Decomposition Structures for Event-B , 2009, IFM.

[21]  Perdita Stevens,et al.  Modelling Recursive Calls with UML State Diagrams , 2003, FASE.

[22]  Tomás Masopust,et al.  State Complexity of Projected Languages , 2011, DCFS.

[23]  Michael Poppleton,et al.  The Composition of Event-B Models , 2008, ABZ.

[24]  Thai Son Hoang,et al.  Event-B Decomposition for Parallel Programs , 2010, ASM.

[25]  Bengt Jonsson,et al.  On the Correspondence Between Conformance Testing and Regular Inference , 2005, FASE.

[26]  Sheng Yu,et al.  Minimal cover-automata for finite languages , 1998, Theor. Comput. Sci..

[27]  Sarfraz Khurshid,et al.  Proceedings of the Third international conference on Abstract State Machines, Alloy, B, VDM, and Z , 2012 .

[28]  Benedikt Bollig,et al.  Learning Communicating Automata from MSCs , 2010, IEEE Transactions on Software Engineering.

[29]  Thai Son Hoang,et al.  Rodin: an open toolset for modelling and reasoning in Event-B , 2010, International Journal on Software Tools for Technology Transfer.

[30]  Insup Lee,et al.  CONCUR '95: Concurrency Theory , 1995, Lecture Notes in Computer Science.

[31]  Abz,et al.  Abstract State Machines, B and Z, First International Conference, ABZ 2008, London, UK, September 16-18, 2008. Proceedings , 2008, ABZ.

[32]  Jean-Raymond Abrial,et al.  Modeling in event-b - system and software engineering by Jean-Raymond Abrial , 2010, SOEN.

[33]  Howard Barringer,et al.  Learning to divide and conquer: applying the L* algorithm to automate assume-guarantee reasoning , 2008, Formal Methods Syst. Des..

[34]  Jacques Julliand,et al.  Syntactic Abstraction of B Models to Generate Tests , 2010, TAP@TOOLS.