CMPT 373: Software Development Methods
Fall 2016

Instructor:Nick Sumner
Venue:MWF: SUR5140 3:30-4:20
Labs:MW: SUR3150 4:30-5:20
Office:SUR 4146
Office Hours:W: 5:30-6:30
Class mailing (archive)
Discussion Forums:On CourSys (Make sure to subscribe)

This course focuses on modern software design and development practices. Students will work on a semester long project in teams of up to eight people. In class and in labs, students will learn about and gain experience with decomposing larger problems into simpler tasks than can be implemented and composed effectively. We will review, critique, and improve student code regularly as a class, identifying and examining the trade-offs imposed by design and implementation decisions. Students will gain experience and understanding of best practices, software development workflows, and coding style.

The projects will be implemented using C++, developed for and using a Linux oriented platform. Weekly labs are for mandatory project group meetings, including meetings and code reviews with the instructor. Students should expect to actively participate in class discussions and to present clearly to the class.

[course outline]


All of these are books that you ought to read cover to cover. Only the first is required reading, but the others will make you a better developer and a better teammate. Take advantage of the fact that the school provides you online access to them.




Academic Honesty Statement

Academic honesty plays a key role in our efforts to maintain a high standard of academic excellence and integrity. Students are advised that ALL acts of intellectual dishonesty will be handled in accordance with the SFU Academic Honesty and Student Conduct Policies (