Scenario:

Most online retailer sites include some common core functionality. Customers can browse an online catalog, they can add items to their shopping cart, they can remove items from their cart, and they can purchase items. For many sites, customers can become registered members.

For this homework, you are to create some of the use cases for an online retail site. You may choose a primary theme of your site or just include general merchandise.

Required Use Cases:

Initial page: From this page a user can choose to register for the site, or to login to the customer browsing page.

Registration: A form page where a new customer can enter their contact information, provide a username, and a password. This information will be stored in the database.

Login: The customer can login using their username and password. After login, the user can browse products.

Product Browsing: After logging into the site, the customer can see a list of products. Each product listing includes the name of the product, an image, and the price of the object. A user can set a quantity for a product and select to purchase it. If there are enough items in inventory, the entire order will be added to the shopping cart. If not enough to fill the order, the user will be notified to change their order. As items are added to a shopping cart, they should be removed from the inventory in the database.

Shopping Cart Review: At any time, the customer can click a link to view their shopping cart. The shopping cart view will display a list of products in the cart, the quantity to be purchased, the cost of each to be purchased product, and the total cost. The customer should be able to delete an item from their cart. If an item is deleted from the shopping cart, it should be added back to the product inventory. A customer should be able to resume shopping from the shopping cart view.

Additional Use Cases are optional.

Required Features:

Your project must include the following components:

  • Database: You will need to design and create a database to store relevant data. Make sure that your database is robust and follows the database design lessons you have learned during your MIST courses
  • Complete set of MVC components for all requests/responses use cases.
  • Validate data on both the client and server side. Make sure that your application "degrades gracefully."
  • Use relevant state management objects.

General Requirements:

Your application should also conform to the following general requirements:

  • Use standard Java conventions.
  • Use Java classes in the model as much as possible.
  • Use JSTL in JSPs when possible.
  • All page views should have a consistent and pleasing look and feel - using CSS to style the pages.
  • The application should be thoroughly tested and debugged.
Academic Honesty!
It is not our intention to break the school's academic policy. Posted solutions are meant to be used as a reference and should not be submitted as is. We are not held liable for any misuse of the solutions. Please see the frequently asked questions page for further questions and inquiries.
Kindly complete the form. Please provide a valid email address and we will get back to you within 24 hours. Payment is through PayPal, Buy me a Coffee or Cryptocurrency. We are a nonprofit organization however we need funds to keep this organization operating and to be able to complete our research and development projects.