Box and Line Diagram & Explanation

Here is our Box and Line Diagram and explanations of each component and dependency.

Box and Line Diagram

The Box and Line Diagram is as follows or as a pdf here:

Box and Line Diagram Component and Dependency Explanation

A) Website Interface

The Website Interface subsystem contains multiple components. These components are dependent on the Backend. The subsystem components and dependencies are further explained as follows:

  • The Login Interface

      The Login Interface prompts the user to enter their username and password. An error message will appear if the username or password are incorrect. The Login Interface is dependent on the Backend Communication component to respond to user interaction.

  • Restaurant Profile Summary

      The Restaurant Profile Summary displays the restaurant’s goals and rewards. This component is dependent on the Backend Communication component to access restaurant profile information.

  • Goals Editor

      The Goals Editor allows the user to select a goal to update or delete. This component is dependent on the Backend Communication component to access restaurant goal information.

  • Rewards Editor

      The Goals Editor allows the user to select a reward to update or delete. This component is dependent on the Backend Communication component to access restaurant reward information.

  • Backend Communication

      The Backend Communication allows the interface to interact with the Backend subsystem. This component is dependent on the Website Frontend Communication component to access information and allow response to user interaction.


B) Application Interface

The Application Interface subsystem contains multiple components. These components are dependent on the Backend. The subsystem components and dependencies are further explained as follows:

  • Login Page

      The Login Page prompts customers to enter their username and password. An error message will appear if the username or password is incorrect. This component is dependent on the Backend Communication component to respond to user interaction.

  • List of Restaurant Boards Page

      The List of Restaurant Boards Page shows the user a list of all the restaurant boards that are in progress. A restaurant board that is “in progress” has one or more goal completed. This component is dependent on the Backend Communication component to access user information.

  • Restaurant Board Page

      The Board Page shows the user an individual restaurant game board. This component is dependent on the Backend Communication component to access game board information.

  • Compete with Friends Page

      The Compete with Friends Page shows the user their ranking in comparison with their friends who use the application. This component is dependent on the Backend Communication component to access user information.

  • List of Rewards Earned Page

      The List of Rewards Earned Page shows the user a list of all the rewards that they redeemed. This component is dependent on the Backend Communication component to access user reward information.

  • Backend Communication

      The Backend Communication allows the interfaces to interact with the Backend subsystem. This component is dependent on the Application Front End Communication component to access information and allow response to user interaction.


  • C) Backend

    The Backend subsystem contains multiple components. These components are dependent on the Database. The subsystem components and dependencies are further explained as follows:

  • Website Frontend Communication

      The Website Frontend Communication allows the Website Interface to interact with the Backend. This component is dependent on the User Authentication component and the Restaurant Profile Manager component.

  • Application Frontend Communication

      The Application Frontend Communication allows the Application Interface to interact with the Backend. This component is dependent on the following components: User Authentication, Friend Reward Comparison, Goal Completion Modifier, and Reward Completion Modifier.

  • User Authentication

      The User Authentication allows for the verification of inputted usernames and passwords. This component is dependent on the User Profile Management Component to access account information.

  • User Profile Management

      The User Profile Management component allows for users to modify their account information. This component is dependent on the Restaurant Profile Management component, so that if a restaurant owner changes their user profile, the corresponding fields in the restaurant profile are updated as well. This component is dependent on the Database Communication component so that the User Account and Restaurant Profile databases are updated based on these modifications.

  • Restaurant Profile Management

      The Restaurant Profile Management component allows for restaurant owner users to modify their restaurant profiles; these modifications include changes to the goals and rewards they want to offer. This component is dependent on the Database Communication component so that the Restaurant Profile Database is updated based on these modifications.

  • Friend Reward Comparison

      The Friend Reward Comparison ranks customer users based on the number of rewards earned compared to their friends. This component is dependent on the Database Communication component so that the Customer Profile Database is updated based on their rank.

  • Goal Completion Modifier

      The Goal Completion Modifier component allows for the goals field of the Customer Profile Database to be updated when a goal is completed. This component is dependent on the Goal Completion Verification component so that restaurant owner users verify that the goal is completed. This component is dependent on the Database Communication component so that the Customer Profile Database is updated when a goal is completed.

  • Reward Completion Modifier

      The Reward Completion Modifier component allows for the rewards field of the Customer Profile Database to be updated when a reward is redeemed. This component is dependent on the Reward Completion Verification component so that restaurant owner users verify that the reward is valid and redeemed. This component is dependent on the Database Communication component so that the Customer Profile Database is updated when a reward is redeemed.

  • Goal Completion Verification

      The Goal Completion Verification component allows for restaurant owners to verify if a goal is completed by a customer.

  • Reward Completion Verification

      The Reward Completion component allows for restaurant owners to verify if a reward is valid and redeemed by a customer.

  • Database Communication

      The Database Communication allows for the Backend to communicate with the Databases. This component is dependent on the Database subsystem so that it can communicate with the database components.


  • D) Database

    The Database subsystem contains the following components:

  • User Account Database

      The User Account Database stores user account information such as password and username.

  • Restaurant Profile Database

      The Restaurant Profile Database stores restaurant information such as name of the restaurant, the username associated with the restaurant, the restaurant goals, and the restaurant rewards.

  • Game Goals Database

      The Game Goals Database stores the premade goals used for the bingo loyalty game.

  • Game Rewards Database

      The Games Rewards Database is used for storing rewards for the bingo loyalty game.

  • Customer Profile Database

      The Customer Profile Database is used for storing customer user information such as username, active game boards, goals completed, rewards earned, and friends’ usernames.