The team will work together using the Scrum method of Agile development. We will assign task, that are designed to be small units of work, that will allow each member to incrementally contribute to the devlopment of this Project.
In the case of spikes, the duration of each spike will depend how difficult it is. In the case where a team member finds it difficult to manage spikes and tasks, the team will communicate with that member to find a solution. See Communication for more.
Our team will promote a hostile free work enviroment, where everyone's idea will be heard and understood. In the case of an disagreement on a direction, we will as a team hear all ideas and vote together as a group on how to proceed.
In the case of where a member is failing behind on tasks, we will give an extension of only one day, to that team member to complete any existing and new tasks. If they fail to deliever, we will assign those task to the team member with the least unfinished task. If this failure to deliever continously occur, we as a team will decide on the neccessary actions to take to ensure our goals are met.
Our primary form of communication will occur on discord, which should only be used to discuss essential information pretaining to the project. Members are expected to respond to messages as soon as possible, with a maximum response time of one day.
In the case where a member needs help with a task or have difficulty understanding how to proceed with a task, they should directly communicate their issues with the team, where we will figure out a solution on how to help.
The fundamental goal of every sprint is to ensure all of our desired plans of for each sprint will be fulfilled, also our goal will be to implement every planned feature in the backlog. If there is a case where we were unable to complete every feature and plan, we will push it into the following sprint.
Our Sprint will last 2 weeks long, this will ensure a good pace that will not be too fast paced, as well as not too slow.
Daily Stand Up will take place at least three times a week, if there is a need for more stand ups we will add more sessions throughout the week. Monday, Wednesday, Friday are designated days where we meet for daily standups. Daily standups will only be 10 mins in length. The primary format of daily stand up will be through Zoom, however we will dedicate Friday's to meet in person to work together.
- All members should be present at stand up meeting
- If an event where member is not there, no one should cover material for that member
- If a member fails to make progress on a task for two or more standups they will be reported to managment
Each developer should clone the the github reposistory to their local machine to work on development. For every new task and feature we decide to implement each developer will have to create a branch dedicated to working on their assigned feature to develop. The branch name should be feature/developer_name. After the developer has completed their task they will do a pull request, where another member of the team will review and then merge that pull request into the main branch. If there is an incident where a member reviews a developer's work and notices errors, the developer must fix any problems noted.
IMPORTANT: Before starting every task every member must Git Pull every time before working on new task to have an updated version of repo.
While coding every member must ensure they use self documentating code that is has descriptive variables and function names. This will ensure whoever oversees and merges the member's branch, will understand everything that occurs in the code.
It is important for every member of the team to commit clean and usable code for the project. When a developer pull request their current working branch, the member who will decide whether to merge the pull request into the main branch must act as code editor and make sure every code is in a standardized format. If code is not in appropriate format, the code editor can return it back to the developer to fix.
Happy Coding!