Issues involved in developing large-scale software systems. Models for the software life-cycle; techniques and tools of analysis, design, programming, testing, debugging, and maintenance. May include formal methods, CASE, expert systems, case-studies.
Prerequisites: CSCI 2320, 1323, and junior standing.