Volume 7

Volume 7, Number 70

July 6, 2009

9 pages893 K bytes

Complecto Mutatio: Teaching Software Design Best Practices Using Multi-Platform Development

Randy Connolly
Mount Royal College
Calgary, Alberta T3E 6K6, Canada

Abstract: This paper argues that students can best appreciate the benefits of software design principles when they have to work on a project in which requirements change repeatedly in some substantial way over the course of a semester. This paper describes two different semester-long projects in which substantial change was enforced upon the students by making them develop a system that had to work on three different user interface platforms (text-based console, desktop Windows, and a mobile Pocket PC). By making the students plan and adapt for this change the students were better able to truly appreciate the benefits of good design and were willing to take the extra effort to implement a design that reflects the principles taught in most object-oriented design courses. One of the key principles engaged by this approach was the importance of a layered architecture to software projects driven by change.

Keywords: software design, layers, user interface, extreme programming, agile software development, mobile computing, game development

Download this issue:   ISEDJ.7(70).Connolly.pdf   (Adobe PDF, 9 pages, 893 K bytes)

Preview the contents:   Connolly.j.txt   (ASCII txt, 24 K bytes)

Recommended Citation: Connolly (2009). Complecto Mutatio: Teaching Software Design Best Practices Using Multi-Platform Development. Information Systems Education Journal, 7 (70). http://isedj.org/7/70/. ISSN: 1545-679X. (A preliminary version appears in The Proceedings of ISECON 2008: §2554. ISSN: 1542-7382.)