Third IEEE International Conference on Software Engineering and Formal Methods (SEFM'05), 2005
ABSTRACT We study the problem of patching, i.e., modifying the behavior of an existing system. We... more ABSTRACT We study the problem of patching, i.e., modifying the behavior of an existing system. We consider systems modelled as finite state machines (FSMs), and define edit operators for them based on a traditional fault model. We argue that sequences of edit operations can be considered as models of patches defining modifications to an FSM system. We utilize recent results in graph matching theory as mathematical foundations. We introduce a new type of problem which we call the optimal patch or optimal update problem: given an FSM M modeling the behavior of an existing system and an other machine M' modeling a new design, find an optimal patch, i.e., the edit operations changing M to M' that are minimal according to a given cost function associated with the edit operations. We analyze the complexity of the problem, and conclude that it is unlikely to have a polynomial time solution for it. We also show that the problem can be easily transformed to a state-space search problem, for which many heuristic approximation algorithms have been developed.
Mutation analysis is a fault based testing method used initially for code based software testing.... more Mutation analysis is a fault based testing method used initially for code based software testing. In this paper, this method is applied to formal specifications and used for automatic conformance test selection. This paper defines formally a set of mutation operators for CEFSM (Communicating Extended Finite State Machine) systems to enable the automated creation of mutant specifications. Mutants of a
ABSTRACT This paper deals with a study and a mathematical model of concurrent Points of Control a... more ABSTRACT This paper deals with a study and a mathematical model of concurrent Points of Control and Observation (PCOs) realized in Testing and Test Control Notation version 3 (TTCN-3). We study test scenarios that are gaining importance as TTCN-3 is emerging as a notation suitable for conducting load tests too. We investigate communication between parallel test components (PTCs) and analyze race conditions between the queues underlying the implemented PCOs. This way, we build an analytic model to investigate behavior of PCOs under stress conditions and to assess possible latencies messages in a TTCN-3 based load test system might suffer. We present a discrete-time Quasi Birth-Death process to predict performance indices of test components and we propose to use the results to avoid indefinite postponement in the communication of PTCs. Also, we aim to use the model for calculating traffic intensity limits under which it is feasible to use TTCN-3 for load testing. Furthermore, we present the output of the model together with an example load test scenario that is vulnerable to that types of latencies.
System CARS (a Computer Aid for Recursive Synthesis) has been developed to assist the designer in... more System CARS (a Computer Aid for Recursive Synthesis) has been developed to assist the designer in the synthesis phase of the design of digital systems. CARS applies a top-down structured approach in the design process and can be used at any user-defined level of refinement. CARS does not apply any restriction on the creative work of the designer, but it
TTCN-3 (Testing and Test Control Notation 3)[1, 2, 3] test suites developed for testing complicat... more TTCN-3 (Testing and Test Control Notation 3)[1, 2, 3] test suites developed for testing complicated systems contain a large number of test data definitions. These definitions are often redundant and lengthy, which leads to compilation and run-time inefficiencies. Our ...
Abstract. Mutation analysis is a fault based testing method used ini-tially for code based softwa... more Abstract. Mutation analysis is a fault based testing method used ini-tially for code based software testing, and lately for specification based testing and validation as well. In this paper, the method is applied to SDL (Specification and Description Language) specifications. It is used to ...
ABSTRACT We study the problem of fault diagnosis, i.e., localization of difference(s) between an ... more ABSTRACT We study the problem of fault diagnosis, i.e., localization of difference(s) between an implementation and a specification in systems modelled by finite state machines. We show that even considering only a single fault in a finite state machine there are some situations when the exact diagnosis of the fault cannot be assured. We give an algorithm for fault diagnosis. If it is possible the procedure exactly locates a single fault, and in case exact localization is unfeasible it provides the set of all potential differences between the implementation and the specification.
Mutation analysis is a fault based testing method used initially for code based software testing.... more Mutation analysis is a fault based testing method used initially for code based software testing. In this paper, this method is applied to formal specifications and used for automatic conformance test selection. This paper defines formally a set of mutation operators for CEFSM (Communicating Extended Finite State Machine) systems to enable the automated creation of mutant specifications. Mutants of a specification are used as selection criteria to pick out adequate test cases. Two different algorithms are proposed for the generation and selection of efficient test suites. Additionally, the operators and algorithms provide the basis of an automatic tool developed at the Budapest University of Technology and Economics. We present the results of an empirical study on the well-known INRES protocol acquired using the tool.
ABSTRACT The analysis, development and testing of communication protocols are complex problems. T... more ABSTRACT The analysis, development and testing of communication protocols are complex problems. These tasks can be made easier with protocol development tools, which support the whole protocol development process from specification to testing. They are either stand-alone tools related to a specific protocol engineering function (e.g. validation) or integrated protocol workstations solving several functions. The protocol development tools are usually based on formal description techniques. This paper describes the notion of CAPE (Computer-Aided Protocol Engineering) derived from CASE (Computer-Aided Software Engineering) and presents the PROCONSUL protocol workstation. The intelligent editors of PROCONSUL are described in detail.
This paper deals with the examination of Access Control Lists (ACLs) that are used in IP routers ... more This paper deals with the examination of Access Control Lists (ACLs) that are used in IP routers mainly for providing network admission control and maintaining a certain level of quality of service. In our work we present a method for measuring the performance impact of ACLs on the packet forwarding capabilities of a router. Besides, our study proposes new methods to model and optimize the operation and reduce the redundancy of ACLs.
Third IEEE International Conference on Software Engineering and Formal Methods (SEFM'05), 2005
ABSTRACT We study the problem of patching, i.e., modifying the behavior of an existing system. We... more ABSTRACT We study the problem of patching, i.e., modifying the behavior of an existing system. We consider systems modelled as finite state machines (FSMs), and define edit operators for them based on a traditional fault model. We argue that sequences of edit operations can be considered as models of patches defining modifications to an FSM system. We utilize recent results in graph matching theory as mathematical foundations. We introduce a new type of problem which we call the optimal patch or optimal update problem: given an FSM M modeling the behavior of an existing system and an other machine M' modeling a new design, find an optimal patch, i.e., the edit operations changing M to M' that are minimal according to a given cost function associated with the edit operations. We analyze the complexity of the problem, and conclude that it is unlikely to have a polynomial time solution for it. We also show that the problem can be easily transformed to a state-space search problem, for which many heuristic approximation algorithms have been developed.
Mutation analysis is a fault based testing method used initially for code based software testing.... more Mutation analysis is a fault based testing method used initially for code based software testing. In this paper, this method is applied to formal specifications and used for automatic conformance test selection. This paper defines formally a set of mutation operators for CEFSM (Communicating Extended Finite State Machine) systems to enable the automated creation of mutant specifications. Mutants of a
ABSTRACT This paper deals with a study and a mathematical model of concurrent Points of Control a... more ABSTRACT This paper deals with a study and a mathematical model of concurrent Points of Control and Observation (PCOs) realized in Testing and Test Control Notation version 3 (TTCN-3). We study test scenarios that are gaining importance as TTCN-3 is emerging as a notation suitable for conducting load tests too. We investigate communication between parallel test components (PTCs) and analyze race conditions between the queues underlying the implemented PCOs. This way, we build an analytic model to investigate behavior of PCOs under stress conditions and to assess possible latencies messages in a TTCN-3 based load test system might suffer. We present a discrete-time Quasi Birth-Death process to predict performance indices of test components and we propose to use the results to avoid indefinite postponement in the communication of PTCs. Also, we aim to use the model for calculating traffic intensity limits under which it is feasible to use TTCN-3 for load testing. Furthermore, we present the output of the model together with an example load test scenario that is vulnerable to that types of latencies.
System CARS (a Computer Aid for Recursive Synthesis) has been developed to assist the designer in... more System CARS (a Computer Aid for Recursive Synthesis) has been developed to assist the designer in the synthesis phase of the design of digital systems. CARS applies a top-down structured approach in the design process and can be used at any user-defined level of refinement. CARS does not apply any restriction on the creative work of the designer, but it
TTCN-3 (Testing and Test Control Notation 3)[1, 2, 3] test suites developed for testing complicat... more TTCN-3 (Testing and Test Control Notation 3)[1, 2, 3] test suites developed for testing complicated systems contain a large number of test data definitions. These definitions are often redundant and lengthy, which leads to compilation and run-time inefficiencies. Our ...
Abstract. Mutation analysis is a fault based testing method used ini-tially for code based softwa... more Abstract. Mutation analysis is a fault based testing method used ini-tially for code based software testing, and lately for specification based testing and validation as well. In this paper, the method is applied to SDL (Specification and Description Language) specifications. It is used to ...
ABSTRACT We study the problem of fault diagnosis, i.e., localization of difference(s) between an ... more ABSTRACT We study the problem of fault diagnosis, i.e., localization of difference(s) between an implementation and a specification in systems modelled by finite state machines. We show that even considering only a single fault in a finite state machine there are some situations when the exact diagnosis of the fault cannot be assured. We give an algorithm for fault diagnosis. If it is possible the procedure exactly locates a single fault, and in case exact localization is unfeasible it provides the set of all potential differences between the implementation and the specification.
Mutation analysis is a fault based testing method used initially for code based software testing.... more Mutation analysis is a fault based testing method used initially for code based software testing. In this paper, this method is applied to formal specifications and used for automatic conformance test selection. This paper defines formally a set of mutation operators for CEFSM (Communicating Extended Finite State Machine) systems to enable the automated creation of mutant specifications. Mutants of a specification are used as selection criteria to pick out adequate test cases. Two different algorithms are proposed for the generation and selection of efficient test suites. Additionally, the operators and algorithms provide the basis of an automatic tool developed at the Budapest University of Technology and Economics. We present the results of an empirical study on the well-known INRES protocol acquired using the tool.
ABSTRACT The analysis, development and testing of communication protocols are complex problems. T... more ABSTRACT The analysis, development and testing of communication protocols are complex problems. These tasks can be made easier with protocol development tools, which support the whole protocol development process from specification to testing. They are either stand-alone tools related to a specific protocol engineering function (e.g. validation) or integrated protocol workstations solving several functions. The protocol development tools are usually based on formal description techniques. This paper describes the notion of CAPE (Computer-Aided Protocol Engineering) derived from CASE (Computer-Aided Software Engineering) and presents the PROCONSUL protocol workstation. The intelligent editors of PROCONSUL are described in detail.
This paper deals with the examination of Access Control Lists (ACLs) that are used in IP routers ... more This paper deals with the examination of Access Control Lists (ACLs) that are used in IP routers mainly for providing network admission control and maintaining a certain level of quality of service. In our work we present a method for measuring the performance impact of ACLs on the packet forwarding capabilities of a router. Besides, our study proposes new methods to model and optimize the operation and reduce the redundancy of ACLs.
Uploads
Papers by Gyula Csopaki