Students

COMP3120 – Advanced Web Development

2022 – Session 2, In person-scheduled-weekday, North Ryde

General Information

Download as PDF
Unit convenor and teaching staff Unit convenor and teaching staff Convenor, Lecturer
Kate Stefanov
Contact via Email
By appointment
Lecturer
Steve Cassidy
Contact via Email
By appointment
Credit points Credit points
10
Prerequisites Prerequisites
130cp at 1000 level or above including COMP2110 or COMP249
Corequisites Corequisites
Co-badged status Co-badged status
Unit description Unit description

This unit develops on the student's basic understanding of web technologies to look at the tools and techniques used in modern web development. Topics will include the software development lifecycle in web development, the use of continuous integration, deployment of web applications, the use and provision of API services, security and e-commerce. The unit is practically focused but aims to equip students to be able to adapt to the rapidly changing landscape of tools in web development.

Important Academic Dates

Information about important academic dates including deadlines for withdrawing from units are available at https://www.mq.edu.au/study/calendar-of-dates

Learning Outcomes

On successful completion of this unit, you will be able to:

  • ULO1: Demonstrate an understanding of the architecture of web applications and the technologies used to build them
  • ULO2: Evaluate alternate implementation technologies for web applications
  • ULO3: Implement a significant web application that integrates front-end and back-end components
  • ULO4: Assess the security risks in web applications
  • ULO5: Communicate clearly and effectively

General Assessment Information

The goal of the assessment in this unit is to have you complete two web application development projects in the semester and to have you reflect what you have learned about the broader web development landscape in two report submissions.   You will be working on two assessments for the whole semester (as well as completing weekly tasks).  You are encouraged to work on both of these each week rather than leaving either of them to the last minute.  Both are important and both are major learning activities as well as assessment tasks.

Workshop Hurdle

The workshop is a hurdle requirement, you must get 8 out of the possible 10 marks to pass the hurdle but you will have a total of 12 weeks where you could meet the requirement - hence you can miss at most four weeks of workshop tasks.

Group Project

Your major assessment is a group project where you will be free to design and develop a web application as a group.  You should begin thinking about this early as your proposals are due in week 7.   The assessment of this task is split between different activities including a proposal, four weekly 'sprint reports' in the workshops and a final deliverable. Details will be in iLearn. 

Late Assessment Submission Penalty

Unless a Special Consideration request has been submitted and approved, a 5% penalty (of the total possible mark) will be applied each day a written assessment is not submitted, up until the 7th day (including weekends). After the 7th day, a grade of '0' will be awarded even if the assessment is submitted. Submission time for all written assessments is set at 11:55 pm. A 1-hour grace period is provided to students who experience a technical concern.

For any late submission of time-sensitive tasks, such as scheduled tests/exams, performance assessments/presentations, and/or scheduled practical assessments/labs, students need to submit an application for Special Consideration

Assessments where Late Submissions will be accepted 

In this unit, late submissions will be accepted as follows:

  • Individual Project – YES, Standard Late Penalty applies 

  • Technology Report – YES, Standard Late Penalty applies 

  • Security Report – YES, Standard Late Penalty applies 

  • Group Project - NO, unless Special Consideration is granted 

  • Workshop Tasks - NO, unless Special Consideration is granted 

Assessment Tasks

Name Weighting Hurdle Due
Technology Report 15% No Week 7
Individual Web Development Project 20% No Week 6
Workshop Tasks 10% Yes Weekly
Security Report 15% No Week 11
Group Web Development Project 40% No Proposal Week 7; Final Week 13

Technology Report

Assessment Type 1: Report
Indicative Time on Task 2: 10 hours
Due: Week 7
Weighting: 15%

 

A report evaluating alternate web implementation tools, for example, a survey of contemporary front-end tool-kits.

 


On successful completion you will be able to:
  • Demonstrate an understanding of the architecture of web applications and the technologies used to build them
  • Evaluate alternate implementation technologies for web applications
  • Communicate clearly and effectively

Individual Web Development Project

Assessment Type 1: Programming Task
Indicative Time on Task 2: 20 hours
Due: Week 6
Weighting: 20%

 

This assignment asks you to implement a small web application using some of the tools covered in the unit. The requirements will be made available but implementation details are up to the student to develop.

 


On successful completion you will be able to:
  • Demonstrate an understanding of the architecture of web applications and the technologies used to build them
  • Evaluate alternate implementation technologies for web applications
  • Communicate clearly and effectively

Workshop Tasks

Assessment Type 1: Participatory task
Indicative Time on Task 2: 0 hours
Due: Weekly
Weighting: 10%
This is a hurdle assessment task (see assessment policy for more information on hurdle assessment tasks)

 

Each week there will be a task or question as part of the workshop that must be completed within the workshop. Your tutor will review your work in class. Each week is worth 1 mark up to a maximum of 10. This is a hurdle task, you must complete at least 8 weeks out of the total of 12 to pass the unit.

 


On successful completion you will be able to:
  • Demonstrate an understanding of the architecture of web applications and the technologies used to build them
  • Evaluate alternate implementation technologies for web applications
  • Assess the security risks in web applications
  • Communicate clearly and effectively

Security Report

Assessment Type 1: Report
Indicative Time on Task 2: 10 hours
Due: Week 11
Weighting: 15%

 

A report on web application security.

 


On successful completion you will be able to:
  • Demonstrate an understanding of the architecture of web applications and the technologies used to build them
  • Assess the security risks in web applications
  • Communicate clearly and effectively

Group Web Development Project

Assessment Type 1: Project
Indicative Time on Task 2: 50 hours
Due: Proposal Week 7; Final Week 13
Weighting: 40%

 

