Instructor | Announcements | Course Info | Class Material | Project | Grade | Related Links


ENGR 135

OO Analysis and Design

Fall 2001

College of Engineering San Jose State University




Richard Sinn
Office Hours:
After class, by appointment or email only



Class time:   11:30am (Sat)

Class room:  Room 343

Dec 14, 2001: Before I get out of town ... here is the update:

All the students perform very bad in the final. Most of the students are within the range of 20 to 50 :( Of course, the best one is 95/100. Here is the grade distribution:

Grade Number of Students
A+ 0
A 3
A- 3
B+ 5
B 17
B- 0
C+ 2
C 2
D 0
F 0

And YES, I curve the whole class upward since everyone does well in the project.


Nov 22, 2001: Mid-term is HERE. Go do it !

Oct 5, 2001: Yes, we will have a class tomorrow !!!

Oct 4, 2001: The engineering department has not get back to me on available resources. Here is the info I have so far:

Sept 29, 2001: Initial Creation.



Course Information


The objective of this course is to provide students with the opportunity to learn the fundamental concepts and principles required for building software systems using Object-Oriented (OO) Analysis and Design (A&D) methodologies. The course includes a team-based term project that will provide students with the opportunity to design OO software systems applying the topics covered in the course. Both theoretical and practical aspects of OO A&D as well as teamwork, effective communication skills (verbal and written), and technical leadership will be emphasized in the course.


Apart from the term project, there are homework assignments, a mid-term exam and a final exam. Exams might be take-home. 

No Late Assignment Submission


ENGR 100W, ENGR 125, and ENGR/CMPE 126. No waiver is allowed.


Approach Of the Class

This is a project class. There are five main parts of information you will be learning. They are

  1. Classic Software Engineering Principles
  2. OO Design and Analysis (Design Patterns)
  3. Development Tools (JDK/Java, Rose, UML, XML, JavaScript, IDEs, etc)
  4. Technology Information (Web Server Tech, Networking, XML, Other Internet Tech)
  5. Industry Example

You will use all these five "things" to do your project. Principles, Patterns and Industry Example will help you on the theory part of the project, where Development Tools and Technology Information will help you on the practical part. And yes, you have to deliver on the project in order to get an acceptable grade in the course.



Class Material

Lecture Notes

Reading material will be online on this web site before every lecture. Please email if you experience any download problem.

Required Textbook

Object-Oriented Systems Analysis and Design, Ronald J. Norman, Prentice Hall.



Software Engineering



Web Server




Oct-Wed 3:  Course discussion         
                    (Homework 0, Reading Ch 1)

Development and Systems Analysis Principles

Oct 6-Week1:   Schedule Info,
                         Software Engineering Introduction,
                         Catch-up Java Reading

                         (Reading Java materials)

Oct 13-Week2: Classics Models Part I
                         Analysis Concept and Principles
                         Class Project Discussion
                         Download Rational Rose
                         Catch-up Java Reading

                         Homework 1.5 (Form Group)

                         (Project Part I

Oct 20-Week3: Classics Models Part II

                         Catch-up Java Reading

                         Basic Java Networking
Java Client and Server Using Sockets 

                         (Reading Ch 2) (Homework 2A, this is no homework 1 :) AND the server only need to be single threaded.


Requirement Process

Oct 27-Week4: Catch-up Java Reading

                         CRC  (In class exercise)

                         (Homework 2A due)

Nov 3-Week1:   Intro to Pattern
                          Introduction, overview and DP,

                          Intro to Rose (Download rose in here, BUT the file is big and the server is slow, so do NOT abuse it.)

                          (Project Part I Due, Project Part II

                          Extra Credit Homework

Nov 10-Week2: Object Oriented Analysis, Analysis Principle II
                          Introduction to AP

                         (Database Info)


Object and Classes with Design Pattern

Nov 17-Week3: Broker

                          EchoClient Swing UI (SimpleEcho)
                          Revised EchoServer
                          Revised ThreadedServerHandler

                          Presentation Schedule

                          (Project Part II Due)

Nov 24-Week4: Mid-term is HERE. Go do it !

Dec 1-Week1:   Command Processor

                          Master-Slave, Publisher-Subscriber

                          View Handler

                          Quick Evaluation
                          Come on time NEXT week !!!

                          (Final Project and Presentation Info)


Presentation and Final


Dec 8-Week2: README Project Group Presentation (Attendence is REQUIRED, Presentation Schedule)

                        (Project Part III Due) - Bring D Cam.
                        Final Quiz
        (No make-up exam will be given
                        Comprehensive on all course material
                        Close book)
                        (Bring a blue book for Final)






Skip: UML Introduction and Overview




Term project is team-based. Each team member should participate in writing final project report, progress reports, coding and giving final project presentation. Each student should demonstrate a good understanding of the work submitted and all the steps taken. Each student's grade on the term project will represent his/her own work; therefore, the students in a team will not necessarily make the same grade on the term project. All assignment must be typed. (Completion of term project is required for passing the course. Zero credit for late term project report, progress reports, or project presentations.)

Project Description

Project Requirement Deliverable

Project Design Deliverable

Project Final Deliverable




Email to check your grade if necessary.



General Policy

The university and departmental policies and deadlines for course drop will be applied. Makeup exams cannot be offered, except under exceptional conditions, such as documented serious illness/accident, etc., and only at the professor's discretion.

Each student is responsible for his/her individual assignment, and must not copy anyone else's work. Students who borrow solutions from others will find themselves unable to pass the course. The minimum penalty for every student involved in the duplication of individual assignments or exams will be receiving a zero score on the submitted work.

For group project, all the work has to be done by your OWN group. Do not try to download "free code" from the Internet and hand in as a project. WE WILL FIND OUT. Do not share your work with others. So DO YOUR OWN WORK and EARN your grade.



Related Links

Richard's Recent Articles

Instructor | Announcements | Course Info | Class Material | Project | Grade | Related Links


Copyright 1996-2001 OpenLoop Computing. All rights reserved.