ECE 3574 Applied Software Design

B.S. Computer Engineering and B.S. Electrical Engineering, SEITZ 300, 2024

An introduction to applied software design methods for writing efficient, reusable, and modular C++ programs. Pre: 2574 with a C- or better. (3H, 3C)

ECE 3574 Applied Software Design


  • TopicsSlidesMeeting
    CMake and Catch2: Managing projects without CMake using multiple header and source files; Building projects with CMake and Make; CMakeLists.txt; Unit Testing using Catch2; Writing Test Cases  
    C++ Introduction: Vectors; auto; enum (scoped and unscoped); pass by value/reference; const and constexpr; map, unordered_map, introduction to OOP, Scaling-up programs; this; reference and pointer: similarities and differences; when to use reference and pointer  


  • Quiz: 20%
  • Lab Exercises: 20%
  • Three Projects: 45%
  • Final Exam: 15%