Computer Science 225 and Math 120 and Math 113 (or Math 111 with a B+ or Math 115 with a C), and 12 credits
This course introduces the basic concepts and modern tools and techniques of Software Engineering. The course emphasizes: the development of reliable and maintainable software via system requirements and specifications; software design methodologies including object-oriented design, implementation, integration, and testing; software project management; life-cycle documentation; software maintenance; and consideration of human factors and ethical issues. The course provides experience in working as a team to produce software systems that meet specifications, while satisfying an implementation schedule. Students are trained to produce professional quality oral/written presentations of system designs, reviews, and project demonstrations.