Catalog Description: Ideas and techniques for designing, developing, and modifying large software systems. Function-oriented and object-oriented modular design techniques, designing for re-use and maintainability. Specification and documentation. Verification and validation. Cost and quality metrics and estimation. Project team organization and management. Students will work in teams on a substantial programming project.

Units: 4

Prerequisites: COMPSCI 61B and COMPSCI 61C; COMPSCI 70 or MATH 113.

Fall: 3.0 hours of lecture and 1.0 hours of discussion per week
Summer: 6.0 hours of lecture and 2.0 hours of discussion per week
Spring: 3.0 hours of lecture and 1.0 hours of discussion per week

Grading basis: letter

Final exam status: Written final exam conducted during the scheduled final exam period

Class homepage on inst.eecs

Department Notes:

Course objectives: To have detailed knowledge of the object-oriented software development method, and to be able to apply it. To master the development of a medium size software application from the conception stage to deployment, using modern technologies. To experience working in a team. To master written technical communication.

Topics covered:

Related Areas: