User Stories
Login Service
All Users
- As any user, I want to be able to log on to the app from the same login page so that I can enter the app.
User Service
All Users
- As any user, I want to be able to sign up on the app from the same sign up page so that I can enter the app (creating a new user).
Admin
- As an admin, I want to be able to log in and be taken to the admin side of the app so that I can manage games.
Game Service
Admin
- As an admin, I want to be able to end the game at any point so I can control how long the game will run.
- As an admin, I want to be able to change the state of the game so that fans can see different parts of the game process/can be taken to the questions.
- As an admin, I want to be able to edit game details so that games are up-to-date and accurate.
- As an admin, I want to be able to delete games to prevent canceled games from being played.
- As an admin, I want to be able to reset games to ensure games can be returned to their original state.
- As an admin, I want to be able to add a new game so fans can play at a newly announced sporting event.
- As an admin, I want to be able to add a new team so that the app can be used during sporting events they play at.
- As an admin, I want to be able to edit a team so that any incorrect information about the team can be corrected.
Fan
- As a fan, I want to be able to join a game so that I can answer questions for that game.
- As a fan, I want to be able to see a list of upcoming games so that I can take note of which games I want to play.
- As a fan, I want to select which team I’m rooting for so that my play can be attributed to my team’s fan base.
- As a fan, I want to see the logo for the teams that are competing so that I can feel more part of a collective (team) rather than only an individual player.
- As a fan, I want to answer questions so that I can help my team’s fans win.
- As a fan, I want to see which team won after a game concludes so that I can flex my superiority if my team wins.
- As a fan, I want the ability to go to Twitter, Instagram, or Facebook from the Fanz Play app so that I can brag if my team wins.
Question Service
Admin
- As an admin, I want to be able to add questions to a game’s question bank so that I can create a game based on the trivia of the teams playing.
- As an admin, I want to be able to remove questions from a game’s question bank so that if they contain typos or false/out-of-date information, they are not used in games.
- As an admin, I want to be able to edit a question so that any mistakes in the question can be corrected.
- As an admin, I want to be able to set and adjust the time for each question so I can control the cadence of the game.
User
- As a fan, I want to see questions and select an answer for each question so that I can participate in the game.
- As a fan, I want to be able to change my answer before I press submit so that I can update my answer if I change my mind.
- As a fan, I want to be able to see how much time is left for each question so that I can speed up/slow down if I need to.
- As a fan, I want to see how many questions I’ve gotten right at each point in a game so that I can track my progress.
- As a fan, I want to see the correct answer to a question after the time is up so that I can check if I answered correctly or not.
- As a fan, I want to see the current standings between questions so that I can flex my team’s superiority if we win.
Requirements
Definite
Functional
- This app will allow Fans to sign-up, log-in, and update their accounts.
- This app will allow Fans to join a game and select which team they are on.
- This app will take Fans to a lobby page to wait before the admin starts the game.
- This app will allow Fans to answer trivia questions with a countdown timer.
- Once the time runs out, the app will allow Fans to see what the correct answer was on the leaderboard page.
- The app will allow Fans to see each team’s trivia score after each question.
- This app will allow the Admin to create, edit, and delete teams, questions, and games.
- This app will allow the Admin to start a game and move from question to question.
Non-functional
- This app must run on Apple and Android mobile devices.
- This app must be easily deployed for demo purposes.
- This app must be easy to use and navigate.
- This app must be responsive and enable effective interaction with a real-time, timed quiz.
Perhaps
Functional
- This app will allow users to choose their team, and the app’s skin colors will be changed to those team’s colors.
- This app will allow users to play the games remotely.
- This app will allow Fans to reset their password if they forget their account.
- The app will direct Fans to certain social medias (for ex. Twitter, Instagram) to post.
Non-functional
- This app will be able to handle large groups of players using the application.
- This app will have data analytics functionality to analyze player activity.
Improbable
Functional
- This app will have pop-up surveys for users to take which collect additional user data.
- This app will allow for admin to export a user’s information to corporate sponsors.
- This app will be available on the app store.
- This app will have game notifications based on location services.
- This app will have an elimination mode.
- This app will have modes for non-sports related events such as concerts.
Non-functional:
- This app will have the capability to handle approximately 4.2 million users (those at the game and watching remotely)
- This app will provide 24/7 support