This is the project charter for the Northwest Gaming Application. This Application will be developed as a Progressive Web application.
This is a mobile gaming application which enables the players(users of this game) to complete a quest which is finding out specific set of location based on the clues provided. This is a fun game aimed at involving the students at Northwest Missouri State University to make their respective teams and participate in the competition to score maximum points based on the level of the difficulty. As we all know due to the ongoing pandemic it is really difficult to get together a group of people but this game will provide the paltform to get along and meeting new people while still maintaining the social distancing. This also helps the students in improving the mental and physical fitness as the clues will be tricky a person has to walk/jog/run(depends on the interest of the person) to these locations.
Name of the team member | Roles | Contact Information |
---|---|---|
Vikas Baswapuram | Database Engineer | s538336@nwmissouri.edu |
Rohith Reddy Avisakula | Team Leader | s538294@nwmissouri.edu |
Rajashekar Gande | Full Stack Developer | s538099@nwmissouri.edu |
Sumanth Reddy Naidu | Back end Developer | s538359@nwmissouri.edu |
Sumana Reddy Reddybathula | Project Manager | s538360@nwmissouri.edu |
pooja gundu | UI Developer | s538295@nwmissouri.edu |
- Dr. Denise Case
- Assistant Professor,Northwest Missouri State University
- 44-691 Graduate Directed Project
- Fall 2020
- Dr. Charles Hoot
- Assistant Professor,School of Computer Science and Information Systems
- Any person with the valid email id can register for the game. They can also save a nickname of their choice for their userid.
- The user can create a team or send an invite to join a team. The user can also accept or reject the invites they might get from the teams to join them.
- If the user creates a team then that user serves as the captain for that team and can send invites to other players to join the team he/she created.
- The hunt master will be only one person and he/she will also to register i.e the hunt master is also a user but will be given previlages to access the create quest page.
- This is done by making sure we identify the hunt master prior to the realease of the game and store that person's id as the huntmaster which will enable them to access the create quest page.
- A quest will have set of location coordinates. The first location coordinates will be displayed to the user if they crack the clue given to them initially. Once that person reaches the location after unlocking the coordinates he will get next clue for the next location.
- This goes on till all the locations have been identified and claimed.
- The series of quests/quest created are grouped together and is added to competition where each competition will have a unique name, start date and end date.
- Once the start date is confirmed and entered a notification is sent to all the users about this.
- The scoring is given to individuals once they have reached the location. The first individual to reach there will get the maximum points. The next individual to get to the location cannot get the maximum points but will be awarded with a decrement of 10% of the max points and this goes on till the 50% and if there are still players left they will also be warded 50% of the points.
- The team score is total sum of all the individual player scores. The team who finishes finding all the locations fisrt will be awarded bonus points. Only one will get the bonus and no other team can get it.
- The No of persons per team will be limited to a maximum of 4 players and a minimum of 1 player thus giving a chance to form more teams and making the competition and the leaderboard interesting.
- The user can join any team only upon approval from the team captain. But if they wish to leave approval is not required.
- Once a team enters a competition with full capacity then no player from that team can leave the team until the competition ends.
- If the team is not full then they can add a player till the team reaches its maximum capacity.
- The team with maximum score at the end of the competition will win the competition.
- If there are multiple competitions going on at the same then teams can participate all the competitions that are open if they wish to.
- Any person with a valid email and wishes to register for the game is defined as user.
- An entity is a general type for objects relevant to our game. Entities can represent objects that are crucial to gameplay, such as player and enemy characters, or objects that merely exist in the game world without interacting with the player, such as animated decorations in a level.
- A Player is a user who is already registered.
- Nick name is also inluded.
- A team is defined by the group of players and one of the palyer acts as the captain/teamleader.
- The quest is decided by the hunt master and is limited by time constraint.
- This entity is comprised of location coordinates and is given by the huntmaster for the players to locate.
- This is conducted by the huntmaster and the team with maximum points wins the competition.
PROJECT PLAN TEMPLATE | ||||
---|---|---|---|---|
PROJECT TITLE | ||||
Northwest Gaming Application | ||||
WBS NO. | TASK NAME | STATUS | DURATION in hours | |
1 | Sprint 0 | 180 | ||
1.1 | – User stories prioritization | Done | 20 | |
1.2 | – ER-Diagram development | Done | 25 | |
1.3 | – Sample data | Done | 20 | |
1.4 | – Schedule management plan | In-progress | 25 | |
1.5 | – Cost estimation | Done | 20 | |
1.6 | – Proposed UI screens development | In-progress | 30 | |
1.7 | – Jira setups | Done | 20 | |
1.8 | – User authorization | Done | 20 | |
2 | Sprint 1 | 180 | ||
2.1 | Planning the User stories | To-Do | 50 | |
2.1.1 | As a User I want to login/Signup for the game. | To-Do | ||
2.1.2 | As a user I want to create a team. | To-Do | ||
2.1.3 | As a User I want to Join a Team. | To-Do | ||
2.1.4 | As a User(captain) I want to accept/decline an invite of a player. | To-Do | ||
2.1.5 | As a user I want to act as the huntmaster and create quest. | To-Do | ||
2.1.6 | As a User(huntmaster) I want to add multiple locations in a single quest. | To-Do | ||
2.1.7 | As a User I want to join a competition. | To-Do | ||
2.2 | – Sprint 1 Implementation of all the user stories planned | To-Do | 100 | |
2.3 | – Sprint 1 Demo and client Acceptance | To-Do | 30 | |
2.5 | – MVP 1 release | To-Do | ||
3 | Sprint 2 | 200 | ||
3.1 | – Sprint 2 Planning Of User stories | To-Do | 50 | |
3.1.1 | As a User I want to join a competition when it starts. | To-Do | ||
3.1.2 | As a User I want to know about the scoring details of the competition. | To-Do | ||
3.1.3 | As a User I want to look at the points scored by the team. | To-Do | ||
3.1.4 | As a user I want to know how the team points are calculated. | To-Do | ||
3.1.5 | As User I want to know the limit of the players per team. | To-Do | ||
3.1.6 | As a user I want to leave the team and join other team. | To-Do | ||
3.1.7 | As a User I want to change my nick name. | To-Do | ||
3.1.8 | As a User I want to create multiple accounts under one user id. | To-Do | ||
3.1.9 | As a user I want to know how many more locations are left to be found out. | To-Do | ||
3.1.10 | As a user I want hints if I am unable to crack the clue. | To-Do | ||
3.4 | – Sprint 2 Implementation of all the User stories | To-Do | 120 | |
3.3 | – Sprint 2 Demo | To-Do | 30 | |
3.5 | – MVP 2 release | To-Do | ||
4 | Sprint 3 | To-Do | 180 | |
4.1 | – Sprint 3 Planning of user stories | To-Do | 50 | |
4.1.1 | As a user I want to know if there are any points reduced if I use the hints field. | To-Do | ||
4.1.2 | As a User I want assistance in finding a location. | To-Do | ||
4.1.3 | As a user I want to hear instructions while going to that location. | To-Do | ||
4.1.4 | As a user I wish to mute the instructions. | To-Do | ||
4.1.5 | As a user I wish to mute the instructions. | To-Do | ||
4.1.6 | As a user I want to look at all the settings available for the game. | To-Do | ||
4.1.7 | As a User I want to know if I can create a quest for the competition. | To-Do | ||
4.2 | – Sprint 3 Implementation of all the User stories | To-Do | 100 | |
4.3 | – Sprint 3 Demo and Client Acceptance | To-Do | 30 | |
4.5 | – MVP 3 release | To-Do | ||
5 | Sprint 4 (GDP-2) all sprints | 540 | ||
5.1 | – Sprint 4 Planning of User stories | To-Do | ||
5.2 | – Iteration of all the tasks | To-Do | ||
5.3 | – Testing the application and client approval | To-Do | ||
5.5 | – MVP 4 release | To-Do |
PROJECT COST ESTIMATE | |||||
Northwest Gaming Application | |||||
WBS NO. | TASK NAME | STATUS | DURATION | TOTAL TEAM COST | TOTAL COST FOR THE TEAM |
1 | Sprint 0 | 180 | |||
1.1 | – User stories prioritization | Done | 20 | $350 | $7,000 |
1.2 | – ER-Diagram development | Done | 25 | $350 | $8,750 |
1.3 | – Sample data | Done | 20 | $350 | $7,000 |
1.4 | – Schedule management plan | In-progress | 25 | $350 | $8,750 |
1.5 | – Cost estimation | Done | 20 | $350 | $7,000 |
1.6 | – Proposed UI screens development | In-progress | 30 | $350 | $10,500 |
1.7 | – Jira setups | Done | 20 | $350 | $7,000 |
1.8 | – User authorization | Done | 20 | $350 | $7,000 |
2 | Sprint 1 | 180 | |||
2.1 | Planning the User stories | To-Do | 50 | $350 | $17,500 |
2.1.1 | As a User I want to login/Signup for the game. | To-Do | |||
2.1.2 | As a user I want to create a team. | To-Do | |||
2.1.3 | As a User I want to Join a Team. | To-Do | |||
2.1.4 | As a User(captain) I want to accept/decline an invite of a player. | To-Do | |||
2.1.5 | As a user I want to act as the huntmaster and create quest. | To-Do | |||
2.1.6 | As a User(huntmaster) I want to add multiple locations in a single quest. | To-Do | |||
2.1.7 | As a User I want to join a competition. | To-Do | |||
2.2 | – Sprint 1 Implementation of all the user stories planned | To-Do | 100 | $350 | $35,000 |
2.3 | – Sprint 1 Demo and client Acceptance | To-Do | 30 | $350 | $10,500 |
2.5 | – MVP 1 release | To-Do | |||
3 | Sprint 2 | 200 | |||
3.1 | – Sprint 2 Planning Of User stories | To-Do | 50 | $350 | $17,500 |
3.1.1 | As a User I want to join a competition when it starts. | To-Do | |||
3.1.2 | As a User I want to know about the scoring details of the competition. | To-Do | |||
3.1.3 | As a User I want to look at the points scored by the team. | To-Do | |||
3.1.4 | As a user I want to know how the team points are calculated. | To-Do | |||
3.1.5 | As User I want to know the limit of the players per team. | To-Do | |||
3.1.6 | As a user I want to leave the team and join other team. | To-Do | |||
3.1.7 | As a User I want to change my nick name. | To-Do | |||
3.1.8 | As a User I want to create multiple accounts under one user id. | To-Do | |||
3.1.9 | As a user I want to know how many more locations are left to be found out. | To-Do | |||
3.1.10 | As a user I want hints if I am unable to crack the clue. | To-Do | |||
3.4 | – Sprint 2 Implementation of all the User stories | To-Do | 120 | $350 | $42,000 |
3.3 | – Sprint 2 Demo | To-Do | 30 | $350 | $10,500 |
3.5 | – MVP 2 release | To-Do | |||
4 | Sprint 3 | To-Do | 180 | ||
4.1 | – Sprint 3 Planning of user stories | To-Do | 50 | $350 | $17,500 |
4.1.1 | As a user I want to know if there are any points reduced if I use the hints field. | To-Do | |||
4.1.2 | As a User I want assistance in finding a location. | To-Do | |||
4.1.3 | As a user I want to hear instructions while going to that location. | To-Do | |||
4.1.4 | As a user I wish to mute the instructions. | To-Do | |||
4.1.5 | As a user I wish to mute the instructions. | To-Do | |||
4.1.6 | As a user I want to look at all the settings available for the game. | To-Do | |||
4.1.7 | As a User I want to know if I can create a quest for the competition. | To-Do | |||
4.2 | – Sprint 3 Implementation of all the User stories | To-Do | 100 | $350 | $35,000 |
4.3 | – Sprint 3 Demo and Client Acceptance | To-Do | 30 | $350 | $10,500 |
4.5 | – MVP 3 release | To-Do | |||
5 | Sprint 4 (GDP-2) all sprints | 540 | $350 | $189,000 | |
5.1 | – Sprint 4 Planning of User stories | To-Do | |||
5.2 | – Iteration of all the tasks | To-Do | |||
5.3 | – Testing the application and client approval | To-Do | |||
5.5 | – MVP 4 release | To-Do | |||
TOTAL | $448,000 |
- The team cost per hour is $350.
- The developers required for this application is 6.
- The estimated total cost for this application is $448,000 as mentioned in the cost estimation table.
- The app is based on the locations and to find the location accurately GPS is to be used which could a challenging and tricky task.
- This game is based on finding the locations which are outdoor and given the present scenario social distancing must be followed to play this game.
- The specification of the location coordinates in the game is also a challenging part.
- Handling data will be a issue here as any player can leave and join a new team whenever he desires to. This will make the desiging the database a difficult task.
- This game helps the players in physical activity as the players have to walk around to find the locations.
- This also helps the players to build the healthy competition thereby bringing the people together.
- THis is going to be a Progressive Web Application.
- HTML.
- CSS/Bootstrap.
- JavaScript.
- Each player must have a smart phone or a PC.
- Should be able to plan the route using location.
- One must have some knowledge to accumulate the clues and reach the treasure.
- As a User I want to login/Signup for the game.
- The User should have a valid email Id to Signup for the game.
- Upon signing up for the game the user will be prompted to enter a username/nickname of his choice.
- If the entered username/nickname is alraedy taken then he/she will prompted the same and after this point he/she will be identified as a player.
- If the user has already signed up for the game he/she can login with the username and password.
- The user Id should be persisted in the database along with the user's info when completing the registration.
As a user I want to create a team.
- The User can create a team upon signing up and he/she will prompted to enter a team name.
- The user who creates a team will serve as the captain.
- The user Id of this person and the info the team should be added into the database as the captain and should be retrievable whenever required.
As a User I want to Join a Team.
- The User can join any team he/she wishes to and will have to search for the team name he/she wants to join.
- Once he/she decides a team to join he/she will have to send a request to join their team.
- The user should be able to access all the teams available for him/her to join.
As a User(captain) I want to accept/decline an invite of a player.
- The user can accept/decline an invite of another player after looking up his/her invitation.
- The request should be visible in the notifications to the team/team captain.
As a user I want to act as the huntmaster and create quest.
- The user who is hunt master will be able to create quests.
- The huntmaster is assigned to only one person and the userid and other info is stored in the database such that only he can access the page of the create quest.
As a User(huntmaster) I want to add multiple locations in a single quest.
- The user can add multiple locations in creating a quest page.
- The locations added can be only be accessed after decoding the clue and only one location has to be released and once that person reaches that location then the clue for the next location is to be displayed from the database and so on until all the locations are finished.
As a User, I want to join a competition.
- The user can join a competition when the competition starts.
- Once the competition is open, teams which are stored in the database should be able to join the competition.
- If a new team is formed after the start date of the competition they should still be able to join the competition until and unless the competition is closed.
As a User, I want to join a competition when it starts.
- The user will get to know about the competition via notifications.
- A notification is to be sent to all the users who have registered ids prior to the start of the competition.
As a User I want to know about the scoring details of the competition.
- The user can look at the info about the scoring in the about page.
- An about page is to created for the users and the information regarding the competition and its scoring details are to be mentioned in it.
- As a User I want to look at the points scored by the team.
- The user can access this detail on the leaderboard page.
- A leaderboard page is to be created and the points scored by the team are to displayed in the descending order i.e the team with the highest points should be displayed with team name and their points on the top indicating that they are in the first position.
As a user I want to know how the team points are calculated.
- The user who is in a team will earn points and all the points by the team members together are counted as the team points.
- The scoring criteria determined in the competition are to be identified and implemented once the person reaches the location and these points should be stored in the database. these should be retrievable whenever the user wishes to look at the team score.
- The position of other teams and their points should be visible to all the teams in the competition.
As a User I want to know the limit of the players per team.
- The user will be able to add a maximum of 3 players making it a team of 4 players.
- The user should be given a provision to add the players and once the max limit is reached the user should be notified with a message stating max limit reached.
As a user I want to leave the team and join other team.
- The user can leave the team and join other by sending a request to that other team.
- However the user cannot leave the team once the competition starts. He can only leave the team after the completion of competition or before the start of the competition.
- The respective data is to be stored in the database as per the changes of the user and should be allowed to do that.
As a User I want to change my nick name.
- The user is allowed to change the nick name whenever he desires to.
- The user is allowed to change the nickname and the data is crosschecked with the existing the names and if they overlap the user should be prompted with the message name already taken, select another name.
- This process repeats until a unique name is entered by the user.
As a User I want to create multiple accounts under one user id.
- The user cannot create the multiple accounts under a single userid.
- The data base will be created in such a way that every player will get a unique id associated with the mail provided and hence the user cannot create multiple accounts under one id.
- If the user wants to maintain multiple acconts user has to provide multiple emial id as it will be the primary key for generating the userid.
As a user I want to know how many more locations are left to be found out.
- The user can see this in the competition page where the player will participate.
- The application should be designed such that the user can view the completed and to be completed status in the competition page.
- If all the locations are finished then the competition bar should change its color.
As a user I want hints if I am unable to crack the clue.
- The user can ask for hints if he/she is unable to crack the clue.
- There should be provision for the hints in the database and the hint should be popped up on the screen if the user wishes for the hints in the clue page.
As a user I want to know if there are any points reduced if I use the hints field.
- The user will not be awarded if he uses the hints field to find out a location.
- The program for this will coded to award less points to the player if they use the hints field even though he reaches that location first.
As a User I want assistance in finding a location.
- The user will be assisted after he cracks the clue and location corrdinates are provided to him.
- Third part applications will be used to giude th euser by providing a route mao to the user.
As a user I want to hear instructions while going to that location.
- The user can hear to the instructions while he/she is on the way to the location.
- The javascript code will be designed such that the instructions can be heard on the way to the location.
As a user I wish to mute the instructions.
- The user will be able to mute the instructions in the settings page.
- The settings page will be provided with the option of sound off so that the user who wishes to mute the instructions can mute it.
As a user I want to look at my profile.
- The user can access their account in the settings page.
- The settings page will be provided with the account info and will be accsseble from the database when the user clicks on the account icon/tab.
As a user I want to look at all the settings available for the game.
- The user will be provided with the setting icon/tab so thet he can see the settings available for the game.
- The home page will be designed with the settings icon/tab for the user to redirect him to the setting page to access it.
As a User I want to know if I can create a quest for the competition.
- The user will not have access to create a quest except huntmaster.
- The data base will be designed such a way that the normal user will not be able to see the create quest option as this game is designed such a way that only huntmaster can create the quests and start compettion.
- Planning of User stories
- Iteration of all the tasks
- Testing the application and client approval
- MVP 4 release
This emphasises the color of our college.
This the page where the points earned by different teams are displayed(Highest points to lowest points)
This is the page where all the challenges are displayed for the teams to participate.
This is the page where user's profile can be edited, about, help and logout options are provided.
This is the page where the user can be able to view the map of Northwest Missouri state University and can be able to access the clues.