0% found this document useful (0 votes)
384 views

CO4752 Web Development Assignment (2020 A) : Learning Outcomes Assessed

This document outlines an assignment for a web development course. Students are asked to build a three-tier online student module selection system with a front-end web portal, back-end database, and middle layer service built using Java servlets. The system should allow administrators to manage student and module data, and students to select modules, with all communication handled through JSON messages. Students must submit working code that meets the outlined requirements and functionalities, as well as documents explaining their design, implementation, and areas for improvement. The assignment will be evaluated based on the functionality and quality of the web portal, middle layer service, database design, and accompanying report.

Uploaded by

Study Tips
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
384 views

CO4752 Web Development Assignment (2020 A) : Learning Outcomes Assessed

This document outlines an assignment for a web development course. Students are asked to build a three-tier online student module selection system with a front-end web portal, back-end database, and middle layer service built using Java servlets. The system should allow administrators to manage student and module data, and students to select modules, with all communication handled through JSON messages. Students must submit working code that meets the outlined requirements and functionalities, as well as documents explaining their design, implementation, and areas for improvement. The assignment will be evaluated based on the functionality and quality of the web portal, middle layer service, database design, and accompanying report.

Uploaded by

Study Tips
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

CO4752 Web Development Assignment (2020 A)

Date issued: 9th, March, 2020 Date due: 11:59PM, 18st, May, 2020

This assignment is worth 100% of the assessment for this module.

Learning Outcomes assessed


1. Understanding of multi-tier web application architecture and corresponded infrastructure setup.
2. Use of Servlets as a middle layer technology for web application development
3. Use of JavaScript and AJAX for web front development.
4. Use of JSON/XML as for exchanging messages between web portal and server application
5. Use of HTML/HTML 5 and CSS for web portal rendering.
6. Use of JDBC/Hibernate to operate Database (MySQL).
7. Understanding of how authorisations and authentications of web applications are conducted and are
able to implement them for the web application.

Introduction
In this assignment, you are required to complete an online student module selection management
system which is composed of three tiers (web portal, middle layer and database). The functional
requirement of the system is as the followings:
1. Admin users who are able to browse/add/remove/update/search/ student records through a web
portal. Records are stored in a back-end database. Each student record should contain:
a. Student’s id
b. Student’s first name
c. Student’s last name
d. Student’s contact email
e. Student’s home address
f. Modules that are selected by a student
g. Payment status
2. Student users are able to select modules that are provided by the admin user. Each of them can
choose maximum 6 modules.
3. Both type of users will need to log into the system. Therefore, your system should provide
basic user registration/login/logout functions.

Task Details
Note: for guidelines what to hand in and what the marker will be looking for, see the marking scheme.
Working INDIVIDUALLY:
1. Web portal: Your web portal should contain at least the following pages:
1. Login/Registration page for both admin and student users.
2. Admin user’s student management page: where admin user can perform the required
operations. The page should show a list of students who are enrolled with their
personal information, course information and selected module information.
3. Admin user’s course management page: where admin user can add courses, add
their associated modules and make those modules either mandatory or optional.
4. Student user’s course management page: where a student can view/select/update
their modules for his/her enrolled course.
The architecture of the assignment needs to be strictly three tiers based. This means web portal
is only used for rendering contents, taking inputs from users and feeding back results. The
portal is not supposed to handle any business logics (JSP, PHP, Ruby on Rails style portal and
things similar will not be accepted and marked). You will need to use javascript+HTML
5+CSS for your web portal development. Necessary third-party libraries are allowed in the
implementation.
2. Middle Layer: A middle layer that talks to both database and web portal through message
exchange. It should handle all business logics. The middle layer needs to be implemented
conforming to Java Servlet standard. It needs to be done in JAVA rather than any other
programming languages.
3. Database: MySQL database will be used to store data. You will need to define your database
schema that support your application. For this assignment, you don’t need to worry too much
about the DB normalisation rules and etc. You can use fewer tables as long as they satisfy
your needs.
4. Message Exchange: The messages that are exchanged between the portal and middle layer
need to be JSON. This makes the whole system a completely decoupled manner. No portal
will be relying on any specific middle layer’s implementation and vice versa. Both of them are
only dependent on the contents of the messages exchanged and interpretations of those
messages.

