Cafe Bean Scene

ASP.NET Core MVC application that serves as a management and customer booking/reservation system of Bean Scene Restaurant(fictitious client).

Visit LiveSource Code

Detailing my build process

1. Understanding the Client Needs

With a goal to modernize their operations while enhancing the overall dining experience, the requirement was to develop an application that handles the reservation system for Bean Scene, a restaurant that had been handling reservations manually for years.

bean scene restaurant ud

Use Case Diagram

2. Choosing the tech stack and prototyping the workflow

Tech Stack

Decided to go with this tech stack due to its synergy and the selection not only meets project requirement but also aligns with my learning goals.

  • ASP.Net Core
  • EF Core
  • C#
  • JavaScript
  • MS-SQL
  • Git
  • AzureDevOps
  • Azure Cloud Services

Simple Workflow

  1. Restaurateur schedules sittings on a quarterly basis
  2. Reservations can be made in person, via email, or phone, with options for special requests.
  3. All reservation requests have a pending status
  4. Confirmation
  5. Members can cancel reservations, changing the status to cancelled
  6. Tables are assigned to reservations before their start time
  7. Completion

3. Doing the conceptual design in Figma and Data Modeling

I'm not a design expert, but I've created this mid-fi design to help me determine what interface elements will exist on key pages.

You can view the figma design here

Landing Page

landing page wireframe

Login and Sign Up

login page wireframe
signup page wireframe

Reservation

reservation page wireframe

Dashboard

While the dashboard was not originally part of the requirements, I decided to include it as it can significantly aid managers in overseeing reservations, staff, and areas. The dashboard can provides a centralized view of all critical data, making it easier to monitor and manage operations.

landing page wireframe

Creating the Bean Scene ERD using Vertabelo

bean scene ERD

Serves as my indispensable guide in the .NET Core Code-First approach, aiding in database design, entity mapping, data validation, relationship implementation, data type selection, and seamless schema changes throughout my application development process.

4. Development and Testing

You can view the source code as well as the testing here