Note: This unit version is currently under review and is subject to change!

COMP5347: Web Application Development (2019 - Semester 1)

Download UoS Outline

Unit: COMP5347: Web Application Development (6 CP)
Mode: Normal-Day
On Offer: Yes
Level: Postgraduate
Faculty/School: School of Computer Science
Unit Coordinator/s: Dr. Suleiman, Basem
Session options: Semester 1
Versions for this Unit:
Campus: Camperdown/Darlington
Pre-Requisites: None.
Brief Handbook Description: Nowadays most client facing enterprise applications are running on web or at least with a web interface. The design and implementation of a web application require totally different set of skills to those are required for traditional desktop applications. All web applications are of client/ server architecture. Requests sent to a web application are expected to go through the public Internet, which slows the responsiveness and increases the possible security threat. A typical web application is also expected to handle large number of requests coming from every corner of the Internet and sent by all sorts of client systems. This further complicates the design of such system.

This course aims at providing both conceptual understanding and hand-on experiences for the technologies used in building web applications. We will examine how data/messages are communicated between client and server; how to improve the responsiveness using rich client technology; as well as how to build a secure web application.

At the end of this course, students are expected to have a clear understanding of the structure and technologies of web applications. Students are also expected to have practical knowledge of some major web application environments and to be able to develop and deploy simple web applications. Cloud based platform are increasingly popular as the development and deployment platform. This course will incorporate the cloud aspect of web application development as well.
Assumed Knowledge: COMP9220 OR COMP5028. The course assumes basic knowledge on OO design and proficiency in a programming language
Lecturer/s: Dr. Suleiman, Basem
Timetable: COMP5347 Timetable
Time Commitment:
# Activity Name Hours per Week Sessions per Week Weeks per Semester
1 Lecture 2.00 1 13
2 Laboratory 1.00 1 13
3 Project Work - own time 3.00 1 13
4 Independent Study 5.00 1 13
T&L Activities: Laboratory: Students are given mini project task weekly or fortnightly to practise knowledge learned from lecture.

Project Work - own time: Students may be required to do homework on their own time. Homework consists of various tasks such as complete tutorial exercises, individual assignment project, and group project assignment.

Independent Study: Students are required to read slides and other reference materials in their own time.

Learning outcomes are the key abilities and knowledge that will be assessed in this unit. They are listed according to the course goal supported by each. See Assessment Tab for details how each outcome is assessed.

(6) Communication and Inquiry/ Research (Level 3)
1. Discuss the MVC architecture of Web application
2. Be able to describe and analyse web application architectures and report on their understanding.
(7) Project and Team Skills (Level 2)
3. Be able to undertake collaborative web application development in a small team environment.
(4) Design (Level 4)
4. Understand the fundamentals of web application and the difference between standalone and web application
(2) Engineering/ IT Specialisation (Level 4)
5. Obtain development skills with regard to a core set of technologies
6. Understand important nonfunctional requirements of web application such as performance, security and more.
7. Understand various ways of exposing certain functionalities as services to be consumed by other applications
8. Be able to understand, investigate and identify various security issues related to web application development.
Assessment Methods:
# Name Group Weight Due Week Outcomes
1 Assignment 1* No 10.00 Week 4 4, 5,
2 Quiz No 15.00 Week 8 1, 4, 5,
3 Assignment 2* Yes 25.00 Week 11 1, 2, 3, 4, 5, 6, 7, 8,
4 Final Exam No 50.00 Exam Period 1, 2, 4, 5, 6, 7, 8,
Assessment Description: * indicates an assessment task which must be repeated if a student misses it due to special consideration.

Assignment 1: individual client-side development.

Quiz: 60-minute written/online quiz held during lecture time. Covers all lecture and tutorial materials of previous weeks.

Assignment 2: group development project, students are expected to develop a web application with multiple components and third-party services.

Final Exam: Exam

You must get 40% in the final exam to pass the unit, regardless of the sum of your individual marks.

There may be statistically defensible moderation when combining the marks from each component to ensure consistency of marking between markers, and alignment of final grades with unit outcomes.

The late penalty for assignment 1 and 2 is 5% per day. Assignments more than 10 days late get 0.
Assessment Feedback: Tutors will provide students with feedback in different forms; during tutorial/lab work, during assignment demos and/or in-writing or through the online learning platform.
Grading:
Grade Type Description
Standards Based Assessment Final grades in this unit are awarded at levels of HD for High Distinction, DI (previously D) for Distinction, CR for Credit, PS (previously P) for Pass and FA (previously F) for Fail as defined by University of Sydney Assessment Policy. Details of the Assessment Policy are available on the Policies website at http://sydney.edu.au/policies . Standards for grades in individual assessment tasks and the summative method for obtaining a final mark in the unit will be set out in a marking guide supplied by the unit coordinator.
Minimum Pass Requirement It is a policy of the School of Computer Science that in order to pass this unit, a student must achieve at least 40% in the written examination. For subjects without a final exam, the 40% minimum requirement applies to the corresponding major assessment component specified by the lecturer. A student must also achieve an overall final mark of 50 or more. Any student not meeting these requirements may be given a maximum final mark of no more than 45 regardless of their average.
Policies & Procedures: IMPORTANT: School policy relating to Academic Dishonesty and Plagiarism.

In assessing a piece of submitted work, the School of Computer Science may reproduce it entirely, may provide a copy to another member of faculty, and/or to an external plagiarism checking service or in-house computer program and may also maintain a copy of the assignment for future checking purposes and/or allow an external service to do so.

Other policies

