Question: Assessment task details and instructions Your task overall for the module is to develop a data-driven online system called Borrow my charger aimed at allowing
Assessment task details and instructions
Your task overall for the module is to develop a data-driven online system called Borrow my charger aimed at allowing home owners with an electric vehicle (EV) charging point to offer it out for paid usage by other EV owners to charge their car. Imagine a home with a driveway and a charge point and by agreement another EV owner could park their car on the driveway and charge it.
You must build the system using PHP, MySQL and HTML/CSS. The work will be split over both Trimester 1 and 2. The first trimester focuses on core architecture and data storage. The second trimester will add JavaScript and mapping so users can search for and locate charge stations.
Noteworthy details to gain high marks in Trimester 1 include:
The core PHP architecture needs to follow an Object Oriented, Model-View-Controller (MVC) Design Pattern approach. This is covered in the lectures and workshops and you practice it by following the
workshop material closely. You are not allowed to use jQuery or a high level PHP framework. You need to use and adapt the MVC templates that you use in the workshops and this is very important!
The system must be live and running on the university web and database servers. Typically the same system as used in the L4 Web Dev & HCI module. The system will be marked from the live version. Therefore if your work cannot be found you will get 0%.
There should be two types of users. 1) a home owner offering their charge point. Home owners will only have one charge point associated with their account. 2) a charge point user.
The website must allow users to sign up and login. As a minimum for users, each record needs to include: User ID, an email address (as username), a real name, a password, and if they are a home owner an associated charge point that is being offered for rent. All passwords must be appropriately encrypted in the database.
Achargepointrecordwillneedlocation(streetaddressandlatitude/longitude)andchargecost(price per kWh) and needs to be associated by foreign key with a home owner type 1) user.
Fortestingandmarkingyoumusthavetwospecifictestaccountswiththeseexactdetails:
Home (charge point) owner
Rental user
User ID (auto generated in the DB)
Username: lee@lee.com
Name: Lee Griffiths
Password: 123456
With a charge point record:
User ID (auto generated in the DB)
Username: user@user.com
Name: User Lee Griffiths
Password: 123456
Assessment Information/Brief
2
5 The Cresent, Salford, M5 4WT
Lat: 53.483710, Lng: -2.270110
Price (for charging) 0.25 / kWh
There will be a need use the geolocation data (latitude/longitude) for the work in Trimester 2 which involves maps (e.g. Google maps) so think about how you will include this information in a charge point record and store dummy information for now.
The websites main home page (must be named index.php) should start with a login/registration page.
Authenticated (logged in) website users should be able to list all charge points and be able to search for a charge point based on parameters like postcode and address and cost and the search should be sophisticated enough to narrow down results including ordering of the results. Splitting the list into pages with suitable page navigation will get the highest marks.
Listings and Search results should be displayed using HTML with CSS (the use of Bootstrap or Materialize frameworks is encouraged). You are not allowed to use jQuery because 1) you wont need to for what is required and 2) in Trimester 2 you will need to develop raw JavaScript in your solution and you are marked on your ability to develop and implement well designed JavaScript code.
Once a user has found a suitable charge point they should be able fill the form which has a particular date and time and for how long and/or how many kWh they wish to consume. This should be in the form of a contact form and you can use a HTML calendar control for date selection, but you do not have to implement actual email submission system.
You will need to revise your L4 Databases SQL work as the solution will contain multiple database tables and use foreign keys to link together at least users and charge points in the most effective and efficient way.
Yoursitemustbedesignedandbuilttohandle1000sofusersbothhomeownersandEVchargeusers and you need to demonstrate the systems ability to handle this amount of data by creating a large test data set (1000s of users and their records). You can generate test/mock data with a tool like www.mockaroo.com
Youmustconsidersecurityandperformanceateverystepanddesigntheuserexperienceformultiple platforms and abilities. For example, security should consider filtering malicious code from any text that users can enter, including SQL injection .Performance should minimise page weight including media associated with an item description (e.g. processing uploaded images to reduce their dimensions and file size).
You are free to use phpMyAdmin or MySQL Workbench (or any suitable tool) to administer the database
+ 5 the Crestrt, set and ath astr. affcinin am
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
