Instructor: | Nick Sumner |
Venue: | Monday: SUR5360 12:30-2:20 |
Tuesday: SUR5360 12:30-1:20 | |
Office: | SUR 4146 |
Office Hours: | W: 4:30-5:30 |
Class mailing list: | cmpt-373@sfu.ca (archive) |
Discussion Forums: | On CourSys (Make sure to subscribe) |
TA: | --- |
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.
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.
Required:
Reference:
Recommended:
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 (http://www.sfu.ca/policies/gazette/student.html).