Chip Multiprocessors (CMPs) are now commodity hardware, but commoditization of parallel software remains elusive. In the near term, the current trend of increased coreper-socket c...
Peer-to-peer systems typically operate in large-scale, highly unreliable and insecure environments. Tackling this complexity requires good software design. Yet, many peer-to-peer ...
While software methodology encourages the use of libraries and advocates architectures of layered libraries, in practice the composition of libraries is not always seamless and th...
Sibylle Schupp, Douglas Gregor, David R. Musser, S...
In this paper, we report on our experience in designing and delivering two new software design courses in the Informatics major at UC Irvine. When the major was created in 2004, i...
Teaching software modeling and software design presents a different and difficult set of problems than teaching some of the other aspects of software engineering such as testing a...