| CPSC 329 | Software Development | Fall 2012 | 
Reading, when assigned, is to be done for the class period where it is listed.
Dates for things in light gray are tentative and may shift slightly.
| Assignments | ||||
|---|---|---|---|---|
Week 1: 8/27-8/31Topics: introduction; understanding what the software needs to do (features, requirements, use cases)  | 
||||
| Mon | homework #0 homework #1 due Wed 8/29 at the start of class  | 
|||
| Wed | Notes: | homework #2 due Fri 8/31 at the start of class  | 
||
| Thu | lab #1 Introduction to Eclipse due Thu 9/6 at the start of lab  | 
|||
| Fri | 
Reading: (does not need to be read before class)
 Notes:  | 
homework #3 due Mon 9/3 at the start of class  | 
||
Week 2: 9/3-9/7Topics: understanding what the software needs to do (features, requirements, use cases); identifying classes and methods  | 
||||
| Mon | Notes: | homework #4 due Fri 9/7 at the start of class  | 
||
| Wed | Notes: | |||
| Thu | team project prep (in lab) | |||
| Fri | Notes: | homework #5 due Mon 9/10 at the start of class  | 
project phase #1 due Mon 9/17 at the start of class  | 
|
Week 3: 9/10-9/14Topics: identifying classes and methods; sequence diagrams and class diagrams; basic design principles  | 
||||
| Mon | Notes: | homework #6 due Wed 9/12 at the start of class  | 
||
| Wed | Notes: | homework #7 due Mon 9/17 at the start of class  | 
||
| Thu | lab #2 Subversion due Thu 9/20 at the start of lab  | 
|||
| Fri | 
Notes:
  | 
|||
Week 4: 9/17-9/21Topics: basic design principles  | 
||||
| Mon | 
Notes:
  | 
|||
| Wed | Notes: | homework #8 due Fri 9/21 at the start of class  | 
||
| Thu | lab #3 Subversion II due Thu 9/27 at the start of lab  | 
|||
| Fri | 
Notes:
  | 
homework #9 due Mon 9/24 at the start of class  | 
||
Week 5: 9/24-9/28Topics: basic design principles; implementation  | 
||||
| Mon | Notes: | homework #10 due Wed 9/26 at the start of class  | 
project phase #2 due Fri 10/5 at the start of class  | 
|
| Wed | Notes: | |||
| Thu | lab #4 Wa-Tor Implementation due Thu 10/4 at the start of lab  | 
|||
| Fri | Notes: | |||
Week 6: 10/1-10/5Topics: implementation and testing  | 
||||
| Mon | Notes: | |||
| Wed | 
Notes:
  | 
|||
| Thu | lab #5 JUnit due Thu 10/11 at the start of lab  | 
|||
| Fri | 
Notes:
  | 
|||
Week 7: 10/8-10/12Topics: Swing, event-driven programming, and MVC  | 
||||
| Mon | fall break (no class)  | |||
| Wed | 
Notes:
  | 
|||
| Thu | lab #6 Swing and MVC due Thu 10/18 at the start of lab  | 
|||
| Fri | Notes: | project phase #3 due Mon 10/29 at the start of class  | 
||
Week 8: 10/15-10/19Topics: code review; basics of HCI and UI design  | 
||||
| Mon | Notes: | |||
| Wed | ||||
| Thu | lab #7 Code Review I due Thu 10/25 at the start of lab  | 
|||
| Fri | 
Reading: User Interface Design for Programmers
 Notes:  | 
|||
Week 9: 10/22-10/26Topics: GUIs, threads  | 
||||
| Mon | Notes: | |||
| Wed | Note: class will meet in the Lansing 310 lab today | |||
| Thu | lab #8 More Swing due Thu 11/1 at the start of lab  | 
|||
| Fri | 
Reading:
 Notes: Examples: 
  | 
|||
Week 10: 10/29-11/2Topics: threads and networking  | 
||||
| Mon | 
Reading:
 Notes: 
 Examples: 
  | 
project phase #4 due Mon 11/12 at the start of class  | 
||
| Wed | 
Reading:
 Notes: Examples: 
  | 
|||
| Thu | lab #9 Threads due Thu 11/8 at the start of lab  | 
|||
| Fri | 
Notes:
 Examples: 
  | 
|||
Week 11: 11/5-11/9Topics: networking and threads; more advanced design principles  | 
||||
| Mon | 
Examples:
  | 
|||
| Wed | 
Notes:
  | 
|||
| Thu | lab #10 Networking due Thu 11/15 at the start of lab  | 
|||
| Fri | 
Notes:
  | 
|||
Week 12: 11/12-11/16Topics: more advanced design principles  | 
||||
| Mon | 
Notes:
  | 
project 2 phase #1 due Fri 11/16 at the start of class  | 
||
| Wed | 
Notes:
  | 
|||
| Thu | lab #11 Encapsulating What Varies, and Taking Turns due Thu 11/29 at the start of lab  | 
|||
| Fri | 
Note: class will meet in the Gulick 208 lab today
 Notes: 
  | 
project 2 phase #2 due Tue 11/20 / Wed 11/28 at the start of class  | 
||
Week 13: 11/19-11/23Topics: more advanced design principles  | 
||||
| Mon | 
Notes:
  | 
|||
| Wed | Thanksgiving break (no class)  | 
|||
| Thu | ||||
| Fri | ||||
Week 14: 11/26-11/30Topics: code review; design patterns  | 
||||
| Mon | Notes: | |||
| Wed | Notes: | project 2 phase #3 due Thu 12/13 at 8:30am  | 
||
| Thu | lab #12 Code Review II due Thu 12/6 at the start of lab  | 
|||
| Fri | Notes: | |||
Week 15: 12/3-12/7Topics: project 2  | 
||||
| Mon | 
Note: class will meet in the Lansing 310 lab today
 Notes:  | 
|||
| Wed | Note: class will meet in the Lansing 310 lab today | |||
| Thu | Notes: | |||
| Fri | Note: class will meet in the Gulick 208 lab today | |||
Exams: 12/11-12/14 | 
||||
| Tue | ||||
| Wed | ||||
| Thu | final exam Thu 12/13 8:30-11:30am review information  | 
end-of-semester deadline no work accepted after 12/13 11:30am  | 
||
| Fri | ||||
| 
     |