-->Tentative Schedule
-->Quiz 1
-->Lab 1
-->Lab 2
-->Lab 3
-->Lab 4
->Course Policies
->Electronic Submission
->Documentation Standards
->Old Exams
->C++ Examples
->MSVC++ Info
->Support Forum
->Unix Info
->Nature Photos

CS183 -- Software Design

Winter 2003-2004

This course continues the study of software development using an object-oriented approach and the C++ programming language. Students design, document, and implement software components and incorporate these components into larger software systems. A group project reinforces the application of the software design process in a team context. (prereq: CS-182) (3-3-4)


On successful completion of this course, the student will:

  • Understand the rationale for object-oriented design and programming.
  • Understand data abstraction and abstract data types.
  • Be familiar with UML class notation and use cases.
  • Understand and be able to apply pointers and dynamic objects.
  • Understand and be able to apply STL iterators.
  • Be familiar with composition, inheritance, polymorphism, and C++ templates.
  • Be able to design and implement simple C++ classes and class libraries.
  • Be able to design small software systems using classification and use cases.
  • Be able to document the design and implementation of small software systems.
  • Be able to work in a team to create a small software system.

The above course description and goals were taken from the official course description.

General Course Policies

Please review the general course policies webpage.


C++ How to Program, Introducing Object-Oriented Design with the UML, 3rd Ed., by Harvey M. Deitel and Paul J. Deitel, Prentice-Hall, 2000.


Quizzes will be given nearly every week. They will be announced at least one lecture in advance. The lowest quiz score will be dropped. No make-up quizzes will be given.

My Schedule
Time Mon Tue Wed Thu Fri
11:00 CS285 CC53 CS285 CC53 CS285(1) CC53 Lunch w/ Students* Free Hour
12:00 Free Hour Lunch w/ Students* CS183(2) CC48
1:00 DEPT MTG CS183 CC48 CS183 CC48 CS183 CC48
2:00 Office Hour CS182(3) CC48 Office Hour CFARC
3:00 Office Hour
4:00 CS182 CC48 CS182 CC48 CS182 CC48

* I would like to have lunch with you individually or as a group to get to know you better. If we eat in RWJ, housing will pick up my lunch bill. If you would prefer to eat elsewhere, we will each be responsible for our own bill. Feel free to suggest another time if the time above does not work for you.

Quizzes: 20%
Lab projects: 45%
Midterm: 15%
Final exam: 20%
Total: 100%

Last Updated: Thursday, 01-Jan-2015 13:38:52 CST