Course Syllabus
Computer Science 48
Spring 2018

Computer Science Project

Course Description

CS 48 is about "programming in the large" - how to design, implement, and test large programs. The emphasis is on learning by doing, and students will spend most of their time on problems related to their group projects (and less time on traditional homework assignments). Along the way, CS 48 will help you learn:

Pre-requisite

Computer Science 32 with a grade of C or better.

Course Goals

  1. Students gain personal experience with each of the typical phases of a large-scale programming project, including requirements and domain analysis, system design, implementation, and testing.
  2. Students gain experience working in groups to develop a reasonably complex software system.
  3. Students learn object-oriented analysis and design principles and techniques.
  4. Students learn to effectively implement and test object-oriented software systems.

Instructor

Dr. C. Michael Costanzo, mikec@cs.ucsb.edu
Office hours by appointment

Teaching Assistants

TA Email Office hours
MohammadJavad Amiri amiri@cs.ucsb.edu Friday 1-3pm in Trailer 936
Tegan Brennan tegan@cs.ucsb.edu Friday 1-3pm in Trailer 936

Instruction Schedule

Required Text

Steve McConnell. Code Complete, 2nd Edition, Microsoft Press, 2004.

Schedule of Lecture Topics

Grading Policy

Course grades will be calculated according to the following distribution of credit:

Letter grades will be assigned as follows:
ScoreGradeNotes
≥ 93%    AExceptional scores may earn A+
90-92.9%   A- Scores will be rounded to
the nearest 0.1 percent
87-89.9%   B+
83-86.9%   B
80-82.9%   B-
77-79.9%   C+
73-76.9%   C
70-72.9%   C-
67-69.9%   D+
63-66.9%   D
< 63%   D-Very poor scores may earn F

Notes