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.
Most techniques to detect program errors, such as testing, code reviews, and static program analysis, do not fully verify all possible executions of a program. They leave executions unverified when they do not check certain properties, fail to verify properties, or check properties under certain unsound assumptions such as the absence of arithmetic overflow. In this paper, we present a technique to...
Programs written in unsafe languages like C and C++ often suffer from errors like buffer overflows, dangling pointers, and memory leaks. Dynamic analysis tools like Valgrind can detect these errors, but their overhead — primarily due to the cost of instrumenting every memory read and write — makes them too heavyweight for use in deployed applications and makes testing with them painfully slow. The...
In recent years, researchers have intensively investigated various topics in test prioritization, which aims to re-order tests to increase the rate of fault detection during regression testing. While the main research focus in test prioritization is on proposing novel prioritization techniques and evaluating on more and larger subject systems, little effort has been put on investigating the threats...
This work explores the impact of teaching and learning if the rate of learner engagement outside the classroom is continuously measured and available to the instructor and students. We describe an ongoing implementation of a monitoring tool built within a software engineering continuous integration and testing (CI & Test) platform that integrates multiple streams of student activity and performance...
Recently, concolic testing has drawn a lot of attention from the research community as a practical solution of overcoming limitations of manual test case generation. CONBOL, a concolic testing framework for large-scale embedded industrial software, has shown effectiveness of discovering real defects even for commercial quality software. In this paper, we extend CONBOL to be applicable to a project...
Different kinds of process model are prescribed for software organizations, and each offers successful project outcomes if followed. There is little evidence that organizations strictly adhere to specific models. We surveyed 195 participants from 51 New Zealand (NZ) software organizations with a view to increasing our understanding of practice implementation in NZ. We found that practices are implemented...
In Software Product Line Engineering, where products are derived from a common platform, the reference architecture should be considered the main asset. In order to maintain its correctness and reliability after modifications, a regression testing approach based on architecture specification and code was developed. In this paper, we evaluate it in two different scenarios, the corrective scenario,...
Because debugging is notoriously time-consuming and laborious, fault localization becomes a major activity in software testing researches. This paper proposes a novel fault localization approach which utilizes intersection of control-flow based execution traces. It reports all program points, which are executed in every failed test case, as suspect of bugs and ranks them based on the frequency they...
Software-defect detection is an increasingly important research topic in software engineering. To detect defects in a program, static verification and dynamic test generation are two important proposed techniques. However, both of these techniques face their respective issues. Static verification produces false positives, and on the other hand, dynamic test generation is often time consuming. To address...
Software engineering course plays an important role for overall development of new hires in corporate training. During last few years, both academia and industry turned their attention towards integrating soft-skills in learning, while efforts are being made to bridge the knowledge, skill gap between industry requirements and what academic institutes churn out. Learners appreciate the concepts when...
Mutation testing has been used to assess and improve the quality of test inputs. Generating test inputs to achieve high mutant-killing ratios is important in mutation testing. However, existing test-generation techniques do not provide effective support for killing mutants in mutation testing. In this paper, we propose a general test-generation approach, called PexMutator, for mutation testing using...
A digital power supply system software, which was based on the Lab Windows/CVI, was introduced in this paper. Besides, specific requirements of the digital power supply for the semi-physical simulation system were also described. And the software structure and design details were stated clearly. The software successfully managed power supply parameters, provided the power supply automatically and...
Locating software components which are responsible for observed failures is the most expensive, error-prone phase in the software development life cycle. Automated diagnosis of software faults can improve the efficiency of the debugging process, and is therefore an important process for the development of dependable software. In this paper we present a toolset for automatic fault localization, dubbed...
Web services are an emerging Service-Oriented Architecture technology to integrate applications using open standards based on XML. Software Engineering tools integration is a promising area since companies adopt different software processes and need different tools on each activity. Software engineers could take advantage of software engineering tools available as web services and create their own...
Recently search based software engineering (SBSE) has evolved as a major research field in the software engineering community. SBSE has been applied successfully to many software engineering activities ranging from requirement engineering to software maintenance and quality assessment. One area where SBSE has seen much application is test data generation. Search based test data generation techniques...
Automatic structural testing of programs becomes more and more popularin software engineering. Among the most rigorous structural coverage criteria, all-paths coverage requires to generate a set of test cases such that every feasible execution path of the program under test is executed by one test case. This article addresses different aspects of computability and complexity of constraint-based all-paths...
While the use of independent test agencies is on the rise - currently estimated to be a $25B marketplace - there are a number of challenges to successful collaboration between these agencies and their client software development organizations. These agencies offer independent verification of software, skilled testing experts, and economic advantages that arise from differential global labor rates...
By utilizing XML representations of source programs under test, a new approach is proposed to concisely implement some prototypes for TACCLE, a software testing methodology. The conversions between a source program and its XML representation can be easily realized using existing conversion tools. In this way, the conversion tools can automatically analyze and parse the source program, so that testing...
We describe a benchmark of publicly-available multi-threaded programs with documented bugs in them. This project was initiated a few years ago with the goal of helping research groups in the fields of concurrent testing and debugging to develop tools and algorithms that improve the quality of concurrent programs. We present a survey of usage of the benchmark, concluding that the benchmark had an impact...
The net generation of students have characteristics which make them well-suited for participating in open source projects including being comfortable with information technologies, using IT as a form of communication, desiring to work in groups, a desire to do social good, and being fascinated by new technologies. The nature of open source projects where communities of developers from around the world...
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.