| Session |
Date |
Topic |
Reading |
Notes |
Code |
Assignment |
| 1 |
08/25 |
introduction to SE |
. |
notes |
. |
. |
| 2 |
08/27 |
SW characteristics, lifecycle |
. |
notes |
. |
HW 01 |
| --3-- |
09/01 |
no silver bullet |
Brooks |
notes |
. |
. |
| --4-- |
09/03 |
deeper into the lifecycle |
SVN:
what is it?
and
quick start |
notes |
data |
. |
| 5 |
09/08 |
structured analysis |
resource
links |
notes |
. |
. |
| 6 |
09/10 |
structured analysis |
DFD resource
links |
notes |
. |
HW 02 |
| --7-- |
09/15 |
analysis and specification |
handout and
project set-up |
notes |
. |
. |
| --8-- |
09/17 |
intro to agile methods |
specs:
why write one
and
how |
notes |
. |
. |
| 9 |
09/22 |
agile development |
no spec?
| agile
manifesto,
description |
notes |
data |
. |
| 10 |
09/24 |
introduction to design |
. |
notes |
. |
PR 01 |
| --11-- |
09/29 |
software architecture |
software architecture
and
Tell, Don't Ask |
notes |
. |
. |
| --12-- |
10/01 |
design: patterns etc. |
handout on MVC |
notes |
. |
. |
| 13 |
10/06 |
software patterns |
handout: design patterns case study |
notes |
data
|
index |
. |
| 14 |
10/08 |
software architecture, SVN demo |
GoF book
and
Who Needs an Architect? |
notes |
. |
PR 02 |
| --15-- |
10/13 |
SVN, design heuristics |
Source Control HOWTO,
Chapters 0-4 |
notes |
. |
. |
| --16-- |
10/15 |
UML, design case study |
UML tutorial |
off |
. |
. |
| 17 |
10/20 |
design notation |
OO design heuristics |
notes |
. |
. |
| 18 |
10/22 |
design principles and heuristics |
Riel's list of OO design heuristics |
notes |
. |
. |
| --19-- |
10/27 |
design case study |
none |
n/a |
. |
. |
| --20-- |
10/29 |
OO design principles |
none |
notes |
. |
. |
| 21 |
11/03 |
design review |
none |
n/a |
. |
PR 03 |
| 22 |
11/05 |
midterm exam |
design and debt
| exam |
. |
. |
| --23-- |
11/10 |
refactoring |
wikipedia page,
web site,
and
case study |
off |
. |
. |
| --24-- |
11/12 |
refactoring |
finish the
case study |
notes |
code |
. |
| 25 |
11/17 |
refactoring |
Extract Method,
Move Method
|
notes |
code |
PR 04 |
| 26 |
11/19 |
empirical software engineering |
Introduce State Pattern: [
1 |
2 |
3 ]
|
notes |
code |
. |
| --27-- |
12/01 |
testing |
handout |
notes |
. |
. |
| --28-- |
12/03 |
testing |
Bach on exploratory testing |
notes |
code |
HW 03 |
| 29 |
12/08 |
other key issues |
none |
notes |
code |
PR 05 |
| 30 |
12/10 |
course wrap-up |
articles by
Glass
and
DeMarco |
notes |
code |
paper |
| -- F -- |
12/17 |
. |
3:00-4:50 PM |
exam |
. |
. |