Numerical design optimization algorithms are highly sensitive to the particular formulation of the optimization problems they are given. The formulation of the search space, the o...
Thomas Ellman, John Keane, Takahiro Murata, Mark S...
Fixing concurrency bugs (or crugs) is critical in modern software systems. Static analyses to find crugs such as data races and atomicity violations scale poorly, while dynamic a...
Guoliang Jin, Aditya V. Thakur, Ben Liblit, Shan L...
Gamification, the use of game mechanics in non-gaming applications, has been applied to various systems to encourage desired user behaviors. In this paper, we examine patterns of ...
Jennifer Thom-Santelli, David R. Millen, Joan Morr...
Strong unit testing is the foundation of agile software development but embedded systems present special problems. Test of embedded software is bound up with test of hardware, cro...
This tutorial teaches professional developers design principles for “production-quality”, aspect-oriented software, written in Java/AspectJ and Ruby. The discussion starts wit...