See the policies page of the faculty website at http://sydney.edu.au/engineering/student-policies/ for information regarding university policies and local provisions and procedures within the Faculty of Engineering and Information Technologies.
Recommended Reference/s: Note: References are provided for guidance purposes only. Students are advised to consult these books in the university library. Purchase is not required.
  • Fundamentals of Web Development
  • MEAN Web Development

Note that the "Weeks" referred to in this Schedule are those of the official university semester calendar https://web.timetable.usyd.edu.au/calendar.jsp

Week Description
Week 1 Introduction, how the web works
Week 2 Brief Introduction to HTML and CSS
Week 3 JavaScript: Client Side Scripting
Week 4 Browser and Rendering Process
Assessment Due: Assignment 1*
Week 5 Server-side development with node.js and express
Week 6 Sessions and Routes - MVC Implementation
Week 7 Connecting to Database
Week 8 Client-side Framework (introduction)
Assessment Due: Quiz
Week 9 Client-side Framework (cont.)
Week 10 Web Services
Week 11 Web Application Security
Assessment Due: Assignment 2*
Week 12 Industry Speakers
Week 13 Review, Exam Structure
STUVAC (Week 14) Self Study
Exam Period Self Study
Assessment Due: Final Exam

Course Relations

The following is a list of courses which have added this Unit to their structure.

Course Year(s) Offered
Bachelor of Advanced Computing/Bachelor of Commerce 2018, 2019, 2020
Bachelor of Advanced Computing/Bachelor of Science 2018, 2019, 2020
Bachelor of Advanced Computing/Bachelor of Science (Health) 2018, 2019, 2020
Bachelor of Advanced Computing/Bachelor of Science (Medical Science) 2018, 2019, 2020
Bachelor of Advanced Computing (Computational Data Science) 2018, 2019, 2020
Bachelor of Advanced Computing (Computer Science Major) 2018, 2019, 2020
Bachelor of Advanced Computing (Information Systems Major) 2018, 2019, 2020
Bachelor of Advanced Computing (Software Development) 2018, 2019, 2020
Bachelor of Computer Science and Technology (Honours) 2015, 2016, 2017
Bachelor of Computer Science and Technology (Honours) 2014 2013, 2014
Bachelor of Information Technology 2015, 2016, 2017
Bachelor of Information Technology/Bachelor of Arts 2015, 2016, 2017
Bachelor of Information Technology/Bachelor of Commerce 2015, 2016, 2017
Bachelor of Information Technology/Bachelor of Medical Science 2015, 2016, 2017
Bachelor of Information Technology/Bachelor of Science 2015, 2016, 2017
Bachelor of Information Technology (Computer Science) 2014 and earlier 2011, 2012, 2013, 2014
Information Technology (Computer Science)/Arts 2012, 2013, 2014
Information Technology (Computer Science) / Commerce 2012, 2013, 2014
Information Technology (Computer Science) / Medical Science 2012, 2013, 2014
Information Technology (Computer Science) / Science 2012, 2013, 2014
Information Technology (Computer Science) / Law 2012, 2013, 2014
Bachelor of Information Technology (Information Systems) 2014 and earlier 2013, 2014
Information Technology (Information Systems)/Arts 2012, 2013, 2014
Information Technology (Information Systems) / Commerce 2013, 2014
Information Technology (Information Systems) / Medical Science 2012, 2013, 2014
Information Technology (Information Systems) / Science 2012, 2013, 2014
Information Technology (Information Systems) / Law 2012, 2013, 2014
Bachelor of Information Technology/Bachelor of Laws 2015, 2016, 2017
Graduate Certificate in Information Technology 2015, 2016, 2017, 2018, 2019, 2020
Graduate Certificate in Information Technology Management 2015, 2016, 2017, 2018, 2019, 2020
Graduate Diploma in Computing 2015, 2016, 2017, 2018, 2019, 2020
Graduate Diploma in Information Technology 2015, 2016, 2017, 2018, 2019, 2020
Graduate Diploma in Information Technology Management 2015, 2016, 2017, 2018, 2019, 2020
Graduate Certificate in Information Technology (till 2014) 2012, 2013, 2014
Graduate Diploma in Information Technology (till 2014) 2012, 2013, 2014
Master of Engineering 2014, 2015, 2016, 2017, 2018, 2019, 2020
Master of Information Technology 2015, 2016, 2017, 2018, 2019, 2020
Master of Information Technology Management 2015, 2016, 2017, 2018, 2019, 2020
Master of IT/Master of IT Management 2015, 2016, 2017, 2018, 2019, 2020
Master of Information Technology (till 2014) 2014

Course Goals

This unit contributes to the achievement of the following course goals:

Attribute Practiced Assessed
(6) Communication and Inquiry/ Research (Level 3) No 24.5%
(7) Project and Team Skills (Level 2) No 2.5%
(5) Interdisciplinary, Inclusiveness, Influence (Level 4) No 0%
(4) Design (Level 4) No 18.25%
(2) Engineering/ IT Specialisation (Level 4) No 54.75%
(3) Problem Solving and Inventiveness (Level 4) No 0%
(1) Maths/ Science Methods and Tools (Level 4) No 0%

These goals are selected from Engineering & IT Graduate Outcomes Table 2018 which defines overall goals for courses where this unit is primarily offered. See Engineering & IT Graduate Outcomes Table 2018 for details of the attributes and levels to be developed in the course as a whole. Percentage figures alongside each course goal provide a rough indication of their relative weighting in assessment for this unit. Note that not all goals are necessarily part of assessment. Some may be more about practice activity. See Learning outcomes for details of what is assessed in relation to each goal and Assessment for details of how the outcome is assessed. See Attributes for details of practice provided for each goal.