Prerequisites:CSCI 223 An introduction to current techniques used in medium- and large-scale software development. Topics include requirements analysis, functional specification, systems design, implementation, testing, maintenance, project management, and professional ethics.