CS414: Object Oriented Design
Distance Learning Section
Course Supervisor: Dr. Sudipto Ghosh
For information on the on-campus section of
CS414 (section 001), please click
The objective of the course is to provide students with a working knowledge
of the underlying foundations of object-oriented design and analysis and the
current state of practice. Object-oriented analysis involves developing
conceptual models of the problem domain of a software product. Object-oriented
design involves developing models of the software solution to the problem
clarified during analysis, and constructing programs that implement the design
models. A fundamental objective of the course is for students to learn to think
in terms of objects, so that they can identify the objects in a system and
assign responsibilities to system components.
During the course, students will learn to analyze problems and develop
conceptual models, generate designs from the models, and write program
code that implements the designs. Students will also learn to evaluate
and improve object-oriented models and code. They will use the Unified
Modeling Language (UML) to develop object models, and Java to implement
the designs. The course will also introduce some facets from agile programming:
very short software build cycles, and test-first programming.
The topics covered in this course are listed below (subject to change, not
in exact order, as time permits):
- Java coding style and idioms.
- Object-Oriented Analysis and Design.
- Problem Analysis.
- Conceptual Modeling.
- System Behavior modeling.
- Software Architecture.
- Design modeling.
- Design patterns.
For information on prerequisites, instructor's biography, and important
notices, please click on General
From August 22, 2011, login to the
CS-414 home page for course materials and to take part in the course.
June 20, 2011:
Website under construction.