Please note:

To view the current Academic Calendar, go to

Software Design and Analysis for Engineers ENSC 251 (4)

Fundamentals for designing and implementing modular programs using a modern object-oriented programming language with a focus on understanding the performance implications of design choices on non-traditional computing platforms. Lecture topics include: classes; objects; debugging, testing & verification; design analysis & abstraction; error handling; fundamental data structures such as lists, trees, and graphs; and big-0 complexity analysis. Prerequisite: CMPT 128 or CMPT 135 or (CMPT 125 and CMPT 127).