Generalization tasks are important for continual improvement to the design of an evolving code base, eliminating redundancy where it has accumulated. An important step in generali...
Previous work has proven typestates to be useful for modeling protocols in object-oriented languages. We build on this work by addressing substitutability of subtypes as well as i...
Translating data and data access operations between applications and databases is a longstanding data management problem. We present a novel approach to this problem, in which the...
As software grows more complex, software developers’ productivity is increasingly defined by their ability to effectively reuse code. Even APIs (application programming interfac...
Jeffrey Stylos, Benjamin Graf, Daniela K. Busse, C...
Salinity is the relative concentration of salts in water. In a city of southern China, the local water supply company pumps water from a nearby river for potable use. During the wi...