Students will form groups to implement a major web application. Different groups will take responsibility for different components and negotiate requirements and interfaces with each other. This will involve all stages of the development cycle from requirements gathering to deployment and testing.

 


On successful completion you will be able to:
  • Demonstrate an understanding of the architecture of web applications and the technologies used to build them
  • Evaluate alternate implementation technologies for web applications
  • Implement a significant web application that integrates front-end and back-end components
  • Assess the security risks in web applications
  • Communicate clearly and effectively

1 If you need help with your assignment, please contact:

  • the academic teaching staff in your unit for guidance in understanding or completing this type of assessment
  • the Writing Centre for academic skills support.

2 Indicative time-on-task is an estimate of the time required for completion of the assessment task and is subject to individual variation

Delivery and Resources

Classes

The majority of teaching materials for this unit will be made available online in the form of videos and linked readings.  We will post a number of videos each week and you should watch these and follow up on the readings before the weekly lecture. 

The lecture is a one hour class where we will review and discuss the content of the week.  In particular these sessions will take a broader view and look at things outside of the more practically focused course notes. You will get the most out of this session if you are prepared. Turning up without watching the videos, reading the notes and trying examples will mean you  can't take advantage of the discussion.  Make the most of our time together!

Workshops each week will run on-campus.  There will be tasks each week related to the topic we are covering.  These sessions will be practically focused and aim to support you in learning to use the chosen tools to build web applications.   These exercises are an important part of your learning, they may seem trivial but ignoring them to concentrate on the major assessment tasks will be a mistake.  There will be a mark each week associated with the workshop - either something to submit or some other way of measuring your participation.  You must complete 8 out of the possible 12 weeks to pass the unit.

Required Texts

The unit will be based on the online course:

Deep Dive Into Modern Web Development - Full Stack Open 2022

The materials provided on this site will form the foundation of this unit but we will look beyond them to study the broader landscape of web development.  In particular, while the online course covers React, students are encouraged to review and even make use of other frameworks to understand how they might meet the needs of a particular project.  

Required Technology

This unit makes use of Javascript as the core implementation technology and you should install the tools as outlined in the online course linked above.  Students may also choose to explore other web toolkits at their discretion.

We will make use of GitHub to manage source code for student projects. Students should establish a GitHub account if they don't already have one.  Use your real name for your account as it will become the basis of your portfolio and you will want to show future employers the projects you have completed.

 

Unit Schedule

The following is intended as a guide to the planned schedule for the semester.  Topics may change based on feedback from the class.

Week

Topic

Assessment

1

Background

 

2

Introducing React: Components and State

 

3

Events and Forms, using JSON APIs

 

4

Error handling, Server Side Development

Individual Project Checkpoint

5

Server integration, React Router

 

6

Token based Authentication, MongoDB

Individual Project

7

Project management, documentation, more React

Technology Report; Group Project Proposals

 

 

 

8

Front end and Back end Testing

 

9

Web Security, more authentication

Group Sprint 1

10

Github Workflows and Continuous Integration

Group Sprint 2

11

Advanced Deployment

Group Sprint 3

12

Progressive Web Apps

Group Sprint 4; Security Report

13

Professional Web Development

Group Project Final

 

 

Policies and Procedures

Macquarie University policies and procedures are accessible from Policy Central (https://policies.mq.edu.au). Students should be aware of the following policies in particular with regard to Learning and Teaching:

Students seeking more policy resources can visit Student Policies (https://students.mq.edu.au/support/study/policies). It is your one-stop-shop for the key policies you need to know about throughout your undergraduate student journey.

To find other policies relating to Teaching and Learning, visit Policy Central (https://policies.mq.edu.au) and use the search tool.

Student Code of Conduct

Macquarie University students have a responsibility to be familiar with the Student Code of Conduct: https://students.mq.edu.au/admin/other-resources/student-conduct

Results

Results published on platform other than eStudent, (eg. iLearn, Coursera etc.) or released directly by your Unit Convenor, are not confirmed as they are subject to final approval by the University. Once approved, final results will be sent to your student email address and will be made available in eStudent. For more information visit ask.mq.edu.au or if you are a Global MBA student contact globalmba.support@mq.edu.au

Academic Integrity

At Macquarie, we believe academic integrity – honesty, respect, trust, responsibility, fairness and courage – is at the core of learning, teaching and research. We recognise that meeting the expectations required to complete your assessments can be challenging. So, we offer you a range of resources and services to help you reach your potential, including free online writing and maths support, academic skills development and wellbeing consultations.

Student Support

Macquarie University provides a range of support services for students. For details, visit http://students.mq.edu.au/support/

The Writing Centre

The Writing Centre provides resources to develop your English language proficiency, academic writing, and communication skills.

The Library provides online and face to face support to help you find and use relevant information resources. 

Student Services and Support

Macquarie University offers a range of Student Support Services including:

Student Enquiries

Got a question? Ask us via AskMQ, or contact Service Connect.

IT Help

For help with University computer systems and technology, visit http://www.mq.edu.au/about_us/offices_and_units/information_technology/help/

When using the University's IT, you must adhere to the Acceptable Use of IT Resources Policy. The policy applies to all who connect to the MQ network including students.

Changes from Previous Offering

A few of the topics in the second half of the unit have been updated to cover relevant topics.

 

Changes since First Published

Date Description
17/07/2022 (1) Removed "online" in the Classes sub-section in "online weekly lecture" -- we are on campus in 2022. (2) Changed "Convener" to "Convenor" (typo)

Unit information based on version 2022.02 of the Handbook