Produce an E-Commerce Website for a Company
Task
- Produce an e-commerce website for a company of your own choosing. You do not need evidence of their input but may need permission for images etc.
- The website you produce for this company should include at least three of the essential elements of an e-commerce website and should use an appropriate range of modern Web technologies
- Although this assignment is focused mainly of the technical implementation of a partial e-commerce system the aesthetic appearance of the website is also important and marks will be given for this
- You will need to ensure that your website includes both server-side and client-side technologies. It is recommended you use languages such as JavaScript for form validation
Additional Notes
- The solution to this problem should use all aspects of the LAMP (Linux, Apache, MySQL, PHP/Perl/Python) architecture as well as a suitable range of other technologies such as JavaScript
- The website should use CSS (Cascading Style Sheet) for at least some of the formatting as well as demonstrating knowledge of HTML
- You may also use XML or JSON to update your pages as you are required to show an understanding of the current tools used for website development
- You should develop you own code based on example code provided during lectures or elsewhere but you must ensure that any work submitted is entirely your own and is dissimilar to that of any other group members. Credit any sources you have referred to.
Failure to comply with the above will result in your work being failed
It is your responsibility to ensure that your assignment is submitted on time. Extensions will only be granted in exceptional cases and if a mitigating circumstances form has been submitted in advance, a revised deadline agreed between you and your lecturer and the form signed by the lecturer.
Evidence Required
As a minimum, you should submit the following evidence of your design:
- An outline of the user requirements guiding the development of the site
- One or more storyboards for each of the features included in your design
- A simple ER diagram showing a relational database structure
- Annotated examples of coding, including PHP, SQL, JavaScript and CSS
- Full source code in electronic form (e.g. via FTP access to your site)
- The URL of your home page, as it would appear to visitors
Required Features
1. You should aim to implement at least three of the following features although not all are required.
Dynamic Product Catalogue
2. This would involve constructing a database of products which the user can then access via a HTML interface to browse details of products. The catalogue system should also provide some dynamic enhancements such as showing a list of products that are currently on 'special offer' or 'clearance'. In addition to this there must be some functionality provided that allows the user to search the entire catalogue finding out details of a particular product. The catalogue should provide some way of clearly identifying when a product is out of stock.
User authentication
3. This would involve validating users trying to log into the site to purchase goods against a database of valid usernames and passwords. If a user is unable to supply a valid username and password combination they should be denied access to the website. When a user does manage to log onto the site the system should record the time, date and user's IP address
User account management
4. This would involve a way of allowing new users to add their details to a database of authorised users via a HTML page. There should also be a page that allows existing users to log-into the system and modify their details. Finally there should also be a way for existing customers to 'close' their accounts which would involve completely removing all details of the user account from the database.
Shopping Basket
5. The shopping basket will allow users to add items to their basket together with the quantity of those items they want to purchase and display a running total of the total cost. When the user is done adding items to their basket the 'view basket' option will allow them to see the individual items they have added together with the quantity and price for each. The basket should also include a total cost section which shows how much the order costs together with the amount of VAT and shipping required.
Comments/Reviews
6. This can only be achieved if user accounts are implemented. Customers can rate products and add a paragraph or two of text. Once these comments are submitted, other users can view those comments alongside other details of that product. Be careful to check any user-submitted text for potential security hazards. There is no need to allow them to format their comments or modify them after they have been submitted.