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/23 1 Welcome - Course intro
- Syllabus
       
1/25 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
- Video: Scrum
Student intake questionnaire   - Complete consent form
- Join Discord
- Create GitHub account
- Install Node.js
1/30 3 Version control - Version control
- Git & GitHub
- Feature branch workflow
- GitHub for collaboration
- Video: Version control
- Atlassian git workflow comparison
Scrum   Project proposal

The Mobile Web

Date Class Topics Notes Helpful resources Quiz due Scrum tasks due Exercise due
2/1 4 The Web The Web   Git & GitHub   Vote on project proposals
2/6 5 Javascript - Javascript
- Example Javascript code
- Video: Javascript
- Exploring ES6, by Alex Rauschmayer
- Eloquent Javascript, by Marijn Haverbeke
- The Modern Javascript Tutorial, by javascript.info
The Web   Git practice
2/8 6 Javascript          
2/13 7 Full stack mobile web app preview Example full stack app   Javascript    

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/15 8 Rapid Prototying - User experience design
- Figma essentials
- Example prototype
    Sprint 0 planning Full-stack app
2/20 9 Project work     User experience design Daily standup  
2/22 10 Stakeholder demos: Prototypes       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
2/27 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
2/29 12 React.js - React.js starter app     Daily standup  
3/5 13 Project work     React.js Daily standup  
3/7 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/12 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/14 16 Software testing - Software testing
- Unit testing
  Express.js Daily standup  
3/26 17 Project work     Software testing Daily standup  
3/28 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/2 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/4 20 Authentication Authentication   Data storage Daily standup  
4/9 21 Project work     Software testing Daily standup  
4/11 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/16 23 Deployment Deployment Digital Ocean referral link Sprint 3 feedback - Stakeholder demo
- Sprint 4 planning
Completed Sprint 3:
- database integration
4/18 24 Project work          
4/23 n/a no class (Prof. out)          
4/25 25 Project work          

Release

Presenting the finished product to stakhoelders and end-users.

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