Notes: (1) Future entries are tentative and subject to change. Please check back often. (2) Slides (here) and recordings (in Panopto) will be posted after class. Recordings are not always available depending on the class material and recording technology. (3) Weekly project-team status reports (due Weds by 11:59pm) are not listed on the calendar.


Date Topic and Slides Materials Assignments
Week 1
01/05/2026 Course overview [Slides] Read: Course project Project proposal (due Mon 01/12/26 11:59pm)
01/06/2026 Proposal group formation and working time [Slide] Signup your proposal group (due today 11:59pm)
01/07/2026 Software development lifecycles (SDLs) [Slides] Read: Traditional SDLs and Agile ("Philosophy" section)
Read: Agile Alliance: What is Agile - include the linked pages describing the Agile Manifesto , 12 Principles , Pair Programming and Test Driven Development
01/08/2026 Project proposal working time
01/09/2026 SDLs, scrum and teams Read: Learn Scrum (and github support)
Week 2
01/12/2026 Requirements and use cases Read: Eliciting requirements (p 83-91, rest optional)
Read:Use cases-1 and Use cases-2
Read: User scenarios
01/13/2026 Project pitches - set 1
01/14/2026 Project pitches - set 2
01/15/2026 Project pitches - set 3 Register your project preferences (due today 11:59pm)
01/16/2026 Version control and git Reference: Git and Github git cheat sheet
Read: Feature branches
Be available on Ed for preference questions (if asked, answers due today 11:59pm)
Week 3
01/19/2026 No class - Martin Luther King day
01/20/2026 Projects announced and team meetings start Project teams (in Canvas)
01/21/2026 In-class activity: requirements and specifications (due during class) Requirements and development plan (due Tues 01/27/26 by 11:59pm)
01/22/2026 Project meetings
01/23/2026 In-class exercise: git pull requests Read: Git pull requests git in-class exercise (due today by 11:59pm)
Week 4Project status reports start (due Weds by 11:59pm)
01/26/2026 Architecture Read: 10 Common Software Architecture Patterns
Optional: 5 Essential Software Architecture Patterns
01/27/2026 Team meetings
01/28/2026 Design and data modelling Read: Introduction to Design Principles
Read (intro and categories), reference (specific patterns): Design Patterns for Humans
Read: ER Modelling
Architecture and design (due Tues 02/03/26 by 11:59pm)
01/29/2026 Project meetings
01/30/2026 In-class exercise: code reviews Read: How to do code reviews like a human
Reference: Google code review guide
Code reviews in-class exercise (due today by 11:59pm)
Week 5
02/02/2026 Continuous build, integration, deployment Read: Amazon: What is devops
Read: Microsoft: What is devops
Read: Understanding GitHub Actions
02/03/2026 Team meetings
02/04/2026 Software testing Read: Software Testing Basics Testing and continuous integration (due Tues 02/11/26 by 11:59pm)
02/05/2026 Project meetings
02/06/2026 In-class exercise: git-bisect Read: Debugging with git-bisect git-bisect in-class exercise (due today by 11:59pm)
Week 6
02/09/2026 Software testing part 2 Read: Code Coverage at Google
02/10/2026 Team meetings
02/11/2026 Industry guest speaker - coming soon Talk will not be recorded Individually submit your guest speaker learning (due today by 11:59pm)
Beta release (due Tues 02/17/26 by 11:59pm)
02/12/2026 Project meetings
02/13/2026 In-class exercise: code coverage Code coverage in-class exercise (due today by 11:59pm)
Week 7
02/16/2026 No class - Presidents day
02/17/2026 Team meetings
02/18/2026 Beta release presentations - group 1 Individually submit your beta presentations learning (due Fri 2/20 11:59pm (after all demos))
Gamma release (due Tues 02/24/26 by 11:59pm)
02/19/2026 Beta release presentations - group 2
02/20/2026 Beta release presentations - group 3
Week 8
02/23/2026 Intellectual property
02/24/2026 Team meetings
02/25/2026 Debugging Peer project review (due Tues 03/03/26 by 11:59pm)
02/26/2026 Project meetings
02/27/2026 Exam (in-class)
This exam is closed book. You may refer to one page of handwritten notes (one side of an 8.5x11 paper).
Reference: Old Exams
Week 9
03/02/2026 Industry guest speaker - Nathan Sjoquist, Microsoft Talk will not be recorded Individually submit your guest speaker learning (due today by 11:59pm)
03/03/2026 Team meetings
03/04/2026 In-class activity: UI/UX design jeopardy (due during class) Final release (due Tues 03/10/26 by 11:59pm)
03/05/2026 Project meetings
03/06/2026 In-class exercise: AI coding AI coding in-class exercise (due today by 11:59pm)
Week 10
03/09/2026 Drive to final release (use class-time for team meetings)
03/10/2026 Team meetings
03/11/2026 Final release demos - set 1 Individual reflection (due Mon 03/16/26 by 11:59pm)
03/12/2026 Final release demos - set 2
03/13/2026 Final release demos - set 3
Finals Week
03/16/2026 No classes: finals week Individual reflection due today, Monday, 11:59pm