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.
In this article we present the results of a case study that identifies test effectiveness as a major business driver in firmware development and consequently outline five core areas of the firmware testing process as critical issues to be addressed within a use-inspired research effort.
This experience paper presents how a globally distributed software engineering team was able to deliver usable software at the end of each takt, why this was important, and the benefits derived. We also describe the approach taken, the challenges faced and the steps to overcome them.
Formal approaches to software development have traditionally aimed at guaranteeing software correctness, through the use of notations, analysis mechanisms and other elements founded on solid mathematical grounds. Since the seminal works of Hoare, Floyd and others, formal methods have used logical notations to capture intended software behavior, and proposed techniques for reasoning about software...
As software systems become more complex, the number of test cases required for effective testing becomes intractable. Cache misses have been identified as a major factor that affects software execution time. In our current work we target the instruction locality problem in the context of testing.
Agile software development principles enable companies to successfully and quickly deliver software by meeting their customers' expectations while focusing on high quality. Many companies working with pure software systems have adopted these principles, but implementing them in companies dealing with non-pure software products is challenging. We identified a set of goals and practices to support large-scale...
Using topic modeling, we analyse the titles and abstracts of nearly 10,000 papers from 20 years published in 11 top-ranked Software Engineering(SE) conferences between 1993 to 2013. Seven topics are identified as the dominant themes in modern software engineering. We show that these topics are not static, rather, some of them are becoming decidedly less prominent over time (modeling) while others...
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...
The 6th edition of the Portuguese Software Engineering Doctoral Symposium (SEDES'2016), was held in September 16, 2016, in Lisboa, Portugal, co-located with the QUATIC'2016 conference. The aim of this symposium is to bring together Software Engineering PhD students supervised or co-supervised by faculty members of Portuguese Universities in a constructive environment, where they can present and discuss...
The characteristics of self-organizing, adaptive systems (SOAS) lead to a significantly higher flexibility and robustness against an ever-changing environment. This flexibility makes it hard to test these systems adequately, which is, however, inevitable in order to assure their quality. The PhD thesis faces the following key challenges for testing SOAS: state space explosion, interleaved feedback...
As a promising automatic fault localization technique, Spectrum-Based Fault Localization (SBFL) has been proposed and widely studied for years, in which the effectiveness of risk evaluation formula is one of the most popular research topics. We have developed a framework to support the theoretical analysis of risk evaluation formulas, via subset relations. In this paper, we would like to further justify...
In this paper we investigate the effect of test case length on the performance of test suites for automated graphical user interface (GUI) testing. Research has been done on the effect of test length for traditional white-box testing, however, these findings do not necessarily extend to GUI testing. We run experiments on five subject applications using a custom-built dynamic test generator. We measure...
Graphical User Interface (GUI) application is a kind of typical event-driven software (EDS) that transforms state according to input events invoked through a user interface. It is time consuming to test a GUI application since there are a large number of possible event sequences generated by the permutations and combinations of user operations. Although some GUI test case prioritization techniques...
Testing and testing code are critical to maintaining modern, evolving systems. Yet generating a good set of relevant test cases that covers what is important remains a difficult task. We propose a new approach to generating test cases through the use of code search. Open source repositories have made an enormous amount of code available. These contain unit tests for a wide variety of programs where...
In the past few years, many organizations have tried to improve their software development methodology. Different development approaches had been introduced but only a few are still functioning in the software industry. Agile software development is one approach, which is currently successful in software industry. For the development of interactive and usable software, this agile approach needs to...
In software development, the most time consuming phase is maintenance. Regression testing, which is a part of maintenance, deals with test case prioritization that aims to increase rate of fault detection with less number of tests. In our study, we used 100 tests and 1000 faults; however, faults are detected by tests using genetic algorithm and improved genetic algorithm. After test case prioritization,...
This paper describes the replication of an empirical study comparing tool-supported test case generation and manual development of unit tests. As variation to the original study, which was based on test results from students performing manual unit testing for 60 minutes, the replication involves professional software developers with several years of industry experience and extends the initial time...
With the invent of technology testing of OO software has become a quite tedious job. Conventional testing cannot be directly applied for testing of Object oriented programs. So, some special methodologies have been developed to test the object programs. In this paper we have enlisted few of them and their comparison is carried out. On the basis of different parameters features of OO paradigms like...
Variability of modern software systems increases potential sources of errors and demands appropriate quality assurance strategies. In order to reduce the test effort when testing software product lines, incremental model-based testing strategies have been proposed, based on the conceptual ideas of delta modeling. It requires executable system specifications to derive and classify test cases. However,...
Release engineering deals with all activities in between regular development and actual usage of a software product by the end user, i.e., integration, build, test execution, packaging and delivery of software. Although research on this topic goes back for decades, the increasing heterogeneity and variability of software products along with the recent trend to reduce the release cycle to days or even...
Code review is believed to be an effective technique to remove defects in early development stage and improve software quality. Therefore, it is regarded as one of the basic skills of qualified software engineers. Consequently, most curricula for SE students incorporated knowledge about code review in different courses. However, how to teach students to conduct efficient code review remains challenging...
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.