BT2201 Dynamic Web Pages Assignment 2018/19
Your assignment for this module is as follows:
“Lancashire Cars Ltd. is company selling used cars. They just started their business and need a web presence. Create a website for them that lists cars available and enables visitors to get further details for a specific car. Employees should be able to add cars using a web interface.”
• You are required to design and build a database-driven website for the company.
• You have to create the database table(s) required that can store cars and suitable attributes (e.g. make,
model, etc)
• You are also required to produce documentation (approx. 4-6 pages) where you explain the site to
enable a non-technical person to administrate the website (e.g. this is how to log on, this is how to add
a placement, etc.). Please add the documentation to your repository, if possible as a markdown file.
• Your work should be synced with GitHub, in the correct repository for this assignment.
• Your website should use the PHP and MySQL functions learned in this module.
• Your website should be published in your bimserver2.com web space. The code from your GitHub
repositories and the code on the server have to be identical.
Please note that function takes precedence over form for this assignment. Your primary aim is to ensure that the dynamic aspects of the site work correctly. The “look” is not unimportant, but a good looking website that does not work will get a much lower mark than a working website that does not look very good.
Assessment will be in the form of a ~20 minute viva. Arrangements for booking a slot for your viva can be arranged during class. Vivas will take place between 29.4.2019 and 10.5.2019. If you haven’t booked a viva slot by 12.4.2019 a slot will be assigned to you.
The website for this assignment should be located at the following address:
http://userid.bimserver2.com/lancs-cars-ltd/ (where userid is your unique bimserver2.com user ID)
The website, documentation and viva combined, constitute 50% of your total module grade.
1
Make sure you consider the following points
The completed scripts should be uploaded to your bimserver2.com web space.
The URL of your scripts must be submitted with your source code in your GitHub repository. The
easiest way to do this is as an HTML comment, as done in previous tasks. I’ll deduct marks if you do not hand the URL in. If I cannot find your work on bimserver2.com because of a missing URL you will get a fail mark.
You should hand in documentation and/or comment in your code. If your script does not work, you should also hand-in documented evidence of your work on the problem (a series of commits could count as evidence).
The code has to be your own code. You are not allowed to copy chunks of code from any source (book, web pages, etc) except the BT2201 handouts. You are allowed to reuse code you have written previously, e.g. as part of a workshop, but only if you have created this code yourself.
I expect you to follow best practice regarding file and folder names (upper/lower case, spaces, index, etc).
Commit early, commit often. That way you don’t lose code if something goes wrong and it’s easier to show that you have written the code yourself.
Additional comments
Participation in the workshops will form part of your grade. This means that committing changes to your work from the workshops/seminars and pushing/syncing your commits is important. It doesn’t matter if it is not correct the first time.
The worst thing you can do is to submit code from your classmates or code you found on the web or in books. Think about how easy it is for me to find out and how severe the consequences are.
2
Marking scheme
Grade
10% – 35%
40% – 48%
52% – 58%
62% – 68%
Description
• Not fully functioning • Not documented
• Either
o Well documented or commented but not fully functioning • Or
o Basic functionality
▪ A list of records automatically generated from the database ▪ Other functions suitable for Lancs Cars Ltd
• Simple, fully functioning and documented or commented • Additional functionality
o Additional, relevant page (e.g. a home page/ landing page, …)
o Usersshouldbeabletolistasummaryofallentriesinthedatabase and should be able to see more details about a specific entry by
clicking on an automatically generated link provided for each entry • Well written
• Well documented or commented
o Include a detailed and well-written documentation, utilising screen-
shots where suitable
o When a database record is shown in the web site a relevant image
thumbnail should be displayed, which will lead to a larger image
when clicked
o An administration function that allows new records to be added.
• Suitable, additional functionality
• Frequent and regular commits
• Well written
• Well documented and commented • Even more additional functionality
o Administration functions should allow the webmaster to easily add, edit and delete records in the database as well as upload image files
o Theadministrationfunctionshouldbepasswordprotected
o Image files should be automatically assigned to a specific record
o Usersshouldbeabletosearchthedatabaseandhavetheresultsof
searches presented to them in a meaningful way
o Try to add facilities that both the companies as well as their
customers might like to see in a real-world site
• Intuitive to use, easy to navigate, well laid out and adhering to good web-
design principles (including colour scheme). • Following best practice
• No code smells
• Timely, frequent and regular commits
• Semantic HTML where possible
≥74%
3