Course Syllabus

Class Web Page


This course will explore the cultural difficulties in moving internal organizational process control from a hierarchical management structure to a matrix, information-age approach. As a class, we will create groupware systems that live on the Web and discuss the struggles and importance of getting people to actually use them.

Along the way, students will gain skills in event model programming, JavaScript, designing Application Programming Interfaces, and Graphical User Interface design.

During the final two weeks, students will investigate the potential for adding a third dimension to today's popular Web page approaches.


The course will consist of faculty and guest lectures, video presentations and in-class discussions.


Active full-time student status at the University of Washington


Winter Quarter 2003
Mondays/Wednesdays, 8:30-9:50A


3 credits will be given for this course upon the successful completion of the course including:


Grading will be calculated based on the percentages given above.


Bruce Campbell

Lecturer, Industrial Engineering

Research Scientist, Human Interface Technology Laboratory
Box 352142
Seattle, WA 98195

Office: 202 Ocean Sciences
Office Hours: Mondays/Thursdays 10AM-Noon (other times by appt)
Telephone: OSB Office: 685-5356
Human Interface Technology Lab: 616-1494



  • JavaScript School
  • Thinking in Java

    Course Handouts and On-Line Readings

  • See Catalog Section of Class Web Page

    Date Lecture Assignment
    January 6 Welcome to Class - Find Collaborative Systems Links
    January 8 Why Web-Enable Systems? - Collaborative Systems Brainstorming Session
    January 13 JavaScript Overview - Read the JavaScript Tutorial
    - Look at the 4 Collaborative Tools
    January 15 JavaScript Details - Continue the JavaScript Tutorial
    January 22 Object-Oriented Software Design/Project 1 - Continue the JavaScript Tutorial
    - Prepare to Discuss Project 1
    - Finalize Project 1 Teams
    January 27 Java Overview - JavaScript Exam
    January 29 Java Design Methodology and Application Programming Interfaces - Thinking in Java Introduction
    - Thinking in Java Chapter 1
    February 3 Java Details - Read Examples on the Class Web Site
    - Thinking in Java Chapter 2
    February 5 Java Networking - Thinking in Java Chapter 15
    February 10 The JavaScript/Java Interface - Read Examples on the Class Web Site
    - Read The Electronic Paper Chase
    February 12 Adding the Web Server - Create System Architecture Diagrams

    February 17 President's Day - No Class - Finish Java Readings
    - Stretch Drive for Project 1
    February 19 Java Review and Design Considerations - Review UML Diagram
    February 24 Existing Collaborative Software Models
    - Java Exam

    February 26 Project 2 Discussion and Group Forming - Register for an optional demonstration evening
    - Determine Group Conferences Dates
    - Read about Flash Communication Server
    - Project 1 Due on February 26 at 5:00PM
    March 3 No Class - Meet in Group Conferences Instead - Read about OWorld
    - Read about Habanero
    - Study the Habanero API
    March 5 OWorld and Lotus Notes/Domino
    NCSA Habanero
    Architecture Diagramming
    - Read about Lotus Domino
    - Review the VRML Specification
    March 10 Flash Communications Server
    The Virtual Factory and VRML Primer
    - Read Examples on Class Web Site
    March 12 Managing an Open Source Project and Student Discussions - Collaborative System Exam
    March 17 Project 2 Collaborative Software Show and Tell - Project 2 Due at 5:00PM (NO exceptions)