Software Engineering

Tentative Syllabus

Week Lecture Date Topic Reading Lectures Homework
1 1 1/22 Overview SE: ch. 1-3, Crisis ps pdf ps(4up) pdf(4up) hw1: ps pdf
Some previous proposals
2 1/24 Software Processes SE: 4, 19, 28 ps pdf ps(4up) pdf(4up) hw1 due
2 3 1/29 Software Processes: RUP and XP SE: 17 ps pdf ps(4up) pdf(4up) hw2 (due 1/31)
4 1/31 Requirements I SE: 6-7 ps pdf ps(4up) pdf(4up) hw3:ps pdf
Sample requirements document
3 5 2/5 Requirements II SE: 8 ppt ps pdf ps(4up) pdf(4up)  
6 2/7 Design Overview CC2: 5 ps pdf ps(4up) pdf(4up)  
4 7 2/12 Testing Overview SE: 23 ppt ps pdf ps(4up) pdf(4up) hw3 due
hw4: ps pdf
Sample design document
8 2/14 Group Presentations: Requirements        
5 9 2/19 Design Patterns Gamma ppt ps pdf ps(4up) pdf(4up)  
10 2/21 The Unix/C++ Development Platform (in 512 WWH)   html   hw4 due
hw5: ps pdf
6 11 2/26 Group Presentations: Design      
12 2/28 Version Control SE: 29, CVS ppt ps pdf ps(4up) pdf(4up)
Using CVS Remotely: ps pdf
 
7 13 3/4 Development Tools   ps pdf ps(4up) pdf(4up)
mysql README
cgicc README
hw5 due
hw6: ps pdf
14 3/6 Effective C++ I EC++ ps pdf ps(4up) pdf(4up)  
8 15 3/11 Effective C++ II EC++ ps pdf ps(4up) pdf(4up)  
16 3/13 Midterm      
Spring Break
9 17 3/25 Effective C++ III EC++ ps pdf ps(4up) pdf(4up) hw6 due
hw7: ps pdf
18 3/27 Debugging Tools I GDB GDB reference card ps pdf ps(4up) pdf(4up)  
10 19 4/1 Memory Management and Debugging   ppt ps pdf ps(4up) pdf(4up) hw7 due
hw8: ps pdf
20 4/3 Lab Work (in 512 WWH)      
11 21 4/8 Code Optimization I CC2: 25 ps pdf ps(4up) pdf(4up)  
22 4/10 Code Optimization II CC2: 26 ps pdf ps(4up) pdf(4up) hw8 due
hw9: ps pdf
12 23 4/15 Intro to Formal Methods   ppt ps pdf ps(4up) pdf(4up)  
24 4/17 No class       hw9 due
hw10: ps pdf
13 25 4/22 Group Presentations: Testing        
26 4/24 Static Analysis        
14 27 4/29 TBA       hw10 due
Final Assignment: ps pdf
28 5/1 Group Presentations: Final Project Presentations        
15   5/7Spring Showcase      
  5/10Final Assignment Due