A common way to evaluate the performance of a system is to compare the algorithmic outputs with ground truth to identify divergences in the system’s performance and discover the...
Our ability to improve decision making in software development hinges on understanding how decisions are made, and which approaches to decision making are better than others. Howev...
Scientific instruments, such as radio telescopes, colliders, sensor networks, and simulators generate very high volumes of data streams that scientists analyze to detect and under...
In a previous paper, we developed an algebraic theory of threads and multi-threads based on strategic interleaving. This theory includes a number of plausible interleaving strategi...
Developing and consistently evolving quality software designs requires both theoretical knowledge and practical skills. The former can be communicated in a classroom; the latter h...