knowledge-kitchen / courses / course-notes

Agile Software Development & DevOps

New York University

Department of Computer Science

Schedule

Process

Date Class Topics Notes Helpful resources Quiz due Scrum tasks due Exercise due
1/22 1 Welcome - Course intro
- Syllabus
       
1/27 2 Scrum - Discord for Education
- Scrum
- Notes on using GitHub for Scrum
- Manifesto for Agile Software Development, by Beck et al
- Principles behind the Agile Manifesto, by Beck et al
- The Scrum GuideTM, by Ken Schwaber and Jeff Sutherland
Student intake questionnaire   - Complete consent form
- Join Discord
- Create GitHub account
- Install Node.js
1/29 3 Version control - Version control
- Git & GitHub
- GitHub for collaboration
Atlassian git workflow comparison Scrum   Project proposal

The Mobile Web

Date Class Topics Notes Helpful resources Quiz due Scrum tasks due Exercise due
2/3 4 The Web The Web Google’s Markdown Style Guide Git & GitHub   Vote on project proposals
2/5 5 Javascript - Javascript
- Example Javascript code
- Exploring ES6, by Alex Rauschmayer
- Eloquent Javascript, by Marijn Haverbeke
- The Modern Javascript Tutorial, by javascript.info
The Web   - Git/GitHub configuration
- Git/GitHub workflow practice
2/10 6 Javascript          
2/12 7 Full stack mobile web app preview Example full stack app   Javascript    
2/17 n/a no class (Presidents Day)          

Sprint 0 - Rapid prototyping

An informal short sprint focused on completing a clickable prototype of the application.

Date Class Topics Notes Helpful resources Quiz due Scrum tasks due Exercise due
2/19 8 Rapid Prototying - User experience design
- Figma essentials
- Example prototype
How to Wireframe by Figma Marketing     Full-stack app
2/24 9 Project work - Implementing Scrum using GitHub
- Feature branch workflow
  User experience design - Project setup
- Sprint 0 planning
 
2/26 10 Stakeholder demos       Daily standup Parts of Sprint 0:
- app map & wireframes
- prototype

Sprint 1 - Front-end development

A Scrum sprint focused on knocking out the front-end of the application.

Date Class Topics Notes Helpful resources Quiz due Scrum tasks due Exercise due
3/3 11 React.js - React.js
- Example simple React.js app
- Project kickoff
- React.js official site, including tutorials and documentation.
- Video: React Router Tutorial, by Dev Ed.
- Video course: React for Web Designers, by Joe Chellman
Sprint 0 feedback - Stakeholder demo
- Sprint 1 planning
Remaining parts of Sprint 0:
- project setup
- sprint planning
3/5 12 React.js - React.js starter app     Daily standup  
3/10 13 Project work     React.js Daily standup  
3/12 14 Stakeholder demos          

Sprint 2 - Back-end development

A Scrum sprint focused on knocking out the back-end of the application.

Date Class Topics Notes Helpful resources Quiz due Scrum tasks due Exercise due
3/17 15 Express.js - Express.js
- Express.js starter app
- Express.js official site, including tutorials and documentation.
- Video: Build A Restful Api With Node.js Express & MongoDB, by Dev Ed.
- Video course: Dynamic websites with Node and Express, by Daniel Khan
Sprint 1 feedback - Stakeholder demo
- Sprint 2 planning
Completed Sprint 1::
- React.js front-end
3/19 16 Software testing - Software testing
- Unit testing
  Express.js Daily standup  
3/24 n/a no class (NYU Spring Break)          
3/25 n/a no class (NYU Spring Break)          
3/31 17 Project work     Software testing Daily standup  
4/2 18 Stakeholder demos       Daily standup  

Sprint 3 - Database integration

A Scrum sprint focused on integrating databases into the application.

Date Class Topics Notes Helpful resources Quiz due Scrum tasks due Exercise due
4/7 19 Data storage - Data storage
-Example data storage app
- Video course: Databases for Node.js Developers, by Daniel Khan
- Mongoose official site, including tutorials and documentation.
Sprint 2 feedback - Stakeholder demo
- Sprint 3 planning
Completed Sprint 2:
- express.js back-end
4/9 20 Authentication Authentication   Data storage Daily standup  
4/14 21 Project work       Daily standup  
4/16 22 Stakeholder demos       Daily standup  

Sprint 4 - Deployment

A Scrum sprint focused on finishing up and deploying the application.

Date Class Topics Notes Helpful resources Quiz due Scrum tasks due Exercise due
4/21 23 Deployment Deployment Digital Ocean referral link Sprint 3 feedback - Stakeholder demo
- Sprint 4 planning
Completed Sprint 3:
- database integration
4/23 24 Project work          
4/28 25 Project work          

Release

Presenting the finished product to stakeholders and end-users.

Date Class Topics Notes Helpful resources Quiz due Scrum tasks due Exercise due
4/30 26 Project presentations Project presentations   Due after presentations:
- Sprint 4 feedback
- Student outtake questionnaire
  Completed Sprint 4:
- deployment
(No late work accepted beyond this date)
5/5 27 Project presentations