198:431 Software Engineering
Fall 2006
Prof Barbara G. Ryder

Lecture Notes

Graded Assignments


Recitation Webpage

Class Locations/Times

Lectures: 1:40-3:00pm, MW, Hill 254
Recitation: 3:15-4:10pm, M, Hill 254
Note: we may hold demos during recitation some weeks and therefore, extend the period.


December 5, 2006: Final project and demo info availble from projects page.

December 4, 2006:Check the class lecture page for the updated lecture/recitation schedule for the rest of the term.

November 29, 2006:We now have posted instructions on the Project page as to how and where to install your stable subprojects.

November 26, 2006:A small change to how we will hand in the stable subproject is noted on the "User Doc & Stable Subproj" page under Project, shown in red font. We will talk more about this in class on Nov 27th.

November 22, 2006: We will have a guest speaker from Merck in class on November 29, 2006 to talk about project management and software development practices in industry. All students are expected to attend.

November 8, 2006: This is an interesting article about how software pracitioners actually practice software engineering. Remember Prof Ryder will have no office hours on Nov 9th.

October 30, 2006:The dates of the Test Plan milestone have been changed on the project page; new due date is Weds, Nov 15th. Also, the due date of Assignment 3 is now changed to Weds, Nov 15th as well.

October 25, 2006: Individual graded assignment 3 is now posted. Also, the overall design project is now posted (test plan project to be posted shortly).

We will have no lecture Weds, Nov 8, 2006, due to Prof Ryder attending FSE'06, a research conference; instead there will be a makeup lecture on Sunday, Nov 5th from 4:00-5:30pm in Hill 254.

October 17, 2006: Individual graded assignment 2 is now posted, due Friday, Oct 27, 2006. The high-level design project is now finalized. Also, the 4 restrictions on the project implementation, discussed in recitation yesterday, are now included at the bottom of the project description page in red font.

October 9, 2006: New milestone dates (shown in red) for the project are now available on the project page.

September 26, 2006: There will be no class or recitation on Monday, October 2, 2006. We will have the GUI demos in class on Weds, October 4, 2006. There also will be no class on Weds, October 11th due to Prof Ryder's Distinguished Lecture at UMass. We will hold a makeup lecture on Sunday, October 15, 2006 from 3:30-5:00pm in Hill 254.

September 22, 2006: Graded assignment 1 is posted.

September 19, 2006: We have setup interview times for your teams with our 2 departmental users -- Ms. Joanne Walsh and Prof Doug DeCarlo -- at the following times. Please have a representative from your team contact Ms Walsh and Prof DeCarlo to make an appointment for your team to meet with them (for no more than 30 minutes), during their available times this week listed below.

Times available:
Ms. Joanne Walsh, room to the left of Hill 390, 3-4:30pm Tues 9/19, 3-4:30pm Weds 9/20 or 11am-12:30pm Weds 9/20

Prof Doug DeCarlo, Core 310, 3:30-5:30 on Weds 9/20.

September 8, 2006: Remember we will hold a full period recitation on Monday, Sept 11th in order to start to form project teams.

September 6, 2006: Prof Ryder will hold no office hours during the week of September 11th.

Course Information

Software engineering admits to different definitions by different people. Most generally, software engineering focuses on the processes and techniques for the design, construction, and maintainence of reliable software systems by teams of developers. In our course we will study some fundamental ideas on how to specify, design, build, test and maintain software and some processed for doing this successfully in small groups of developers. We will learn-by-doing because this is a project course.

Class lectures and outside readings will provide the material for you to use as you build your projects. Some of the material will be in your textbook; some will not. Additional materials will be available on-line and some additional texts will be available in the SERC reading room on reserve to supplement the textbook.

Recitation will be used primarily to introduce you to the IDE we will use, Eclipse (for Java) and other software tools (e.g., CVS, ANT, JUnit) germane to the project. In general, recitation will cover more of the 'nuts-and-bolts' details of the project, whereas lecture will cover the methodologies you should use for the project. Attendance at both recitation and lecture is mandatory and will be recorded. If you cannot attend, then it is your responsibility to makeup all the work and keep informed as to any announcements. Likewise you will need to check the class website and wiki regularly for any announcements.


The textbook for the course concentrates on the tasks of specification, requirements and object-oriented design. The supplemental texts listed here are NOT REQUIRED for the course, but contain a broader set of materials about software engineering. Copies will be available on reserve for student use and some lecture material will be taken from these books.


Grading is difficult in a course where the bulk of the work is a group project. You will receive

You will notice in the project description that all work on the project is identified as to who had responsibility for it. Your goal should be to perform at your best for your group and yourself! More specifics on project grading will be available on the project page.

Policy on academic integrity

Please read the DCS policy on academic integrity to which this course will adhere. This is particularly important for this course, because you are encouraged to reuse software and design ideas, but only if you acknowledge this reuse prominently in your documentation! DCS is serious about enforcing this policy; do not jeopardize your academic career by copying or collaborating beyond permissible limits (note: this covers copying from other teams as well.)

How to contact the teaching staff?

Instructor: Professor Barbara G. Ryder
Office: Core 311
Office hours: Thurs, 3:30-5:30pm, or by appt
Email: ryder at cs.rutgers.edu
(Please put 431 in the subject line for all class emails.)
Phone: 732-445-3699 (email is more reliable)

Teaching Assistant: Scott Selikoff
Office: Hill 416, 732-445-6996
Office hours: Tues 4-5pm or by appointment
Email: selikoff at eden.rutgers.edu

Topics to be covered

These are the major topics we will cover in lecture and recitation. We will revise this list during the semester and reassess the needs of the class with regard to the project.

Useful Links