Reducing Component Systems' Behavior Specification

Behavior verification of large component systems suffers of state explosion in particular when components involve parallel activities. For behavior protocols, a method of component behavior specification, we present a method of state space size reduction based on symbolic manipulation with the specification done by applying a set of reduction rules. A case study is presented showing that the specification size is often reduced to only a fraction of the original one.

[1]  Jan Kofron,et al.  Model Checking of Software Components: Combining Java PathFinder and Behavior Protocol Model Checker , 2006, 2006 30th Annual IEEE/NASA Software Engineering Workshop.

[2]  Tom Mens,et al.  Language-independent detection of object-oriented design patterns , 2004, Comput. Lang. Syst. Struct..

[3]  Rajeev Alur Doron A. Peled Computer Aided Verification , 2004, Lecture Notes in Computer Science.

[4]  Tong Yi,et al.  Slicing Z specifications , 2004, SIGP.

[5]  Stéphane Ducasse,et al.  Inter-language reflection: A conceptual model and its implementation , 2006, Comput. Lang. Syst. Struct..

[6]  John Nicholls,et al.  Z notation , 1994 .

[7]  Mark David Weiser,et al.  Program slices: formal, psychological, and practical investigations of an automatic program abstraction method , 1979 .

[8]  David W. Binkley,et al.  Program slicing , 2008, 2008 Frontiers of Software Maintenance.

[9]  Jeffrey D. Ullman,et al.  Introduction to automata theory, languages, and computation, 2nd edition , 2001, SIGA.

[10]  Frantisek Plasil,et al.  Bounding component behavior via protocols , 1999, Proceedings of Technology of Object-Oriented Languages and Systems - TOOLS 30 (Cat. No.PR00278).

[11]  Doron A. Peled Combining Partial Order Reductions with On-the-fly Model-Checking , 1994, CAV.

[12]  David L. Dill,et al.  Better verification through symmetry , 1996, Formal Methods Syst. Des..

[13]  Antti Valmari,et al.  A stubborn attack on state explosion , 1990, Formal Methods Syst. Des..

[14]  Theo D'Hondt,et al.  Combining fuzzy logic and behavioral similarity for non-strict program validation , 2006, PPDP '06.

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

[16]  Elnar Hajiyev,et al.  codeQuest: Scalable Source Code Queries with Datalog , 2006, ECOOP.

[17]  Kris De Volder,et al.  Navigating and querying code without getting lost , 2003, AOSD '03.

[18]  Tom Mens,et al.  Identifying refactoring opportunities using logic meta programming , 2003, Seventh European Conference onSoftware Maintenance and Reengineering, 2003. Proceedings..

[19]  Maria I. Sessa,et al.  Approximate reasoning by similarity-based SLD resolution , 2002, Theor. Comput. Sci..

[20]  David L. Dill,et al.  The Murphi Verification System , 1996, CAV.

[21]  Kris Gybels,et al.  Seamless integration of rule-based knowledge and object-oriented functionality with linguistic symbiosis , 2004, SAC '04.

[22]  Jan Kofron,et al.  Model Checking of Component Behavior Specification: A Real Life Experience , 2006, Electron. Notes Theor. Comput. Sci..

[23]  Petr Tuma,et al.  Streaming State Space: A Method of Distributed Model Verification , 2007, First Joint IEEE/IFIP Symposium on Theoretical Aspects of Software Engineering (TASE '07).

[24]  Patrick Cousot,et al.  Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints , 1977, POPL.

[25]  Michael Schroeder,et al.  FURY: fuzzy unification and resolution based on edit distance , 2000, Proceedings IEEE International Symposium on Bio-Informatics and Biomedical Engineering.

[26]  Jan Kofron,et al.  Behavior Protocols Verification: Fighting State Explosion , 2004 .

[27]  Jirí Adámek,et al.  Component composition errors and update atomicity: static analysis , 2005, J. Softw. Maintenance Res. Pract..

[28]  Jacques Cohen,et al.  Parsing and compiling using Prolog , 1987, TOPL.

[29]  Robin Milner,et al.  A Calculus of Communicating Systems , 1980, Lecture Notes in Computer Science.

[30]  Theo D'Hondt,et al.  An Approach to High-Level Behavioral Program Documentation Allowing Lightweight Verification , 2006, 14th IEEE International Conference on Program Comprehension (ICPC'06).

[31]  James R. Larus,et al.  Using Tracing and Dynamic Slicing to Tune Compilers , 1993 .

[32]  Jan A. Bergstra,et al.  Process Algebra for Synchronous Communication , 1984, Inf. Control..

[33]  Frantisek Plasil,et al.  Slicing of Component Behavior Specification with Respect to Their Composition , 2007, CBSE.

[34]  Mark Weiser,et al.  Program Slicing , 1981, IEEE Transactions on Software Engineering.