Software systems should consist of simple, conceptually clean software components interacting along narrow, well-defined paths. All too often, this is not reality: complex compon...
In the domain of desktop software, design patterns have had a profound impact; they are applied ubiquitously across a broad range of applications. Patterns serve both to promulgat...
Sally K. Wahba, Jason O. Hallstrom, Neelam Soundar...
The development of video games comprises engineering teams within various disciplines, e.g., software engineering, game production, and creative arts. Game jams are a promising ap...
Teaching (and therefore learning) eXtreme Programming (XP) in a university setting is difficult because of course time limitations and the soft nature of XP that requires first-ha...
System specifications have long been expressed through automata-based languages, enabling verification techniques such as model checking. These verification techniques can assess ...