CPSC 329 | Software Development | Fall 2017 |
Reading and class prep exercises are to be done for the class period where they are listed.
Dates for things in light gray are for planning purposes and may be adjusted slightly.
Assignments | |||
---|---|---|---|
Week 1: 8/28-9/1Topics: introduction; good software; the software development process; working in teams |
|||
Mon | Slides: | ||
Tue | lab 1 Preliminaries |
||
Wed | Class Prep: available on Canvas
Slides: |
||
Fri | Class Prep and Reading: available on Canvas
Slides: |
||
Week 2: 9/4-9/8Topics: version control; understanding what the software is to do |
|||
Mon |
Reading:
Slides: |
project 1 Wa-Tor (software) |
|
Tue | lab 2 Introduction to Subversive |
||
Wed |
Slides:
|
||
Fri |
Slides:
|
||
Week 3: 9/11-9/15Topics: understanding what the software is to do; basic program design |
|||
Mon | Slides: | ||
Tue | lab 3 More Subversive |
||
Wed |
Slides:
|
||
Fri |
Slides and Handouts:
|
||
Week 4: 9/18-9/22Topics: program design |
|||
Mon |
Slides and Examples:
|
||
Tue | lab 4 PlantUML |
||
Wed |
Slides and Examples:
|
||
Fri |
Slides and Examples:
|
project 1 Wa-Tor (reflection) |
|
Week 5: 9/25-9/29Topics: program design; basic design principles |
|||
Mon |
Slides and Examples:
|
project 2 Game! (understanding and code design) comments |
|
Tue | lab 5 Papyrus |
||
Wed |
Slides and Examples:
|
||
Fri |
Slides:
|
||
Week 6: 10/2-10/6Topics: UI design |
|||
Mon |
Reading:
Class Prep: available on Canvas Slides:
|
||
Tue | lab 6 Swing |
||
Wed | Slides: | ||
Fri | Slides: | project 2 Game! (UI design) comments |
|
Week 7: 10/9-10/13Topics: implementation strategies and coding practices; verification and validation |
|||
Mon | fall break (no class) |
||
Tue | |||
Wed |
Slides:
|
||
Fri |
Slides:
|
project 2 Game! (software) |
|
Week 8: 10/16-10/20Topics: testing; threads |
|||
Mon | Slides: | ||
Tue | lab 7 JUnit |
||
Wed |
Slides:
|
||
Fri |
Reading:
|
||
Week 9: 10/23-10/27Topics: threads; networking and streams |
|||
Mon |
Slides and Examples:
|
||
Tue | lab 8 Threads |
||
Wed | -- meet in Rosenberg 009 -- | ||
Fri |
Reading:
Slides and Examples:
|
||
Week 10: 10/30-11/3Topics: networking and streams; code review |
|||
Mon | -- meet in Rosenberg 009 -- | ||
Tue | lab 9 Client/Server Networking |
||
Wed |
Slides and Handouts:
|
||
Fri |
Slides:
|
project 2 Game! (reflection) |
|
Week 11: 11/6-11/10Topics: designing client-server programs; designing for flexibility |
|||
Mon |
Slides:
|
project 3 Ultimate Pente |
|
Tue | |||
Wed |
Reading:
Class Prep: available on Canvas Slides:
|
||
Fri |
Reading:
Class Prep: available on Canvas Slides:
|
||
Week 12: 11/13-11/17Topics: designing for flexibility; design patterns |
|||
Mon | Slides: | ||
Tue | lab 10 Encapsulate What Varies |
||
Wed | Slides: | ||
Fri |
Slides:
|
||
Week 13: 11/20-11/24Topics: design patterns |
|||
Mon |
Slides:
|
||
Tue | lab 11 Elements of MVC |
||
Wed | Thanksgiving break (no class) |
||
Fri | |||
Week 14: 11/27-12/1Topics: design patterns; design exercise |
|||
Mon |
Slides:
|
||
Tue | lab 12 Visitor |
||
Wed |
Slides:
|
||
Fri |
Class Prep: available on Canvas
Slides:
|
||
Week 15: 12/4-12/8Topics: design exercise; wrapup |
|||
Mon |
Slides:
|
||
Tue | |||
Wed |
Slides:
|
||
Fri |
Slides:
|
final exam (take home) due Thu 12/14 at 10pm (review information) available under "Assignments" on Canvas |
|
Reading Period: 12/9-12/11 |
|||
Sat | |||
Sun | |||
Mon | |||
Exams: 12/12-12/15 |
|||
Tue | |||
Wed | |||
Thu | Don't forget the last stage of the Ultimate Pente project! | end-of-semester deadline no work accepted after 12/14 10pm |
|
Fri |