Requirements - SCCapstone/Seating-App GitHub Wiki


Priority Stack of Core Features

1.1 Login Component 1.2 Registration Component 1.3 About Component 2.1 Navbar Component (*Repeating Component) 4.1 Add Store Component 4.2 Store Statistic Component 3.1 Reservation Header (Add, Edit, Delete) 3.2 Registration View Component 2.3 Guests Component 5.1 Floor Plan Editor Header 5.2 Floor Plan View 2.2 Live View Floor Plan 4.3 Add Host Component 4.4 Add Server Component 2.4 Server Component (*Not in designs) 6.1 Profile Component 6.2 General Settings Component


All Core Features (Sequential Order)

1.1 Login Component 1.2 Registration Component 1.3 About Component 2.1 Navbar Component (*Repeating Component) 2.2 Live View Floor Plan 2.3 Guests Component 2.4 Server Component (*Not in designs) 3.1 Reservation Header (Add, Edit, Delete) 3.2 Registration View Component 4.1 Add Store Component 4.2 Store Statistic Component 4.3 Add Host Component 4.4 Add Server Component 5.1 Floor Plan Editor Header 5.2 Floor Plan View 6.1 Profile Component 6.2 General Settings Component

More detailed descriptions labeled out by section below.

1Landing Page 2Live View 3Reservations 4Store Manager 5Floor Plan Editor 6Account Settings


Landing Page

Core Features:

1.1 Login Component

How users login, will check email and password against our User database

1.2 Registration Component

How users register, will allow them to create an account with a email, password, and then verifying that password.

1.3 About Component

Simple model that describes what our app offers to potential users.

Basic Features:

1.a Logo Component

Purpose:

This is where the user lands when our URL is entered. It will have a small about section that explains the functionality of our App and what we can do for potential users. Next to the about section will be a login and registration, allowing users to create an account or login to an existing account.

View:

Landing Page

Back to top


Live View

Core Features:

2.1 Navbar Component (*Repeating Component)

Navbar will allow routing throughout our app through the use of directed buttons.

2.2 Live View Floor Plan

The floor plan that appears on initial login will be a boilerplate example. Once the user has set up a store, built and assigned a floor plan, they will be able to view it through the live view. It will allow for hosts and servers to manage tables at that store, and also allow user to track statistical data based on tables, times, etc.

2.3 Guests Component

Shows current and future reservations for that store on this day.

2.4 Server Component (*Not in designs)

Shows current servers working, will be able to add or remove based on if they are working that day or not. Can assign servers to specific tables to track guest counts.

Basic Features:

2.1.a Logo / User Profile at top of Navbar 2.1.b Navbar Buttons and Routing

Purpose:

This is the live view page, or the landing page after logging in or signing up. This is also what the hosts will use to sit, manage, and control guests and servers. You will be able to drag current or upcoming guests onto the floor plan which will then change the table to show that it is sat. You will also be able to assign tables to specific servers, allowing you to track guest counts per server.

View:

Live View Page

Back to top


Reservations

Core Features:

3.1 Reservation Header (Add, Edit, Delete)

Allows users, or hosts to add, edit, or delete current, past, or future reservations for a specific store on a specific date.

3.2 Registration View Component

Shows the data based on a set preference. I.e Store 1 on 10/10/18.

Basic Features:

3.1.a Reservation Table (Name, Party Size, Time, Other)

Purpose:

The reservation screen is a more detailed view of reservations. You will be able to Add, Edit, and Delete reservations from this screen as well. Not only upcoming and current reservations will be displayed, but should also show total (or all) reservations for that day. You should also be able to view past or future dates to see reservations for that specific date.

View:

Reservation Page

Back to top


Store Manager

Core Features:

4.1 Add Store Component

Allows users to add multiple stores.

4.2 Store Statistic Component

Shows statistics based on a store name and date, along with how they want to sort the data.

4.3 Add Host Component

Allows users to add hosts, and can assign them to specific stores. This will allow users to restrict what specific hosts can view, edit, or change.

4.4 Add Server Component

Allows users to add servers. Like hosts, they can assign servers to specific stores that way there isn't extra redundancy. I.e a server is likely to serve at two different stores, so you only want to see servers that work at that specific store.

Basic Features:

4.1.a Floorplan Editor Routing

Most likely going to open a model or take you to a sub screen allowing you access to the Floor Plan Editor (described below).

4.1.b Store Manage Component

Users can edit the stores they have created. This could be assigning more or new floor plans, to changing the current floor plan. They will be able to change the store name, and also see what servers and hosts are assigned to each store individually.

4.2.a Statistic Plugin (*)

Allows users to see store data, and organize or view it as they would like too. Most likely going to be using a plugin to manage the data manipulation.

4.3.a Host Manage Component

Allows users to manage hosts they have created. This could everything from changing the store locations they work at, to changing their name, or what they have permission to view.

4.4.a Server Manage Component

Allows users to manage servers they have created. This could be changing the store locations they work at to changing their name.

Purpose:

The owner of a restaurant will be able to manage everything they need from this section. They will be able to add multiple stores, and assign Hosts or Servers to those specific stores. There will also be a link to a floor plan editor (described below) and will be able to assign different stores to different floor plans.

View:

Store Manager Page Store Manager 2 Page

Back to top


Floor Plan Editor

Core Features:

5.1 Floor Plan Editor Header

Users can drag and drop a variety of different types of tables. Also have access to tools for building walls, or adding structural objects that may create a better sense of a floor plan.

5.2 Floor Plan View

Basic Features:

5.1.a Table Selector 5.1.b Tool Selector

Purpose:

Users will be able to build their own floor plans here. They will be able to select a variety of tables and drag and drop into the floor plan. They will then be able to save these floor plans and assign them to different stores they've created.

View:

Floor Plan Page

Back to top


Account Settings

Core Features:

6.1 Profile Component

Allows users to manage profile settings.

6.2 General Settings Component

Allows users to manage general account settings.

Purpose:

Users will be able to manage basic account settings from changing an email or password to setting preferences.

View:

Account Page

Back to top