373S Software Design

Program: 
Undergraduate Program
Division: 
Electives

Reflection, UML, metamodels and constraints, 3-tiered architectures, model-driven engineering, UML-to-source-code mappings, classical and ad hoc refactorings, event based programming, design patterns, object-oriented frameworks and plug-ins, architectural styles, layered designs, map-reduce parallel software architecture, case studies, service oriented computing.

Prerequisites: 

Prerequisite:  Computer Science 373 with a grade of at least C-; and credit with a grade of at least C- or registration in CS 347 or 375.