|
03/31 |
Introduction |
|
|
|
04/01 |
Project proposal work |
|
|
|
04/02 |
The Joel Test |
|
|
Project proposal (due 04/08)
|
04/03 |
Project proposal work |
|
|
|
04/04 |
Software development life cycle |
|
|
|
|
04/07 |
Teams and Scrum |
|
|
|
04/08 |
Project proposal work |
|
|
|
04/09 |
Proposal pitches |
|
|
Team setup (due 04/15)
|
04/10 |
Proposal pitches |
|
|
|
04/11 |
Proposal pitches |
|
|
Project preferences (due 04/11 2pm)
|
|
04/14 |
Requirements |
|
|
|
04/15 |
Team meeting |
|
|
|
04/16 |
Requirements |
|
|
Requirements (due 04/22)
|
04/17 |
Project meeting |
|
|
|
04/18 |
Data modelling |
|
|
|
|
04/21 |
Architecture |
|
|
|
04/22 |
Team meeting |
|
|
|
04/23 |
Design |
|
|
Architecture & Design (due 04/29)
|
04/24 |
Project meeting |
|
|
|
04/25 |
Version control and Git |
|
|
|
|
04/28 |
Build systems |
|
|
|
04/29 |
Team meeting |
|
|
|
04/30 |
Testing and CI |
|
|
Testing & CI (due 05/06)
|
05/01 |
Project meeting |
|
|
|
05/02 |
In-class exercise (Git) |
|
|
|
|
05/05 |
Coverage-based testing |
|
|
|
05/06 |
Team meeting |
|
|
|
05/07 |
Mutation-based testing |
|
|
Beta Release (due 05/13)
|
05/08 |
Project meeting |
|
|
|
05/09 |
In-class exercise (Code defenders) |
|
|
|
|
05/12 |
Hack day |
|
|
|
05/13 |
Team meeting |
|
|
|
05/14 |
Code review |
|
|
Refinement (due 05/20)
|
05/15 |
Project meeting |
|
|
|
05/16 |
In-class exercise (Testing) |
|
|
|
|
05/19 |
Program analysis |
|
|
|
05/20 |
Team meeting |
|
|
|
05/21 |
Debugging |
|
|
Peer Review (due 05/27)
|
05/22 |
Project meeting |
|
|
|
05/23 |
In-class exercise (Debugging) |
|
|
|
|
05/26 |
No class (holiday) |
|
|
|
05/27 |
Team meeting |
|
|
|
05/28 |
Fault localization |
|
|
Final Release (due 06/03)
|
05/29 |
Project meeting |
|
|
|
05/30 |
In-class exercise (Fault localization) |
|
|
|
|
06/02 |
Hack day |
|
|
|
06/03 |
Team meeting |
|
|
|
06/04 |
Advanced program analysis |
|
|
Individual reflection (due 06/10)
|
06/05 |
Project meeting |
|
|
|
06/06 |
Optional in-class exercise |
|
|
|