The Infona portal uses cookies, i.e. strings of text saved by a browser on the user's device. The portal can access those files and use them to remember the user's data, such as their chosen settings (screen view, interface language, etc.), or their login data. By using the Infona portal the user accepts automatic saving and using this information for portal operation purposes. More information on the subject can be found in the Privacy Policy and Terms of Service. By closing this window the user confirms that they have read the information on cookie usage, and they accept the privacy policy and the way cookies are used by the portal. You can change the cookie settings in your browser.
Summary The vastly growing complexity of software enabled functionality – especially in the automotive industry where it is usually distributed over a network – requires also a steadily increasing number of test cases to ensure a high product quality. The automatic generation of test cases can ease this situation, but suffers from the well-known state space explosion problem, which is caused by the...
Model-based test case generation allows one to derive almost arbitrary numbers of test cases from models. If resulting test suites are executed against real implementations, there are often huge numbers of failed test cases. Thus, the analysis of the test execution, i.e. the identification of failures for error reporting, becomes a tedious and time consuming task. In this paper we investigate a technique...
Automatic text classification of the software change request (CR) can be used for automating impact analysis, bug triage and effort estimation. In this paper, we focus on the automation of the process for assigning CRs to developers and present a solution that is based on automatic text classification of CRs. In addition our approach provides the list of source files, which are required to be modified...
Reducing bugs in software is a key issue in software development. Many techniques and tools have been developed to automatically identify bugs. These techniques vary in their complexity, accuracy and cost. In this paper we empirically investigate the language constructs which frequently contribute to bugs. Revision histories of eight open source projects developed in multiple languages are processed...
A bug triage system is used for validation and allocation of bug reports to the most appropriate developers. An automatic bug triage system may reduce the software maintenance time and improve its quality by correct and timely assignment of new bug reports to the appropriate developers. In this paper, we present the techniques behind an automatic bug triage system, which is based on the categorization...
A lot of information can be obtained from configuration management systems and post-release bug databases like Bugzilla. In this paper we focus on the question whether there are language specific bug patterns in large programs. For this purpose we implemented a system for extracting the necessary information from the Mozilla project files. A comparison of the extracted information with respect to...
Change management is a challenging task in software maintenance. Changes are made to the software during its whole life. Some of these changes introduce errors in the code which result in failures. Software changes are composed of small code units called hunks, dispersed in source code files. In this paper we present a technique for classifying software changes based on hunk metrics. We classify individual...
In this article we briefly state the idea behind model-based diagnosis and its application to debugging RTL (Register Transfer Level) Verilog designs. In providing a debugging model for the Verilog HDL (Hardware Description Language) we rely on a specific abstraction (trace semantics) that captures solely quiescent states of the design. In this vein we manage to overcome the inherent complexity issues...
Test purposes have been presented as a solution to avoid the state space explosion when selecting test cases from formal models. We previously presented a technique that assists a test engineer with test purpose design: It allows automatic generation of coverage based test suites and can be used to automatically exercise those aspects of the system that manually designed test purposes missed. Although...
Automated test case generation often results in test suites containing significant redundancy such as test cases that are duplicates, prefixes of other test cases, or cover the same test requirements. In this paper we consider the fact that items described by a coverage criterion can be covered in different ways. We introduce a technique where each created test case is guaranteed to cover a test requirement...
This paper studies model-based input-output conformance testing in the presence of queues. Normally, it is assumed that a test case communicates synchronously with an implementation under test. This causes some challenges in practice, since testing is often conducted asynchronously. In an asynchronous environment messages between a tester and the implementation are queued. This may lead to incorrect...
In this paper we discuss alternatives to Java ME when writing medical applications for mobile devices across multiple platforms. The Java virtual machine, which runs Java programs, is not available for the majority of handheld devices, such as palm PDAs, Windows Mobile based devices, or the Apple iPhone. As well as this, we conclude that full GUI interaction, such as the interaction provided by Java...
In this article we report on the development of a graphical user interface-savvy test monkey and its successful application to the Windows calculator. Our novel test monkey allows for a pragmatic approach in providing an abstract model of the GUI relevant behavior of the application under test and relies on a readily available GUI automation tool. Besides of outlining the employed test oracles we...
Although decision trees are frequently used in environmental decision support systems they have shortcomings. In case of an available model decision trees have to be constructed manually from the model. Moreover, not all knowledge is represented in the decision tree. In order to overcome this issues we propose the use of abductive reasoning directly applied to the available cause-effect model. In...
Software repositories contain an enormous amount of information regarding the evolution of any large software system. In our experiments we choose the dataset of the freely available Mozilla CVS repository. We downloaded 9552 program files (C++), extracted the CVS log data, and extracted the Mozilla bugs information from the Bugzilla database. From these sources we extracted the program file change...
Test purposes have been presented as a solution to avoid the state space explosion when selecting test cases from formal models. Although such techniques work very well with regard to the speed of the test derivation, they leave the tester with one important task that influences the quality of the overall testing process: Test purposes have to be formulated manually. In this paper, we present an approach...
Model-based testing techniques select test cases according to test goals, which might be coverage criteria or mutation adequacy. Complex criteria and large models lead to large test suites, and a test case created for one coverage item might cover several other items as well. Therefore, test case generation is optimized in order to avoid unnecessary test cases and minimize the test generation and...
In model-based testing, software test-cases are derived from a formal specification. A popular technique is to use traces created by a model-checker as test-cases. This approach is fully automated and flexible with regard to the structure and type of test-cases. Nondeterministic models, however, pose a problem to testing with model-checkers. Even though a model-checker is able to cope with nondeterminism,...
In recent years, automated test-case generation with model-checkers has seen increasing attention in the research community. The use of model-checkers for testing offers full automation, a choice of different methods to derive test-suites, and is efficient under certain preconditions. Model-checkers, however, were not originally intended for this task. Therefore, there are several drawbacks that a...
Modern drives of mobile robots are complex machines. Because of this complexity, as well as of wear and aging of components, faults occurs in such systems quite frequently at runtime. In order to use such drives in truly autonomous robots it is desirable that the robot is able to automatically react to such faults. Therefore, the robot needs reasoning and reconfiguration capabilities in order to be...
Set the date range to filter the displayed results. You can set a starting date, ending date or both. You can enter the dates manually or choose them from the calendar.