Create a data model and implement it by creating database


Project Assignment- Restaurant Review System

This project will give you more experience building multi-tier web applications. In this project you will develop a small scale restaurant review system. This system should be a multi-page web application. You will also gain experience working with databases and designing a good data model for your web application to use. You will demonstrate data modelling skills learned from the pre-requisite database class by creating a good data model and implementing it by creating database tables.

Database Table Requirements:

Create a data model and implement it by creating database tables for the followingsystem. You will be graded on how well you designed the database for this project.

Restaurant Review System Requirements:

Your project needs to implement the following transactions.

1. Add a new account for either a review writer or restaurant representative:

Review writers are a different type of user than a restaurant representative in this web application. A reviewer account is a user that has an account with our site that can view reviews for restaurants, create new reviews, modify reviews, and make reservations for a visit to a restaurant. A restaurant representative account has a different level of access; they can view and manage information related to their restaurant, and manage reservations that were made by other users of the application. Therefore, they have different levels of access to the application.

2. Add a new restaurant:

Create anASPX page to allow the user (reviewer) or restaurant representative to add a new restaurant. This operation is also used in conjunction with creating a review for a restaurant that doesn't exist in the database.

3. AddReviews:

Create anASPX page to allow the user (reviewer) to add a new review.The review must include written comments pertaining to the restaurant and giving the restaurant a rating for 3 elements:a rating from 1 to 5 stars where 5 is the best for the food quality,a similar rating for the service, and a price level rating from 1 to 5 dollars where 5 is the most expensive.If the restaurant doesn't exist, you should direct the user to add the restaurant and its information before allowing them to review it.

4. Delete Reviews and Modify an existing review's Information:

You can use the same ASPX page to implement the delete reviewtransaction and the modify existing review transaction, because they both require access to a user's reviews. The user should only have access to their reviews, not another person's review.

5. Perform asearch for restaurants information based on a category:

A user can enter the initial letters of a categoryname and see a display of the complete list of restaurants that match the category. You could implement this with a search or by displaying a list of categories.This search should produce a list of restaurants so the user can choose one and view its information along with the reviews for it. You must allow the user to choose more than one category (for example, the user wants to see Italian and American restaurants).This display is to be presented in a dynamic display using a GridView, but you can use a Repeater.

Any user can search for restaurants and view information regarding restaurants, not just users that have accounts with the site.

6. Display Reviews for a restaurant:

The application should display the restaurant's information, reviews, and display the average ratings for the food, service, and price.This display is to be presented in a dynamic display using a GridView, but you can use a Repeater.

Any user can view reviews for a restaurant, not just users that have accounts.

7. Make a reservation:

The application must allow the user to find a restaurant, view information about it, and make a reservation. Update the database to record the reservationfor the restaurant.

8. Delete reservations and modify existing reservations:

The application must allow the user to view, modify, and delete reservations they created.

9. Allow restaurant representatives to manage restaurant information and reservations:

a. The application must allow arestaurant representativetoview and update information related to the restaurant.

b. Allow the representative to view all reservations for a particular restaurant as well as modify and delete reservations. This display is to be presented in a dynamic display using a GridView, but you can use a Repeater.

c. Reviewers must not be allowed to view this information nor should any user that isn't associated with the specific restaurant.

10. Make the site professional and attractive:

You don't need to use CSS to style your site, but I expect your site to look professional through the use of colors, styles, and images.

11. Make use of Stored Procedures:

You must use stored procedures for all database operations.

12. Use server-side input validation for all transactions where necessary.

13. Design principles:

a. This application will be used by three types of users: a user visiting the site to view restaurants and reviews;a member of the site (review writer) who can write a review, manage previously written reviews, and make reservations;an employee of the restaurant that wishes to review reservations and manage restaurant information. Think of this perspective when designing the application and database.

b. Provide a consistent and logical navigation system. The user should never have to use the browser's Back and Forward buttons to move between pages.

c. The user should be presented with an opening screen that presents the various transactions with links to respective pages to perform the selected transaction.

d. Make your presentation clear to the user, providing on-screen instructions wherever needed both for data entry and error correction. If required data is omitted or entries are incorrect, the user should not have to re-enter data that is already correct.

e. Create a good data model and implement the data model by creating the necessary tables in the database. I expect you to design and implement your own data model. You will be graded on the implementation of your data model.

f. You need to use a proper naming convention for all controls and in your code. I expect you to properly name your classes, variables, functions, etc...

g. Your programs shouldn't crash for any reason; it's poor design to have a program crash. Make sure to implement exception handling in appropriate places that can cause errors and handle them gracefully.

h. You must use component-based software design. This means writing as much code in classes and functions of classes instead of in the GUI.

Submission:

You need to publish your web application project to the cis-iis2 web server folder Project3, upload zip file containing the solution with all your code to Blackboard, and provide a URL to your web application's start page (table of contents). You also need to store the current version of your project in your G:\cis3342.

Important...

In addition to normal submission process described above, you need to provide a reasonable number of records to allow us to run and test your application. Before submitting the project, you must populate your tables with a minimum of 5 restaurant categories and a minimum of 5 restaurants for each category.

Solution Preview :

Prepared by a verified Expert
Database Management System: Create a data model and implement it by creating database
Reference No:- TGS02485206

Now Priced at $170 (50% Discount)

Recommended (94%)

Rated (4.6/5)