CS 2340 Summer 2007

1040-1150  MWF CoC 101

 

Instructor

Bob Waters

Room 111, CoC

watersrATcc.gatech.edu

Office Hours: Tuesday 0800-1100, 1130-1400. Open Door Policy (If my door is open, it is OK to come in for help regardless of day).

Class Objectives

This course focuses on enhancing the student’s understanding of core object-oriented concepts, design, UML.  Object-oriented programming methods for dealing with large programs. Focus on quality processes, effective debugging techniques, and testing to assure a quality product.

Textbooks

Required:

Object Design:  Roles, Responsibilities, and Collaborations, Rebecca Wirfs-Brock and Alan McKean

1st Edition, Addison-Wesley Professional (OD)

Electronic Readings

An Introduction to Object-Oriented Programming, Timothy Budd (BUDD)

Joy of Smalltalk, Ivan Tomek (JOY)

Smalltalk by Example: the Developers Guide ( SBE)

Smalltalk With Style (SWS)

VisualWorks Documentation (See docs directory in install folder)

Class Swiki: http://coweb.cc.gatech.edu/cs2340

Class Turnin Site: http://t-square.gatech.edu

Class Schedule

Date

Topic

Reading

Assignments

5/14

Class Introduction

History of OO

 

 

Download and Install Cincom VisualWorks

5/16

Object Theory

Introduction to Smalltalk and VisualWorks

BUDD, Chapters 1,2,4,5

OD Chapter 1

 

VisualWorks Tutorial

Homework 1

5/18

More Smalltalk Intro

Smalltalk 101 topics

JOY, Chapter 3

SBE, Ch 1-4

App Developers Guide,  289, 263, 279, 339

Workspace code

Sm101 Workspace

Cs2340Test.st

 

5/21

GUI Development, Classic MVC Design

SBE Chapter 25, 26

JOY Chapter 6

Gui Developers Guide

App Developers Guide, Pg 189, 219, 231

Walkthrough (entire book)

M1 Released

HW 1 DUE

5/23

GUI Development, VisualWorks

 

 

5/25

GUI Development, Custom Views and Menus

Aspects and GUI Development

 

Dialog Workspace

InClass Gui Sample

 

 

5/28

OFFICIAL HOLIDAY

 

 

5/30

Object-Oriented Analysis with CRC Cards and Scenarios, Identifying Objects,

CRC Chap 1-3

OD Chap 2-4

M1 DUE

M2 RELEASED

6/01

Responsibility-Driven Design

CRC Chap 1-3

OD Chap 2-4

M1 Solution

In Class Exercise

6/04

Responsibility-Driven Design CRC Cards to Class Diagrams –

 

OD Chapter 6

Custom Dialog Sample Code

 

6/06

UML Class Diagram Syntax UML

OD Chap 1-4

M2 DUE

M3 RELEASED

6/08

Sequence Diagrams – Documenting Dynamic Behavior

OD Chap 5,6,7

 

6/11

UML Design Exercise

OD Chap 5,6,7

 

6/13

Exam Review

 

M3 DUE

M4 RELEASED

6/15

Midterm Exam

See Swiki Pages under Review

(PROGRESS REPORTS)

6/18

Exception Handling Design

OD Chapter 8

 

6/20

Design Principles

Principles

M4 DUE

M5 RELEASED

6/22

Design Patterns I

 

 

6/25

Team Development and Version Control in VisualWorks

 

 

 

 

Source Code Management with Visualworks (in docs directory)

 

4911 Source Code Manual

 

 

 

6/27

Custom Views (See final slides on MVC)

 

 

 

 

M5 DUE

 

M6 RELEASED

 

 

6/29

Unit Testing Theory

 

Persistence (BOSS) and Threads (See final slides on Smalltalk 101 from 5/18)

 

SUnit

Workspace code

 

ComplexTest

 

Custom View

 

M2 with save

7/02

Design Reviews and Validation

SAAM

Design Checklist

 

7/04

OFFICIAL HOLIDAY

 

 

7/06

Design Review, SAAM Analysis

 

M6 DUE

M7 RELEASED

 

7/09

User Interface Fundamentals and User Interface Design

Bad Design Analysis

 

7/11

User Interface Evaluation

 

M7 DUE

M8 RELEASED

7/13

Design Critiques /

Object Disoriented

LBT

Hot n Fresh

Konichiwa

 

7/16

Web Design in Smalltalk

 

Sample Code (Sandbox directory)

7/18

Framework Design

Agile Development Processes – SCRUM For Project Management

Its Drinking Time! ??? (Note that this is a team name, not an activity we will do in class)

M8 DUE

M9 RELEASED

7/20

Refactoring

 

WriteUp

Code

A Big Example
Bad Smells

Refactoring Home Page

 

7/23

Language Comparisons

Virtual Machines  and Garbage Collection

 

 

DEAD WEEK

7/25

Final Exam Review

 

DEAD WEEK

M9 DUE

 

7/27

Final Exam Review

QWERTY

Sweet n Salty

DEAD WEEK

7/30-8/02

FINAL EXAM WEEK