INFORMATICS & IT AY2020
INFORMATICS & IT
INFORMATICS & IT
AY2020
Software Cluster
Coding and Development Project (CDEV) &
Database Application Development (DBAV)
Project Specification
Introduction
The purpose of this assignment is to understand and apply the knowledge of website
development to develop a working web application that stores and retrieve data to/from a
database server. The theme of the project is Restaurant Review and should contain the
following basic features:
1. User Registration
You will create a registration page with validation that prompts the user to enter at least the
following information:
Userid (for logging in)
Password (for logging in)
First name and last name
Gender
Address
Mobile Number
Email Address
When the user clicks on the “Register” button, the information entered by the user will be
stored into the database.
Recommended Advanced Features
Registered users can log into their accounts to update their user information (e.g.
password, address, mobile number)
Users can choose to upload a profile picture for their account
Users can choose to delete or deactivate their account
2. User Login
You will create a page for users to login into the website. The website will prompt for the
user to key in the following information to login:
Userid
Password
When user clicks on the Login button, the userid and password submitted by the user are
checked against the database. If the userid and password are found in the database, the login
is successful. Otherwise, the system will display an error message “Login is not successful,
please try again.”.
Recommended Advanced Features
Users can also choose to Facebook login into the website
Allow users to click on a “Forgot password” link and send an email to the user’s
email address with a link for user to reset the password
Upon a session login, display user’s userid on top of the page (e.g. “Welcome, John!”)
3. Display List of Restaurants
Create a main page that displays all the restaurants from the database. The following
restaurant information should be displayed:
Restaurant name
Picture of the restaurant
A hyperlink or modal that displays more information of the restaurant (e.g. reviews,
address, map, opening hours, telephone number)
Recommended Advanced Features
Sort and categorize the restaurants (e.g. western food, Chinese food, Halal food, fine
dining, fast food)
Users can search for restaurants by typing the restaurant name in a search bar
4 Restaurant Reviews
Display the reviews of the selected restaurant in a new page or modal when user clicks on
the “Reviews” hyperlink. The following restaurant review information should be displayed:
Userid of the user who left the review
Contents of the review
Timestamp when the review was posted
Rating of the restaurant
Users should also be able to write/edit/delete reviews.
Recommended Advanced Features
Users are only able to edit or delete the reviews posted by them
Users must be logged in before they can write/edit/delete reviews
In addition to the above basic features, you are also required to include at least ONE
advanced feature for the website (refer to Part 4).
This project consists of five parts:
1. Part 1 is to produce a proposal for your website user interface and develop a low
fidelity prototype and a site navigation map.
2. Part 2 is to produce a database design for the data that will be stored into the
database server.
3. Part 3 is to develop the SQL and web API to integrate the database with the web
application.
4. Part 4 is to develop the website with GUI, screen interactivity, and database
integration.
5. Part 5 is to present your work in PowerPoint slides and submit the completed Web
Application.
4
Notes:
a) This is an individual project.
b) You are to propose, design, develop, test and implement a web application using only
HTML, CSS, JavaScript, Node.js and MySQL. You need only to submit one integrated
web application with suitable user interface that enhances the user experience.
c) You are free to be as creative as you can but do ensure that you can complete the web
application within the specified timeframe. However, as a MINIMUM requirement,
your application MUST apply the knowledge that you have learnt in the studio sessions
(see marking criteria in the sections below on how you will be graded) with at least ONE
additional feature.
d) You are not allowed to use full website templates that are available on the internet.
Substantial marks will be deducted if you are discovered doing so.
e) No additional marks will be given to functions/features that are hardcoded.
Part 1 (CDEV - 20%)
You are to produce a proposal and develop a prototype for your web application.
The delivery for this part of the project includes the following UXID components:
a) Report
- Site Navigation Map
- Write up of web application’s functionalities
b) Web application prototype (i.e. Adobe XD) and Presentation
You will also be required to do a stand-up presentation of your prototype to your tutor. This
part of the project constitutes 20% of the grade for the Coding and Development Project
subject. The grading criteria for Part 1 (CDEV) will be based on the following:
Grade Criteria
A Delivered all the required items. All of the proposed functionalities are
shown in the prototype with an efficient flow. Prototype is complete with
intuitive navigation. Prototype is developed according to what was
stipulated in the site navigation map. Proposed functionalities are
comprehensive and well thought out.
B Delivered all the required items. All of the proposed functionalities are
shown in the prototype. Prototype is complete according to what was
stipulated in the site navigation map. Proposed functionalities are clear
and well thought out.
C Delivered all the required items. Most of the proposed functionalities are
shown in the prototype. Prototype is somewhat complete according to
what was stipulated in the site navigation map. Proposed functionalities
are complete and relevant.
D Partially delivered all the required items. Some of the proposed
functionalities are shown in the prototype. Prototype has incomplete
screens and has little reference to the site navigation map. Proposed
functionalities are ambiguous and lacks details.
F Non-submission of all the required items.
6
Part 2 (DBAV - 40%)
Part 2 of the project consists of the following components on Database Design:
a) Data Dictionary (20%)
b) Entity Relationship (ER) Diagram (20%)