Keyword programming is a novel technique for reducing the need to remember details of programming language syntax and APIs, by translating a small number of keywords provided by t...
We present CodeGenie, a tool that implements a test-driven approach to search and reuse of code available on large-scale code repositories. While using CodeGenie developers design...
toolkit demonstrates that predicate abstraction enables automated verification of real world Windows device Our predicate abstraction-based tool DDVerify enables the automated ve...
Thomas Witkowski, Nicolas Blanc, Daniel Kroening, ...
The metamodel techniques and model transformation techniques provide a standard way to represent and transform data, especially the software artifacts in software development. How...
Monitoring the satisfaction of software requirements and diagnosing what went wrong in case of failure is a hard problem that has received little attention in the Software and Req...
Yiqiao Wang, Sheila A. McIlraith, Yijun Yu, John M...
This paper presents a tool that (i) constructs tree-based models of a program’s behavior during testing and (ii) employs these trees while reordering and reducing a test suite. ...
Adam M. Smith, Joshua Geiger, Gregory M. Kapfhamme...
Growth in the complexity of computing systems, in the dynamism of the environments they operate in, and the need for timely adaptations as conditions change, now pose significant...
Software systems have become more complex, with myriad features and multiple functionalities. A major challenge in developing and maintaining such complex software is to identify ...
In this paper we present a framework for estimating the energy consumption of Java-based software systems. Our primary objective is to enable an engineer to make informed decision...
We describe a model-based construction of an online tester for black-box testing of implementation under test (IUT). The external behavior of the IUT is modeled as an output obser...