3,458 papers · page 112 of 173
Sebastian Gabmeyer
Model transformations play an essential role in many aspects of model-driven development. By-demonstration approaches provide a user-friendly tool for specifying reusable model transformations. Here, a modeler performs the model transformation only once by hand and an executable …
Achraf Ghabi, Alexander Egyed
Traces between requirements and code reveal where requirements are implemented. Such traces are essential for code understanding and change management. Unfortunately, traces are known to be error prone. This paper introduces a novel approach for validating requirements-to-code tr…
Liang Gong, David Lo, Lingxiao Jiang, Hongyu Zhang
Fault localization is useful for reducing debugging effort. However, many fault localization techniques require non-trivial number of test cases with oracles, which can determine whether a program behaves correctly for every test input. Test oracle creation is expensive because i…
Divya Gopinath, Razieh Nokhbeh Zaeem, Sarfraz Khurshid
Fault localization i.e., locating faulty lines of code, is a key step in removing bugs and often requires substantial manual effort. Recent years have seen many automated localization techniques, specifically using the program’s passing and failing test runs, i.e., test spectra. …
Sonia Haiduc, Gabriele Bavota, Rocco Oliveto, Andrea De Lucia, Andrian Marcus
Text-based search and retrieval is used by developers in the context of many SE tasks, such as, concept location, traceability link retrieval, reuse, impact analysis, etc. Solutions for software text search range from regular expression matching to complex techniques using text r…
Mark Harman, William B. Langdon, Yue Jia, David Robert White, Andrea Arcuri, John A. Clark
Optimising programs for non-functional properties such as speed, size, throughput, power consumption and bandwidth can be demanding; pity the poor programmer who is asked to cater for them all at once! We set out an alternate vision for a new kind of software development environm…
Cameron M. Hine, Jean-Guy Schneider, Jun Han, Steven Versteeg
Enterprise software systems operate in large-scale, heterogeneous, distributed environments which makes assessment of non-functional properties, such as scalability and robustness, of those systems particularly challenging. Enterprise environment emulators can provide test-beds r…
JeeHyun Hwang, Tao Xie, Donia El Kateb, Tejeddine Mouelhi, Yves Le Traon
As security requirements of software often change, developers may modify security policies such as access control policies (policies in short) according to evolving requirements. To increase confidence that the modification of policies is correct, developers conduct regression te…
Amani S. Ibrahim, John Grundy, James H. Hamlyn-Harris, Mohamed Almorsy
Generic pointers scattered around operating system (OS) kernels make the kernel data layout ambiguous. This limits current kernel integrity checking research to covering a small fraction of kernel data. Hence, there is a great need to obtain an accurate kernel data definition tha…
Ivar Jacobson, Ian Spence, Pontus Johnson, Mira Kajko-Mattsson
Software engineering is gravely hampered by immature practices. Specific problems include: The prevalence of fads more typical of the fashion industry than an engineering discipline; a huge number of methods and method variants, with differences little understood and artificially…
Konrad Jamrozik, Gordon Fraser, Nikolai Tillmann, Jonathan de Halleux
Dynamic symbolic execution (DSE) can efficiently explore all simple paths through a program, reliably determining whether there are any program crashes or violations of assertions or code contracts. However, if such automated oracles do not exist, the traditional approach is to p…
Maartje de Jonge, Eelco Visser
Evaluation of parse error recovery techniques is an open problem. The community lacks objective standards and methods to measure the quality of recovery results. This paper proposes an automated technique for recovery evaluation that offers a solution for two main problems in thi…
Kari Kähkönen, Olli Saarikivi, Keijo Heljanko
In multithreaded programs both environment input data and the nondeterministic interleavings of concurrent events can affect the behavior of the program. One approach to systematically explore the nondeterminism caused by input data is dynamic symbolic execution. For testing mult…
Massila Kamalrudin, John Grundy, John G. Hosking
Requirements captured by Requirements Engineers are commonly inconsistent with their client’s intended requirements and are often error prone especially if the requirements are written in multiple languages. We demonstrate the use of our automated inconsistency-checking tool Mara…
Timo Kehrer, Udo Kelter, Pit Pietsch, Maik Schmidt
Modern model-based development methodologies require a large number of efficient, high-quality model comparison tools. They must be carefully adapted to the specific model type, user preferences and application context. Implementing a large number of dedicated, monolithic tools i…
Yves Ledru, Germán Vega, Taha Triki, Lydie du Bousquet
This paper describes the Tobias tool. Tobias is a combinatorial test generator which unfolds a test pattern provided by the test engineer, and performs various combinations and repetitions of test parameters and methods. Tobias is available on-line at tobias.liglab.fr . This webs…
Huiqing Li, Simon J. Thompson
Wrangler is a refactoring and code inspection tool for Erlang programs. Apart from providing a set of built-in refactorings and code inspection functionalities, Wrangler allows users to define refactorings, code inspections, and general program transformations for themselves to s…
Huihua Lu, Bojan Cukic, Mark Vere Culp
Accurate detection of fault prone modules offers the path to high quality software products while minimizing non essential assurance expenditures. This type of quality modeling requires the availability of software modules with known fault content developed in similar environment…
Lucia, David Lo, Lingxiao Jiang, Aditya Budi
High-quality test data that is useful for effective testing is often available on users’ site. However, sharing data owned by users with software vendors may raise privacy concerns. Techniques are needed to enable data sharing among data owners and the vendors without leaking dat…
Rainer Lutz, Sascha Schäfer, Stephan Diehl
In requirements engineering, CRC modeling and use case analysis are established techniques and are often performed as a group work activity. In particular, role play is used to involve different stakeholders into the use case analysis. To support this kind of co-located collabora…