READ, REVIEW, and DISCUSS all the requirements below. If your study group decides to try the process out, feel free to do so. This will be helpful for you when you have to do it as a team.
It is expected that you will ask any questions on Help Tickets and have a good understanding of what is expected for Team Projects.
Team planning is essential to your success as a developer. The following requirements will guide your planning process while at NSS.
TIMEBOX planning to a couple of hours
- 1 team member does the following:
- Create a repo on Github (UNLESS one has been provided for you in class)
- Create a project board using board template
- Create a ticket on the board and convert to an issue adding it to the repo you just created.
- Create a branch
- Start the Codebase Setup (i.e. index.html, styles.css, main.js, etc)
- Push the code to GH
- Make a PR
- Get an approval on the setup from at least 1 teammate
- merge into main branch
After the inital setup, everyone is responsible for:
- Ensuring all team members have access to the repo and the project board
- Ensuring all team members have the repo pulled down on their machines and the setup is running properly
- Updating repo Branch protection rules in settings to require 2 reviewers and apply to admin
- Creating a place for wireframes (i.e. figma board) ensuring all your teammates have access to it (likely via email addresses)
- Talk through the project requirements to ensure every understands the premise of the project
- Talk through the “user flow” of the project taking notes
- Create issue tickets that outline all the pertinent info based on your notes (you can divide an conquer on this, but if you do, your team MUST review all tickets together and all approve of them)
- Categorize tickets into Milestones and create these milestones under
Issues -> Milestones
and add the relevant tickets to the Milestone - Assign tickets to a developer
- Make sure code is properly formatted
- Make sure your code works and is tested before creating a PR
- Pull Requests will contain all of the information included on the PR ticket template. DO NOT APPROVE the PR if your teammate has not completed this
- Do NOT work someone else’s ticket unless you are pairing or working together
- Do NOT rewrite someone else’s code
- Do NOT work ahead of your teammates. It is better to help them so that everyone stays together than to “leave anyone behind”
- Do NOT add scope to a ticket that you have be assigned without team approval
- Have conversations and chat with your teammates to get to know them better
- Trust your teammates. You all belong here and can produce good code!
- DO NOT and I repeat DO NOT move on to another milestone if there are still tickets in your current milestone. Work TOGETHER as a team to get all tickets in the milestone completed, reviewed, and merged.
- Don’t be an asshole! Because they stink...
- Reference the issue you are resolving on the PR
- Removed all console logs and commented out code
- Assign team members to review
- Once it has been approved by 2 teammates, the person who created the PR merges it in.
- Fetched the teammates' branch to run locally on your machine
- Tested the code locally based on the PR instructions
- Looked at the code and ask questions using GH Review
- Approve the PR
NOTE: Once code is merged to main, it is now the source of truth.
Each team member will need to merge main into their own branches to continue to work, so you will want to make sure that your code works with the new changes.
- All members are familiar with all aspects of the code
- You have reviewed how you will present your project to the class. EVERY team member will speak for 1 minute each and then answer class questions based on the feature they built.
- Name of the Project
- Overview of the project
- Link to your wireframes/prototype
- Link to the deployed project
- Link to your project board (yes...even though it is a part of the repo)
- Description of the user
- List of features
- Screenshots of your project
- List of contributors and links to their GH profiles
- Link to Loom video walkthrough of your app (no more than 1 minute long! Make it great)