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 |
|---|---|---|---|---|---|---|---|
| 9/2 | 1 | Welcome | Lecture slides: - Course intro Notes: - Course intro - Syllabus - Discord for Education - Zoom etiquette |
- Manifesto for Agile Software Development, by Beck et al - Principles behind the Agile Manifesto, by Beck et al - Agile and the Long Crisis of Software, by Miriam Posner |
|||
| 9/7 | n/a | no class (University Holiday) | |||||
| 9/9 | 2 | Scrum | Lecture slides:: - Scrum Notes: - Scrum - Using GitHub for Scrum |
- The Scrum GuideTM, by Ken Schwaber and Jeff Sutherland | - FERPA consent form - Intake questionnaire |
- Join Discord and create your private channel - Create GitHub account - Join Figma - Install Node.js |
|
| 9/14 | 3 | Version control | Lecture slides:: - Version control Notes: - Version control - Git & GitHub - The Elements of Technical Writing Style - GitHub for collaboration |
Video tutorials: - How to submit an assignment to GitHub |
Scrum | Project proposal |
The Mobile Web
| Date | Class | Topics | Notes | Helpful resources | Quiz due | Scrum tasks due | Exercise due |
|---|---|---|---|---|---|---|---|
| 9/16 | 4 | The Web | Lecture slides: - The Web Notes: - The Web |
- Google’s Markdown Style Guide - Atlassian git workflow comparison |
Git & GitHub | Vote on project proposals | |
| 9/21 | n/a | no class (Professor out) | |||||
| 9/23 | 5 | Javascript | Lecture slides: - Javascript Notes: - Javascript Examples: - 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 |
|
| 9/28 | 6 | Javascript | |||||
| 9/30 | 7 | Full stack mobile web app preview | Examples: - 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 |
|---|---|---|---|---|---|---|---|
| 10/5 | 8 | Project Kick-Off | |||||
| 10/7 | 9 | Rapid Prototying | Notes: - User experience design - Figma essentials Examples: - Example prototype |
How to Wireframe by Figma Marketing | - Full-stack app | ||
| 10/12 | n/a | no class (University Holiday) | |||||
| 10/14 | 10 | Project work | Notes: - Project work day plan - Coding conventions - Implementing Scrum using GitHub - Feature branch workflow |
User experience design | - Project setup - Sprint 0 planning |
||
| 10/19 | 11 | Stakeholder demos | Notes: - Stakeholder demos |
Daily standup | Parts of Sprint 0: - app map & wireframes - prototype |
||
| 10/21 | n/a | no class (Professor out) |
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 |
|---|---|---|---|---|---|---|---|
| 10/26 | 12 | React.js | Notes: - React.js - Project kickoff Examples: - Example simple React.js app |
- 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 |
| 10/28 | 13 | React.js | Examples: - React.js starter app |
Daily standup | |||
| 11/2 | 14 | Project work | Notes: - Project work day plan |
React.js | Daily standup | ||
| 11/4 | 15 | Stakeholder demos | Notes: - 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 |
|---|---|---|---|---|---|---|---|
| 11/9 | 16 | Express.js | Notes: - Express.js Examples: - 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 |
| 11/11 | 17 | Software testing | Notes: - Software testing - Unit testing |
Express.js | Daily standup | ||
| 11/16 | 18 | Project work | Notes: - Project work day plan |
Software testing | Daily standup | ||
| 11/18 | n/a | no class (Professor out) | |||||
| 11/23 | 19 | Stakeholder demos | Notes: - 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 |
|---|---|---|---|---|---|---|---|
| 11/25 | 20 | Data storage | Notes: - Data storage Examples: - 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 |
| 11/30 | 21 | Authentication | Notes: - Authentication |
Data storage | Daily standup | ||
| 12/2 | 22 | Project work | Notes: - Project work day plan |
Daily standup | |||
| 12/7 | 23 | Stakeholder demos | Notes: - 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 |
|---|---|---|---|---|---|---|---|
| 12/9 | 24 | Deployment | Notes: - Deployment |
Digital Ocean referral link | Sprint 3 feedback | - Stakeholder demo - Sprint 4 planning |
Completed Sprint 3: - database integration |
| 12/14 | 25 | Project work | Notes: - Project work day plan |
Release
Presenting the finished product to stakeholders and end-users.
| Date | Class | Topics | Notes | Helpful resources | Quiz due | Scrum tasks due | Exercise due |
|---|---|---|---|---|---|---|---|
| TBD | 26 | Project presentations | Notes: -Project presentations |
Due after all presentations: - Sprint 4 feedback - Student outtake questionnaire (submit once all presentations are complete) |
Completed Sprint 4: - deployment (No late work accepted beyond this date) |