Research

Automated Detection of Metamorphic Properties

In this project, we seek to develop testing techniques that successfully find defects in software without a test oracle.  There are large and important classes of software applications – in machine learning, simulation, optimization, etc. domains – where there simply is no test oracle, and for the general case it is impossible to determine whether the actual output is indeed correct for given input.  Yet we would still like to be able to devise test cases that enable us to find coding errors.  We have investigated several approaches, of which the most successful (at finding both previously unknown bugs and seeded bugs in real-world applications) has been “metamorphic testing”.   Fortunately, many such applications reflect ‘metamorphic properties’ that define a relationship between pairs of inputs and outputs, such that for any previous input i with its already known output o, one can easily derive a test input i’ and predict the expected output o’. If the actual output o” is different from o’, then there must be an error in the code.

We are currently investigating techniques to automatically identify these metamorphic properties in existing code.

Programmer Productivity and Gamification

We are working on new, novel tools for software engineering to maximize developers' ability to get into a "flow" state. We are also trying to minimize the context reflux (the cost of context switching – moving from one task to another – in time, CPU cycles, or any other relevant unit) that developers often feel when faced with large todo/bug tracking lists. We propose HALO-SE: Highly Addictive sociaLly Optimized Software Engineering in this tech report, submitted to the First International Workshop on Games and Software Engineering.

genSpace

genSpace is a project in collaboration with the Center for Computational Biology and Bioinformatics (C2B2). We are exploring novel computer supported collaborative work (CSCW) techniques to enhance the geWorkbench bio-informatics research platform.

 

  • tweets

    Follow