Oct 09, 2026  
DRAFT 2026-2027 Undergraduate Catalog 
    
DRAFT 2026-2027 Undergraduate Catalog
Add to Portfolio (opens a new window)

CSC 407 Software Design



This course introduces students to the practical problems of designing and building large, reliable software systems.  Use of modularity, abstraction, encapsulation and software design paradigms will be studied as keys to managing complexity.  Course topics will include system formulation and design requirements, software readability, documentation processing tools, testing and logging frameworks, use of external library APIs, version control and integrated development environments, professionalism and customer interaction.  Additional topics may include cloud and mobile deployment, graphical user interfaces, database access, performance optimization, concurrency and multi-threading.  Credit(s): 3

Prerequisite(s): CSC 122  



Add to Portfolio (opens a new window)