CSE 503 - Software Engineering, Spring 2004

instructor Rob DeLine
email rdeline@cs (please not my Microsoft address)
office hours Wed after 13:00 (note: I'm generally on campus only Mon/Wed)
office CSE 210
teaching assistant Miryung Kim
email miryung@cs
office hours Wed 11:30-12:30ish
office CSE 374
lectures Mon/Wed 10:00-11:20 EE1 003
textbook (none)

Logistics

Every student in the course should be on the course mailing list. If you have questions about the assignments or lectures, you should contact the mailing list before contacting the instructor or TA. That way, other students can see the answer. Of course, you should also feel free to contact the instructor or TA directly, if your question if particular to you or urgent.

Students must hand in a review of every reading before the corresponding lecture. The reviews should follow the review template.

We'll use the E-Submit tool for submitting reading reviews and assignments. All reading reviews are open from now until the lecture on which the reading will be covered, so you can enter a review as soon as the reading assignment is revealed. Each assignment is only open for the two-week window between when it's handed out (on this web site) and when its due. The design review will be discussed at length later in the course.

Tentative Schedule

AREA DATE HOMEWORK TOPIC LINKS
Mon Mar 29   Introduction slides
Requirements Wed Mar 31   Problem frames readings, slides
Formal methods Mon Apr 5   Introduction to Alloy readings, slides
Wed Apr 7 1 out solution Alloy practice readings, slides, spec
Mon Apr 12   Introduction to Promela/Spin readings, slides
Wed Apr 14   Promela/Spin practice readings, slides, spec
Mon Apr 19   Process calculi and Refinement readings, slides
Wed Apr 21 2 out / 1 in Checking refinement with Zing readings, tool review, specs: system, Branch, IBranch
Mon Apr 26   Hoare logic, weakest preconditions 1 readings, slides
Wed Apr 28   Hoare logic, weakest preconditions 2 readings, slides
Mon May 3   JML, ESC/Java, Boogie readings, slides
Design and architecture Wed May 5 Modularity and information hiding readings, slides
Mon May 10 3 out solution Cross cutting concerns, aspects readings, slides
Wed May 12   Software architecture readings, slides, tool review
Mon May 17   Design patterns readings, slides  
Wed May 19 4 out sample solution Implicit invocation readings, slides
Testing Mon May 24   Testing overview readings, slides
Wed May 26   Predicate-based testing readings, slides
Mon May 31   (holiday -- no lecture)  
Wed Jun 2 4 in SE research and validation  

Assignments

Grading

Design jury 25%
Assignment 1 15%
Assignment 2 15%
Assignment 3 15%
Assignment 4 15%
Class participation 10%
Reading reviews 5%