CPSC 329 | Software Development | Fall 2013 |
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/26-8/30Topics: introduction; understanding what the software needs to do (features, requirements) |
||||
Mon | Notes: course introduction | homework #0 homework #1 due Wed 8/28 |
||
Tue | lab #1 Introduction to Eclipse due Tue Sep 3 |
|||
Wed | Notes: good software, development process overview, understanding phase - requirements | homework #2 due Fri 8/30 |
||
Fri | Notes: more about requirements | homework #3 due Mon 9/2 |
||
Week 2: 9/2-9/6Topics: understanding (requirements, scenarios, use case diagrams, use cases) |
||||
Mon | Notes: version control and SVN | |||
Tue | lab #2 Subversion due Tue Sep 10 |
|||
Wed | Notes: | homework #4 due Fri 9/6 |
||
Fri |
Notes:
|
homework #5 due Mon 9/9 |
||
Week 3: 9/9-9/13Topics: understanding (use cases) and program structure (CRC cards, sequence diagrams) |
||||
Mon | Notes and examples: | |||
Tue | lab #3 Subversion II due Tue Sep 17 |
|||
Wed | Notes: | homework #6 due Fri 9/13 |
||
Fri |
Notes:
|
homework #7 due Wed 9/18 |
||
Week 4: 9/16-9/20Topics: program structure (sequence diagrams, class diagrams) and design (OO principles) |
||||
Mon | Notes: | |||
Tue | lab #4 Implementation due Tue Sep 24 |
|||
Wed |
Notes:
|
homework #8 due Fri 9/20 |
||
Fri | Notes: | |||
Week 5: 9/23-9/27Topics: understanding/structure wrapup, design principles/patterns, GUIs/Swing |
||||
Mon | Notes: | |||
Tue | lab #5 Parsing GPX due Tue Oct 1 |
|||
Wed |
Notes:
|
homework #9 due Fri 9/27 |
||
Fri |
Notes:
|
|||
Week 6: 9/30-10/4Topics: GUIs, UI design |
||||
Mon |
Notes:
|
homework #10 due Wed 10/2 |
||
Tue | lab #6 Swing and MVC due Tue Oct 8 |
|||
Wed |
Notes:
Reading: |
|||
Fri | Notes: | homework #11 due Wed 10/9 |
||
Week 7: 10/7-10/11Topics: technologies, implementation strategies |
||||
Mon |
Notes:
Reading: |
|||
Tue | lab #7 More Swing due Fri Oct 18 |
|||
Wed | Notes: | |||
Fri | Notes: | |||
Week 8: 10/14-10/18Topics: testing |
||||
Mon | fall break (no class) |
|||
Tue | ||||
Wed | Notes: | project #1 GPXCleaner implementation due Mon Nov 4 |
||
Fri | Notes: | |||
Week 9: 10/21-10/25Topics: testing, code reviews |
||||
Mon | Notes: | |||
Tue | lab #8 JUnit due Tue Oct 29 |
|||
Wed | Notes: | |||
Fri | Notes: | |||
Week 10: 10/28-11/1Topics: threads and networking |
||||
Mon |
Notes:
Examples:
|
|||
Tue | lab #9 Threads due Tue Nov 5 |
|||
Wed |
Notes:
Examples: |
|||
Fri |
Notes:
Examples: |
|||
Week 11: 11/4-11/8Topics: networking; understanding and design for networked programs |
||||
Mon | Examples: | |||
Tue | lab #10 Networking due Tue Nov 12 |
|||
Wed |
Notes:
Examples: |
project #2 Ultimate Pente understanding due Mon Nov 11 |
||
Fri |
Notes:
Examples:
|
|||
Week 12: 11/11-11/15Topics: advanced object-oriented design principles |
||||
Mon |
Notes:
|
project #2 Ultimate Pente design due Mon Nov 18 |
||
Tue | lab #11 Encapsulating What Varies, and Taking Turns due Tue Nov 19 |
|||
Wed |
Notes:
|
|||
Fri |
Notes:
|
|||
Week 13: 11/18-11/22Topics: advanced object-oriented design principles |
||||
Mon |
Notes:
|
project #2 Ultimate Pente implementation due Tue Dec 10 |
||
Tue | work on project | |||
Wed |
Notes:
|
|||
Fri |
Notes:
|
homework #12 due Wed 12/4 |
||
Week 14: 11/25-11/29Topics: project |
||||
Mon | work on project | |||
Tue | work on project | |||
Wed | Thanksgiving break (no class) |
|||
Fri | ||||
Week 15: 12/2-12/6Topics: project, wrapup |
||||
Mon | work on project | |||
Tue | work on project | |||
Wed | work on project | |||
Fri |
Notes:
|
|||
Reading Period and Exams: 12/7-12/13 |
||||
Sat | ||||
Sun | ||||
Mon | ||||
Tue |
final exam
Tue 12/10 1:30-4:30pm
|
end-of-semester deadline no work accepted after 12/10 4:30pm |
||
Wed | ||||
Thu | ||||
Fri |