22,803 research outputs found
Adaptive Homing is in P
Homing preset and adaptive experiments with Finite State Machines (FSMs) are
widely used when a non-initialized discrete event system is given for testing
and thus, has to be set to the known state at the first step. The length of a
shortest homing sequence is known to be exponential with respect to the number
of states for a complete observable nondeterministic FSM while the problem of
checking the existence of such sequence (Homing problem) is PSPACE-complete. In
order to decrease the complexity of related problems, one can consider adaptive
experiments when a next input to be applied to a system under experiment
depends on the output responses to the previous inputs. In this paper, we study
the problem of the existence of an adaptive homing experiment for complete
observable nondeterministic machines. We show that if such experiment exists
then it can be constructed with the use of a polynomial-time algorithm with
respect to the number of FSM states.Comment: In Proceedings MBT 2015, arXiv:1504.0192
Discovery and Selection of Certified Web Services Through Registry-Based Testing and Verification
Reliability and trust are fundamental prerequisites for the establishment of functional relationships among peers in a Collaborative Networked Organisation (CNO), especially in the context of Virtual Enterprises where economic benefits can be directly at stake. This paper presents a novel approach towards effective service discovery and selection that is no longer based on informal, ambiguous and potentially unreliable service descriptions, but on formal specifications that can be used to verify and certify the actual Web service implementations. We propose the use of Stream X-machines (SXMs) as a powerful modelling formalism for constructing the behavioural specification of a Web service, for performing verification through the generation of exhaustive test cases, and for performing validation through animation or model checking during service selection
Leveraging Semantic Web Service Descriptions for Validation by Automated Functional Testing
Recent years have seen the utilisation of Semantic Web Service descriptions for automating a wide range of service-related activities, with a primary focus on service discovery, composition, execution and mediation. An important area which so far has received less attention is service validation, whereby advertised services are proven to conform to required behavioural specifications. This paper proposes a method for validation of service-oriented systems through automated functional testing. The method leverages ontology-based and rule-based descriptions of service inputs, outputs, preconditions and effects (IOPE) for constructing a stateful EFSM specification. The specification is subsequently utilised for functional testing and validation using the proven Stream X-machine (SXM) testing methodology. Complete functional test sets are generated automatically at an abstract level and are then applied to concrete Web services, using test drivers created from the Web service descriptions. The testing method comes with completeness guarantees and provides a strong method for validating the behaviour of Web services
Deterministic Timed Finite State Machines: Equivalence Checking and Expressive Power
There has been a growing interest in defining models of automata enriched
with time. For instance, timed automata were introduced as automata extended
with clocks. In this paper, we study models of timed finite state machines
(TFSMs), i.e., FSMs enriched with time, which accept timed input words and
generate timed output words. Here we discuss some models of TFSMs with a single
clock: TFSMs with timed guards, TFSMs with timeouts, and TFSMs with both timed
guards and timeouts. We solve the problem of equivalence checking for all three
models, and we compare their expressive power, characterizing subclasses of
TFSMs with timed guards and of TFSMs with timeouts that are equivalent to each
other.Comment: In Proceedings GandALF 2014, arXiv:1408.556
Optimizing Abstract Abstract Machines
The technique of abstracting abstract machines (AAM) provides a systematic
approach for deriving computable approximations of evaluators that are easily
proved sound. This article contributes a complementary step-by-step process for
subsequently going from a naive analyzer derived under the AAM approach, to an
efficient and correct implementation. The end result of the process is a two to
three order-of-magnitude improvement over the systematically derived analyzer,
making it competitive with hand-optimized implementations that compute
fundamentally less precise results.Comment: Proceedings of the International Conference on Functional Programming
2013 (ICFP 2013). Boston, Massachusetts. September, 201
Recommended from our members
Using formal methods to support testing
Formal methods and testing are two important approaches that assist in the development of high quality software. While traditionally these approaches have been seen as rivals, in recent
years a new consensus has developed in which they are seen as complementary. This article reviews the state of the art regarding ways in which the presence of a formal specification can be used to assist testing
Matrix Code
Matrix Code gives imperative programming a mathematical semantics and
heuristic power comparable in quality to functional and logic programming. A
program in Matrix Code is developed incrementally from a specification in
pre/post-condition form. The computations of a code matrix are characterized by
powers of the matrix when it is interpreted as a transformation in a space of
vectors of logical conditions. Correctness of a code matrix is expressed in
terms of a fixpoint of the transformation. The abstract machine for Matrix Code
is the dual-state machine, which we present as a variant of the classical
finite-state machine.Comment: 39 pages, 19 figures; extensions and minor correction
- …