Online Shopping SystemDescription
The application will allow customers to select products. Every selected item will then
be added to the shopping cart. Customers, can view, modify and delete the content of
their shopping cart any time. The shopping cart number of items and total price are
displayed on every page of the online shop. Customers can checkout at any time but
once they checkout their order can’t be modified and their order details will be stored
in a database. The shopping cart content will then be cleared.
The application will also enable authenticated administrators to manage their shop
products online (add, modify and delete products).
Functional requirements
Task1: Database design
The web shop products are stored in a database. Depending on your choice of shop
you need to design a database with appropriate tables and fields. The following
fields are mandatory. However, you will defiantly need more tables and fields (color,
size,).
Id: a unique identifier for every product.
Name: name of the product.
Picture: picture of the product. (Saved as a file name in the database)
Stock: number of available items.
Price: unit price of the product.
…….
…….
Database must be normalized. Tables’ primary keys and foreign keys must be
specified in the ER diagram.
Task 2: Web Design
1
The web application will include several pages. Groups are free to choose the
content, number and naming of their pages. However, their project should include
all the required functionality.
•
•
•
•
•
Pages must be designed using html and css.
Pages should have similar appearance.
Pages should not exceed 10
Images must be stored in images directory under the web application.
inappropriate or copyrighted images must be avoided.
As an example, the web application can include the following pages
1.
2.
3.
4.
5.
6.
Home or main page that can also include the products.
Product detail page.
Checkout page
Administrator authentication page
Managing products page.
Contact us page.
Task 3: Display Products.
Products details must be retrieved from the database. All the shop products must be
displayed by an image of each product on the products page. The customer can
select any product by clicking on it.
Task 4: Display Product Details
Display selected product details on the product details page. Allow the customer to
input the required quantity in an input box and add the items to the shopping cart by
clicking add to shopping cart button.
Task 5: Add to Cart
The customer entered quantity will be checked against the product available stock. If
the required quantity is available, the customer order will be added to the shopping
cart. Otherwise, appropriate message indicating unavailable required quantity will be
displayed. Total for each item is also displayed (unit price * quantity). PHP sessions
should be used to achieve this functionality.
Task 6: Checkout
2
Customer can check out by clicking checkout button in the product detail page or
checkout (can be a shopping cart image) available on every page of the web
application.
Customer orders will then be displayed in the checkout page. The customer will be
allowed to delete, modify quantity of any order or delete all orders (empty shopping
cart).
The customer can also buy all products in the shopping cart.
Task 7: Buy
The customer can click on the buy button on the checkout page. The quantity field of
every product will be updated in the database. The shopping cart will be emptied.
Task 8: Authenticate Managers
Managers will be authenticated in the Administrator authentication page. Managers
will enter their id and password in input boxes their input will be compared with the
mangers accounts in the database. If a match is found they will be granted authority
otherwise, appropriate message will be displayed.
Task 9: Add New Product
Authenticated managers can add new products. For every product, relevant fields
must be entered (differ for each group). The database will be updated by clicking the
add button.
Task 10: Search for a product to modify or delete.
Authenticated managers can search for a product to modify or delete. The database
will be updated by clicking the modify or delete button.
Task11: Display address and location map
The address of the shop and a Google location map will be displayed in the contact
us page.
Google map is a web service that you can add to your web application for free by
creating a Google account.
3
Task12: Past purchases
Returning customers will see their past purchases on the main web page. Cookies
should be used to achieve this functionality.
Task13: Forms Validation
Every form must be validated using JavaScript.
Task 14: Help window
Include a pop up help window in the product details page suitable to your project.
Task 15: Accessibility
Make sure your web page is accessible by disabled users.
Task16: Efficiency
Make sure your code is efficient (use of functions, avoid reputation, use of include…
4