What You Should Submit:


You should submit a zip package and a source code text file via the links on Blackboard and
Turnitin (code source file needs to be submitted via the Turnitin link). Both files should follow the
name convention: YourRegistrationNumber_(FirstName LastName).zip/txt.
 The zip file should contain the following contents:
a.
b. Your web portal folder. This folder needs to be directly deployable and runnable on tomcat
7+ servers. Folder that fails to be deployed or run will be regarded as a failure, and you
will lose half marks for web portal section.
c. A war file which can be directly deployed on tomcat 7+ servers. Failure on the deployment
will lose you half marks for middle layer sections. You will need to be very careful with
the all the libraries that you choose to use. Make sure you pack them up in the war file so
when the war is deployed, the tomcat server will not complain about missing libraries.
d. A db.sql file that contains all the data you’ve created or used or tested for your project. It
can be restored to MySQL database.
e. A report that explains your design, implementation details and any potential problems that
you are aware of your development and potential improvement that can be done. Full lists
of messages (json syntax) that are exchanged between your Servlet service and portal.
Explain how the http protocol is used in your implementation if any.
 The source code text file must contain all the source codes you implemented. The content of the
file is copied and pasted from all your own *.java source files.

Failure to provide either of the above files will be considered as an incomplete submission and
your work will not be marked until both files are submitted. (It can be treated as a late
submission). In addition, the work implemented using other frameworks/languages such as
JSP, ASP, PHP will not be marked and you will receive no mark for your submission.

Assessment Criteria:
When I am marking this assignment, I will deploy your submission to my own environment. Please
don’t assume that I will be in any of the computing labs or place similar. So please make sure your
submission is going to work on any PC. Also, please make sure you web portal will work on google
chrome browser (it has better support to 3rd party libs for javascript).

1.Web Portal Development 40%


Characteristics Mark Range
Has basic functions as specified in the requirements. User can do very basic 0-15
operations through the portal. Pages are rendered using HTML only. CSS is not
applied appropriately. Key interactions and communication with back end is
handled by HTML form only. Implementation contains errors but doesn’t affect
browsing rendering. Deployable on Tomcat server 7+
Proper JavaScript is used and applied to all key operations/components in the portal. 16-30
CSS is applied appropriately. Message exchange and handling is performed without
major errors. Layout of portal is properly designed. HTML can pass W3C validator.
Exceptions returned from backend are handled properly using warning messages.
Excellent portal design with easy to use navigations. Authorisation and 31-40
authentication are handled properly on the portal side. Have used local caching for
data that need to be processed by users for better usability. Major PC browsers are
supported (Chrome, Firefox, IE, for Internet Explorer, IE8+ is fine), as well as
mobile devices browser with no issues.
2. Middle Layer 40%
Basic operations are handled properly using Java Servlet framework. Servlet 0-15
concept is applied correctly (state and data driven, HTTP verbs are used are used
correctly) from the implementation. Deployable on Tomcat server 6+. Can talk to
DB and return results to the portal, but with major fault or exceptions. Some
libraries required are missing.
No major exceptions or errors or they are handled properly. Transactions are 16-30
handled correctly with database. Connections to DB are handled properly as well.
(open/close). Sessions are implemented well. Use of web server context to exchange
information if needed. Can handle all the messages that are passed in from the
portal. Authorisation and authentication are implemented on service side.
Service lifecycle is handled well (activities when service is loaded, started, 31-40
destroyed etc.) if needed. Necessary configures, such as DB connection information,
are not hardcoded but are specified in configure file and is loaded into the
application context. Concurrent control is implemented and implemented caching
mechanism for better service performance.
3. Report 20%
Servlet APIs are specified. Problems, experiences while doing the assignment are 0-10
summarised very briefly. Focused only on what you have done.
Deep analysis of your own implementation including the pros and cons. Possible 11-20
improvement for the current implementation. Complete list of messages that are
exchanged between server and portal as well as detailed comments (think it as a
communication document between the service developer and portal developer).

Late work
Except where an extension of the hand-in deadline date has been approved (using extenuating
circumstances forms), work that is handed in up to 5 days late will be capped to 50%. After this, it
will receive a mark of 0%:

You might also like