The Web has now become an open and dynamic environment where users can not only perform transactions but also share and converse with others from around the world. The Web also provides foundational technologies for realising novel applications such as social networks, content sharing sites and gaming platforms. These interactions have been enabled by a new class of Web applications that provide an experience similar to, and in many cases superior to, that of desktop applications.
Web applications are based on the client-server paradigm with the browser as the client invoking the application functions implemented and hosted on servers using Web protocols. Recently, technologies such as AJAX (Asynchronous Javascript + XML) and HTML5 have enabled some Web application functionality to be implemented on the client-side to increase responsiveness to user input. However, the bulk of the processing is still being performed on the server-side. Therefore, a well-engineered server-side functionality is critical to a well-functioning web application.
This course aims to introduce the student to core concepts and practical skills for developing server-side infrastructure for Web applications. Specifically, the course aims to answer these questions:
This course is the first installment of the three-part series of the e-Commerce Systems stream. The concepts taught in this course will form the foundation for further learning in COMP9322 and COMP9323.
When you successfully complete this course, you should be able to:
What this course DOES NOT cover:
Name | Office | Phone | Role | |
Srikumar Venugopal | K17-412B | x56255 | srikumarv | Lecturer in Charge |
There is a 3-hour lecture every week, held each Thursday from 3-6pm in Mathews Theatre B.
The overall marks for this course is derived from two major components: the practical work performed during the semester and the written examination at the end of the semester. Each component is worth 50 marks and the total marks for this course are 100.
The practicals are divided into the following components:
The following formula describes precisely how the mark will be computed.
assign_tot = (lab + assignment) = 50 final_exam = (final_exam) = 50 overall_mark = assign_tot + final_exam, if final_exam is >= 22.5 = min(46, (assign_total+final_exam)), otherwise
The written exam will be 2 hours long for 50 marks. You need to score at least 22.5 out of 50 (45 out of 100) to pass the written exam, otherwise you will be assigned 46 FAIL, even if you have performed well in the practical component.
The assessments are designed towards meeting the learning objectives in the following manner:
Learning Outcome | Assessment |
Describe the main components of a Web-based application | Examination |
Write, read and utilise XML documents in Web applications | Assignment 1 |
Design and develop a non-trivial Web-based application from scratch | Assignment 2 |
Use relational databases for managing persistent data for a Web application | Assignment 2 |
Identify and apply design patterns in Web applications | Assigment 2, Examination |
Identify common security threats to a Web application | Examination |
Evaluate the performance of a Web application and identify bottlenecks | Assignment 3 |
Understand technologies for scaling web applications | Examination |
There is no required textbook for the course. Some reference materials (online-based) and recommended books and readings will be made available throughout the semester in the course homepage.
Based on feedback obtained in earlier offerings of this course (both CATEI and personal), we have revised the following aspects:
Supplementary examination will only be granted when a student was not able to attend the final exam for reasons beyond the student's control (eg., sickness), and submitted a special consideration at the Student Centre within three working days after the examination day. Students are required to read carefully the supplementary assessment policy for CSE. The document that explains this policy can be found here.
Note, however, if you attended the final exam, I will interpret that illness, misadventure or other circumstance beyond your control:
and you will not be considered for supplementary assessment. In other words, if your preparational ability to sit the exam has been affected, then do not attend the exam.
UNSW (and CSE) considers plagiarism as a serious offence. A student who plagiarises will be dealt with by the school and possibly by the university. More information and the school policy on plagiarism can be found here. Note the section Originality of Assignment Submissions. UNSW's learning centre also provides an online-resource containing information about plagiarism which you should be familiar with.