There are thousands of various software libraries being developed in the modern world - completely new libraries emerge as well as new versions of existing ones regularly appear. Unfortunately, developers of many libr...
详细信息
ISBN:
(纸本)9781457706066
There are thousands of various software libraries being developed in the modern world - completely new libraries emerge as well as new versions of existing ones regularly appear. Unfortunately, developers of many libraries focus on developing functionality of the library itself but neglect ensuring high quality and backward compatibility of application programming interfaces (APIs) provided by their libraries. The best practice to address these aspects is having an automated regression test suite that can be regularly (e.g., nightly) run against the current development version of the library. Such a test suite would ensure early detection of any regressions in the quality or compatibility of the library. But developing a good test suite can cost significant amount of efforts, which becomes an inhibiting factor for library developers when deciding QA policy. That is why many libraries do not have a test suite at all. This paper discusses an approach for low cost automatic generation of basic tests for shared libraries based on the information automatically extracted from the library header files and additional information about semantics of some library data types. Such tests can call APIs of target libraries with some correct parameters and can detect typical problems like crashes "out-of-the-box". Using this method significantly lowers the barrier for developing an initial version of library tests, which can be then gradually improved with a more powerful test development framework as resources appear. The method is based on analyzing API signatures and type definitions obtained from the library header files and creating parameter initialization sequences through comparison of target function parameter types with other functions' return values or out-parameters (usually, it is necessary to call some function to get a correct parameter value for another function and the initialization sequence of the necessary function calls can be quite long). The paper also descri
This paper discusses a problem of ensuring backward binary compatibility when developing shared libraries. Linux (and GCC environment) is used as the main example. Breakage of the compatibility may result in crashing ...
详细信息
There has been a growing interest in the emerging technology of four-dimensional modelling and planning of industrial projects. In comparison with traditional 3D CAD and project management systems, 4D modelling provid...
详细信息
The paper concerns functional testing of hardware models using finite state machines (FSM). Test construction is done by traversing FSM state graph. In this paper we propose a technique for irredundant description of ...
详细信息
Multicore has become a trend on server and client computers in recent years. Parallelization is one way to fully utilize the computing power provided by multicore architectures. Most applications of interest have comp...
详细信息
There are thousands of various software libraries being developed in the modern world - completely new libraries emerge as well as new versions of existing ones regularly appear. Unfortunately, developers of many libr...
详细信息
There are thousands of various software libraries being developed in the modern world - completely new libraries emerge as well as new versions of existing ones regularly appear. Unfortunately, developers of many libraries focus on developing functionality of the library itself but neglect ensuring high quality and backward compatibility of application programming interfaces (APIs) provided by their libraries. The best practice to address these aspects is having an automated regression test suite that can be regularly (e.g., nightly) run against the current development version of the library. Such a test suite would ensure early detection of any regressions in the quality or compatibility of the library. But developing a good test suite can cost significant amount of efforts, which becomes an inhibiting factor for library developers when deciding QA policy. That is why many libraries do not have a test suite at all. This paper discusses an approach for low cost automatic generation of basic tests for shared libraries based on the information automatically extracted from the library header files and additional information about semantics of some library data types. Such tests can call APIs of target libraries with some correct parameters and can detect typical problems like crashes “out-of-the-box”. Using this method significantly lowers the barrier for developing an initial version of library tests, which can be then gradually improved with a more powerful test development framework as resources appear. The method is based on analyzing API signatures and type definitions obtained from the library header files and creating parameter initialization sequences through comparison of target function parameter types with other functions' return values or out-parameters (usually, it is necessary to call some function to get a correct parameter value for another function and the initialization sequence of the necessary function calls can be quite long). The paper also descri
This paper discusses a problem of ensuring backward binary compatibility when developing shared libraries. Linux (and GCC environment) is used as the main example. Breakage of the compatibility may result in crashing ...
详细信息
This paper discusses a problem of ensuring backward binary compatibility when developing shared libraries. Linux (and GCC environment) is used as the main example. Breakage of the compatibility may result in crashing or incorrect behavior of applications built with an old version of a library when they are running with a new one. The paper describes typical issues that cause binary compatibility problems and presents a new method for library verification for such issues. Existing tools can detect only a small fraction of all possible backward compatibility problems while the suggested method can verify a broad spectrum of them. The method is based on comparison of function signatures and type definitions obtained from library header files in addition to analyzing symbols in library binaries. This paper also describes an automated verification tool that implements the suggested method and presents some results of its practical usage.
The paper concerns functional testing of hardware models using finite state machines (FSM). Test construction is done by traversing FSM state graph. In this paper we propose a technique for irredundant description of ...
详细信息
The paper concerns functional testing of hardware models using finite state machines (FSM). Test construction is done by traversing FSM state graph. In this paper we propose a technique for irredundant description of FSM models of parallel-pipeline designs. The technique allows to implicitly specify complex compositional FSM models and to automate construction of test sequences by composing several parallel operations into multi-stimuli.
The paper describes a methodology for formal cycle-accurate specification of synchronous parallel-pipeline hardware. The main application of the methodology is simulation-based verification of control-intensive digita...
详细信息
The paper describes a methodology for formal cycle-accurate specification of synchronous parallel-pipeline hardware. The main application of the methodology is simulation-based verification of control-intensive digital designs. Its key features are as follows: (1) resources of a design under verification (buffers, arbiters, data transfer channels, etc.) are specified by means of reusable cycle-accurate models; (2) operations of a design (pipeline control flows) are described by defining contracts (i.e. pre- and post-conditions) for all operation stages (functional units of a pipeline). Formal specifications of that kind can be easily applied to automate simulation-based verification. The suggested solution is aimed at achieving technological effectiveness of specifications development.
This paper presents a method for automatic reconstruction of polymorphic class hierarchies from the assembly code obtained by compiling a C++ program. If the program is compiled with run-time type information (RTTI), ...
详细信息
暂无评论