Course Syllabus

The schedule is tentative and is likely change depending on the availability of invited speakers.
Last Modified: Tuesday, December 21, 2004

Date

Lecture

Speaker/Lecturer

Reading Due

Work Due

1/23/02 (W)

Overview (PPT)

SLG



1/28/02 (M)

No Silver Bullet: Discussion (PPT)

SLG

No Silver Bullet, "No Silver Bullet" refired

Reading summary

1/30/02 (W)

Searching for Silver Bullet (PPT) SLG Why Software Jewels are Rare, A Plea for Lean Software (Optional), Gaining intellectual control of software development (Optional), On the Criteria To Be Used in Decomposing Systems into Modules (Optional)

Reading summary

2/04/02 (M)

Observations on Software Development
The Release Engineering of 4.3BSD (PS)
Jim Larus (Microsoft)
M. Kirk McKusick
Excerpts from Code Complete and Software Project Survival Guide

Reading summary

2/06/02 (W)

Psychology of Software Design (PPT)

MB

Software Design: Theoretical Approaches (Detienne, Ch. 3)

Reading summary

2/11/02 (M)

Psychology of Program Understanding (PPT)
TkSee Slides (PDF)

MB

Understanding Software (Detienne, Ch. 6)

Reading summary

2/13/02 (W)

Tools and Environments for Software Engineering (PDF)

Michael Van De Vanter (SunLabs)

Practical Language-Based Editing for Software Engineers

Reading summary

2/18/02 (M)

NO CLASS

2/20/02 (W)

Tools and Environments: Discussion I (Dr. Scheme, jGRASP, Ada-Assured, Delphi)

Student Tool Evaluations


Tool evaluations

2/25/02 (M)

Tools and Environments: Discussion II (Visual Studio, CodeGuide, Visual Age/Java, SmallTalk)

Student Tool Evaluations



2/27/02 (W)

Generative Programming Overview (PPT)

MB

Components and Generative Programming

Reading summary

3/1/02 (F)


Project proposal

3/4/02 (M)

Software Development by Refinement

Doug Smith (Kestrel Institute)

KIDS: A Semi-Automatic Progam Development System, Generators (Czarnecki, Ch. 9)

Reading summary

3/6/02 (W)

Generic Programming

MB

Generic Programming (Czarnecki, Ch. 6)

Reading summary

3/11/02 (M)

Intentional Programming
(Oege de Moor's slides: DOC | PDF)

MB

Intentional Programming (Czarnecki, Ch. 11)

Reading summary

3/13/02 (W)

Observations on Software Development

Jim Larus (Microsoft)

Review excerpts from Code Complete and Software Project Survival Guide


3/15/02 (F)


Project progress report

3/18/02 (M)

Software Analysis

Alex Aiken (UCB)



3/20/02 (W)

Aspect-Oriented Programming (PDF)

Erik Hilsdale (Xerox PARC)

Aspect-Oriented Programming (Czarnecki, Ch. 8), An Overview of AspectJ

Reading summary

3/25/02 (M)
3/27/02 (W)

SPRING BREAK

4/1/02 (M)

NO CLASS

4/3/02 (W)

Design Patterns SLG/MB Design Patterns: Introduction, Tool Support for Object-Oriented Patterns

Reading summary

4/5/02 (F)


Project progress report

4/8/02 (M)

Patterns and Pedagogy (PPT) Michael Clancy (UCB) Patterns and Pedagogy, Elementary Patterns

Reading summary

4/10/02 (W)

Refactoring (PDF) Ruchira Datta Principles in Refactoring

Reading summary

4/15/02 (M)

Software Reuse David Marin People-oriented Software Reuse: the Very Thought, The Software Technology of the 21st Century: From Software Reuse to Collaborative Software Design, In Defense of Not-Invented-Here Syndrome (Optional)

Reading summary

4/17/02 (W)

Software Process (PDF | PPT) Pallavi Aravind The New Methodology, The Unified Process: Use-Case Driven, Architecture-Centric, Iterative, and Incremental

Reading summary

4/19/02 (F)


Project progress report

4/22/02 (M)

Extreme Programming (PDF) Stephen McCamant, plus suurprise appearance by Walter Tichy Is Design Dead, XP Inside the Trojan Horse: Refactoring the Unified Software Development Process, Strengthening the Case for Pair-Programming, Patterns and XP (Optional), Refactoring and Re-reasoning (Optional)

Reading summary

4/24/02 (W)

Open Source SLG The Cathedral and The Bazaar, A chapter from Open Sources: Voices from the Open Source Revolution

Reading summary

4/29/02 (M)

ActiveCampus - Sustaining Educational Communities through Mobile Technology

Bill Griswold (UCSD) ActiveCampus - Sustaining Educational Communities through Mobile Technology, The ActiveClass Project: Experiments in Encouraging Classroom Participation

Reading summary
Project progress report

5/1/02 (W)

Progamming-in-the-Large (Notes: DOC) Andy Begel Programming-in-the-Large Versus Programming-in-the-Small, A Fresh Look at Programming-in-the-Large, Programming-in-the-Large: Past, Present, and Future

Reading summary

5/6/02 (M)

Software Usability Jason Hong The Psychopathology of Everyday Things, Contextual Design

Reading summary

5/8/02 (W)

Software Visualization (discussion + project report) Dmitry Ayrapetov ICSE Workshop on Software Visualization, Program Visualization: The Art of Mapping Programs to Pictures

Reading summary

5/13/02 (M)

Software Verification (discussion + project report) Scott McPeak Program Verification

Reading summary

5/15/02 (W)

PROJECT PRESENTATIONS (12:30-2:30; 320 Soda)

5/17/02 (F)


Final project report