The Z notation: a reference manual
The Z notation: a reference manual
IEEE Transactions on Software Engineering - Special issue on formal methods in software practice
Model checking for programming languages using VeriSoft
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Principles of simulation model validation, verification, and testing
Transactions of the Society for Computer Simulation International
The art of computer programming, volume 2 (3rd ed.): seminumerical algorithms
The art of computer programming, volume 2 (3rd ed.): seminumerical algorithms
Validation with guided search of the state space
DAC '98 Proceedings of the 35th annual Design Automation Conference
Theoretical Computer Science
Model checking
Bandera: extracting finite-state models from Java source code
Proceedings of the 22nd international conference on Software engineering
Comparing the QoS of Internet audio mechanisms via formal methods
ACM Transactions on Modeling and Computer Simulation (TOMACS)
Verisim: Formal Analysis of Network Simulations
IEEE Transactions on Software Engineering
Symbolic Model Checking
Communication and Concurrency
Theory of Modeling and Simulation
Theory of Modeling and Simulation
Formal verification of standards for distance vector routing protocols
Journal of the ACM (JACM)
Specification and Analysis of the AER/NCA Active Network Protocol Suite in Real-Time Maude
FASE '01 Proceedings of the 4th International Conference on Fundamental Approaches to Software Engineering
Protocol Verification as a Hardware Design Aid
ICCD '92 Proceedings of the 1991 IEEE International Conference on Computer Design on VLSI in Computer & Processors
Java PathFinder, A Translator from Java to Promela
Proceedings of the 5th and 6th International SPIN Workshops on Theoretical and Practical Aspects of SPIN Model Checking
TwoTowers: A Tool Integrating Functional and Performance Analysis of Concurrent Systems
FORTE XI / PSTV XVIII '98 Proceedings of the FIP TC6 WG6.1 Joint International Conference on Formal Description Techniques for Distributed Systems and Communication Protocols (FORTE XI) and Protocol Specification, Testing and Verification (PSTV XVIII)
An Algebra-Based Method to Associate Rewards with EMPA Terms
ICALP '97 Proceedings of the 24th International Colloquium on Automata, Languages and Programming
Exploring Very Large State Spaces Using Genetic Algorithms
TACAS '02 Proceedings of the 8th International Conference on Tools and Algorithms for the Construction and Analysis of Systems
ZUM '97 Proceedings of the 10th International Conference of Z Users on The Z Formal Specification Notation
The NCSU Concurrency Workbench
CAV '96 Proceedings of the 8th International Conference on Computer Aided Verification
ASE '00 Proceedings of the 15th IEEE international conference on Automated software engineering
ASE '00 Proceedings of the 15th IEEE international conference on Automated software engineering
Ad-hoc On-Demand Distance Vector Routing
WMCSA '99 Proceedings of the Second IEEE Workshop on Mobile Computer Systems and Applications
Exploiting Heap Symmetries in Explicit-State Model Checking of Software
Proceedings of the 16th IEEE international conference on Automated software engineering
Design, realization and evaluation of a component-based compositional software architecture for network simulation
Test input generation with java PathFinder
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Directed explicit-state model checking in the validation of communication protocols
International Journal on Software Tools for Technology Transfer (STTT)
Heuristic-guided counterexample search in FLAVERS
Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering
Proceedings of the 34th conference on Winter simulation: exploring new frontiers
Proceedings of the 35th conference on Winter simulation: driving innovation
Dynamic partial-order reduction for model checking software
Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
CMC: a pragmatic approach to model checking real code
OSDI '02 Proceedings of the 5th symposium on Operating systems design and implementationCopyright restrictions prevent ACM from being able to make the PDFs for this conference available for downloading
Test input generation for red-black trees using abstraction
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Test input generation for java containers using state matching
Proceedings of the 2006 international symposium on Software testing and analysis
Quality assessment, verification, and validation of modeling and simulation applications
WSC '04 Proceedings of the 36th conference on Winter simulation
Verification and validation of simulation models
WSC '05 Proceedings of the 37th conference on Winter simulation
A fuzzy set theoretic approach to validate simulation models
ACM Transactions on Modeling and Computer Simulation (TOMACS)
Controlling factors in evaluating path-sensitive error detection techniques
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
How to build valid and credible simulation models
Proceedings of the 38th conference on Winter simulation
Analyzing static and temporal properties of simulation models
Proceedings of the 38th conference on Winter simulation
A neural network approach to the validation of simulation models
Proceedings of the 38th conference on Winter simulation
Parallel Randomized State-Space Search
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Model checking large network protocol implementations
NSDI'04 Proceedings of the 1st conference on Symposium on Networked Systems Design and Implementation - Volume 1
Verification of simulation models of network protocols using state space exploration
Verification of simulation models of network protocols using state space exploration
Formal modeling and analysis of wireless sensor network algorithms in real-time maude
IPDPS'06 Proceedings of the 20th international conference on Parallel and distributed processing
Finding bugs in network protocols using simulation code and protocol-specific heuristics
ICFEM'05 Proceedings of the 7th international conference on Formal Methods and Software Engineering
Scalable fair reliable multicast using active services
IEEE Network: The Magazine of Global Internetworking
Hi-index | 0.00 |
Verification and validation (V&V) is a critically important phase in the development life cycle of a simulation model. In the context of network simulation, traditional network simulators perform well in using a simulation model for evaluating the performance of a network protocol but lack the capability to check the 芒聙聹correctness芒聙聺 of the simulation model being used. To address this problem, we have extended J-Sim芒聙聰an open-source component-based network simulator written entirely in Java芒聙聰with a state space exploration (SSE) capability that explores the state space created by a network simulation model, up to a configurable maximum depth, in order to find an execution (if any) that violates an assertion, i.e. a property specifying an invariant that must always hold true in all states. In this paper, we elaborate on the SSE framework in J-Sim and present one of our fairly complex case studies, namely verifying the simulation model of the Ad-hoc On-demand Distance Vector (AODV) routing protocol for wireless ad-hoc networks. The SSE framework makes use of protocol-specific properties along two orthogonal dimensions: state similarity and state ranking. State similarity determines whether a state is 芒聙聹similar to芒聙聺 another in order to enable the implementation of stateful search. State ranking determines whether a state is 芒聙聹better than芒聙聺 another in order to enable the implementation of best-first search (BeFS). Specifically, we develop protocol-specific search heuristics to guide SSE towards finding assertion violations in less time. We evaluate the efficiency of our SSE framework by comparing its performance with that of a state-of-the-art model checker for Java programs, namely Java PathFinder (JPF). The results of the comparison show that the time needed to find an assertion violation by our SSE framework in J-Sim can be significantly less than that in JPF unless a substantial amount of programming effort is spent in JPF to make its performance close to that of our SSE framework.