CSE503: Software Engineering
EE1 025: TR 10:30-11:50

Last updated: Thursday, May 25, 2006

Instructor

  • David Notkin

  • Office: Allen 542

  • Office hours: W 1:00-2:00 or by appointment

Teaching Assistant

  • Andrew Petersen

  • Office: Allen 382

  • Office hours: W 9:30-10:30 in Allen 218

News and Information

Tentative schedule

Tuesday Thursday
Week 1: March 27-31 Introduction and Proofs of Correctness
Questionnaire
Homework 1 is available.

Optional Readings:
Proofs of Correctness (continued)

Reading:
Week 2: April 3-7 Requirements and Specifications

Homework 1 is due at the start of class (10:30 a.m.).

In case you missed it, Jackson's lecture begins at roughly 1:24:30 in the video linked on this page.
The slides for this week.
Requirements and Specifications (continued)
Homework 2 is available.

Reading:
Week 3: April 10-14 Statechart Specifications and Intro to Model Checking
Slides for today.
Design (complexity and composition)
Slides for today and next week.

Send us the subject of your term paper or project by Saturday, 4/15.

Reading:
Week 4: April 17-21 Design (information hiding)

Homework 2 is due at the start of class (10:30 a.m.).
Design (layering and event-based systems)

Reading:
Week 5: April 24-28 Software Architecture and Design Patterns
Homework 3 is available.

Reading:
Designing for Safety and Reliability
Slides for today.
Week 6: May 1-5 Testing

In case you're interested, here are the EWD Manuscripts mentioned in class.
Test Selection and Fault Isolation
Slides for today.

As mentioned in class, here is Andreas Zeller's Delta Debugging site (AskIgor).
Week 7: May 8-12 Analysis
Slides for today.
Homework 3 is due at the start of class (10:30 a.m.).

Reading:
Analysis
References for today:
Liblit et al: RAMSS 2004 PLDI 2003 PLDI 2005
Jackson: RE 2005 MSR Talk

Term paper or tool evaluation due at the beginning of class. If you're doing a project, please send us a status report (1-2 paragraphs).

Week 8: May 15-19 Crosscutting Concerns (Miryung Kim)
Slides for today.
Class held in CSE 403 today.

Mining Software Repositories (Miryung Kim)
Class held in CSE 403 today.

Week 9: May 22-26 Software Evolution
Slides for this week.
Software Evolution
Week 10: May 29-June 2 Software Engineering Professionalization Class Presentations
Final Exam Period: 10:30 a.m., June 5 Term papers, tool evaluations, and course projects due at 10:30 a.m.

Homeworks [40% of course grade]

Course project

60% of the course grade will come from a project. You may choose to do a term paper and tool evaluation (A and B) or a more extensive project (C). The term paper and project must be done alone; the tool evaluation may be done in a group of three students or less.
  1. A 10-15 page term paper on a one of the subjects found below (or by negotiation with the instructor and TA) [30%]
  2. A tool evaluation [30%]
  3. An extensive project with a significant implementation component [60%]