Course overview
- Study period
- Semester 2, 2024 (22/07/2024 - 18/11/2024)
- Study level
- Undergraduate
- Location
- St Lucia
- Attendance mode
- In Person
- Units
- 2
- Administrative campus
- St Lucia
- Coordinating unit
- Elec Engineering & Comp Science School
As a major computing infrastructure, Cloud Computing provides the modern on-demand services for management and usage of large and shared computing resources including storage, computations and communications. This course will cover in-depth knowledge for Cloud Computing and the practical experience in designing and implementing large-scale and composite business web applications on Cloud Computing platform.
This course covers a wide range of cloud computing-related X-as-a-Service technologies, including Software-as-a-Service (SaaS), Platform-as-a-Service (PaaS), Infrastructure-as-a-Service (IaaS), Data-as-a-Service (DaaS), and related technologies such as Cloud Computing Ecosystem. For delivering scalable computing services in a pay-as-you-go model via the Internet, Cloud Computing approaches are used to deal with effective and efficient development and deployment problems of web services and information systems with particular focus on "big data" challenges that arise across a variety of domains.
Cloud computing provides modern on-demand services for managing and using extensive and shared computing resources, including storage, computations and communications. This course will cover in-depth knowledge of Cloud Computing and practical experience in designing and implementing large-scale and composite business web applications on Cloud Computing platforms through lectures, tutorials, and laboratory exercises. You will learn the concepts of modern cloud computingᅠusing various tools and techniques, such as Docker, Kubernetes, NoSQL, Vector databases, and cloud storage. Advanced distributed computing systems such as MapReduce and Apache Spark are also included in the course. The lab sessions cover cloud application development and deployment and data processing on the cloud using open-source tools in the real-world cloud platform. Based on student feedback, the course now includes a new topic: vector database, addressing the needs of the next generation of AI applications. The tutorial and practical sessions have been newly designed to reflect this addition.
Course requirements
Prerequisites
You'll need to complete the following courses before enrolling in this one:
CSSE1001 and INFS1200
Incompatible
You can't enrol in this course if you've already completed the following:
INFS3204 or INFS7204 or INFS7208
Course contact
Course staff
Lecturer
Timetable
The timetable for this course is available on the UQ Public Timetable.
Aims and outcomes
This course teaches the concepts and technologies for the Cloud Computing. It provides a comprehensive and systematic understanding to theᅠCloudᅠComputing technologies and practical experience in designing large-scale composite web applications over a cloud computing platform.
Learning outcomes
After successfully completing this course you should be able to:
LO1.
Describe the benefit of using X-as-a-Service (XaaS) in Cloud Computing, such as SaaS (Software as a Service), IaaS (Infrastructure as a Service), and PaaS (Platform as a Service) in developing modern information systems.
LO2.
Interpret the key features and building blocks of Cloud-Computing based information systems.
LO3.
Build applications based on Cloud Computing architecture and tools.
LO4.
Implement Software-as-a-Service (SaaS) with a recommended Cloud Computing platform.
LO5.
Demonstrate and solve the performance and technical issues in Cloud Computing such as cloud storage, cloud data management, scalability, privacy preservation and security.
LO6.
Explain the ecosystem of Cloud Computing.
LO7.
Explain implementation techniques of Cloud Computing such as clusters and in-memory computing.
LO8.
Discuss the roles played by Cloud Computing in Big Data Analytics and identify the trends in Cloud Computing.
Assessment
Assessment summary
Category | Assessment task | Weight | Due date |
---|---|---|---|
Computer Code | Individual Programming Tasks | 30% |
Programming Task 1 23/08/2024 3:00 pm Programming Task 2 13/09/2024 3:00 pm Programming Task 3 11/10/2024 3:00 pm |
Project | Individual Project Implementation | 20% |
18/10/2024 3:00 pm |
Examination |
Final Examination
|
50% |
End of Semester Exam Period 2/11/2024 - 16/11/2024 |
A hurdle is an assessment requirement that must be satisfied in order to receive a specific grade for the course. Check the assessment details for more information about hurdle requirements.
Assessment details
Individual Programming Tasks
- Mode
- Written
- Category
- Computer Code
- Weight
- 30%
- Due date
Programming Task 1 23/08/2024 3:00 pm
Programming Task 2 13/09/2024 3:00 pm
Programming Task 3 11/10/2024 3:00 pm
- Learning outcomes
- L03, L05, L06, L07, L08
Task description
Programming assignments are used to assess the practical skills of students on non-trivial but reasonably well-defined problems. You are required to complete three programming tasks, and more details will be available on the course website.
Submission guidelines
Online Submission.
Deferral or extension
You may be able to apply for an extension.
The maximum extension allowed is 7 days. Extensions are given in multiples of 24 hours.
Marked assignments with feedback and/or detailed solutions with feedback will be released to students within 14-21 days, where the earlier time frame applies if there are no extensions.
Late submission
A penalty of 10% of the maximum possible mark will be deducted per 24 hours from time submission is due for up to 7 days. After 7 days, you will receive a mark of 0.
Individual Project Implementation
- Mode
- Written
- Category
- Project
- Weight
- 20%
- Due date
18/10/2024 3:00 pm
- Learning outcomes
- L02, L03, L04, L05, L07, L08
Task description
The goal of this assignment is for you to implement a Cloud Computing System to demonstrate your ability to set up scalable platforms, use scalable databases, and create cloud computing applications. A project report (5%) and the implementation code (15%) should be submitted. The details of the assignment requirement will be given in the individual project specification file on Blackboard.
Submission guidelines
Online Submission.
Deferral or extension
You may be able to apply for an extension.
The maximum extension allowed is 7 days. Extensions are given in multiples of 24 hours.
Marked assignments with feedback and/or detailed solutions with feedback will be released to students within 14-21 days, where the earlier time frame applies if there are no extensions.
Late submission
A penalty of 10% of the maximum possible mark will be deducted per 24 hours from time submission is due for up to 7 days. After 7 days, you will receive a mark of 0.
Final Examination
- Hurdle
- Mode
- Written
- Category
- Examination
- Weight
- 50%
- Due date
End of Semester Exam Period
2/11/2024 - 16/11/2024
- Learning outcomes
- L01, L05, L06, L07, L08
Task description
The final exam assesses theoretical concepts and basic programming skills introduced in this course.
Hurdle requirements
To pass this course, a minimum of 50% (25 marks) must be obtained in the final exam.Exam details
Planning time | 10 minutes |
---|---|
Duration | 120 minutes |
Calculator options | (In person) Casio FX82 series only or UQ approved and labelled calculator |
Open/closed book | Closed Book examination - no written materials permitted |
Exam platform | Paper based |
Invigilation | Invigilated in person |
Submission guidelines
Deferral or extension
You may be able to defer this exam.
Course grading
Full criteria for each grade is available in the Assessment Procedure.
Grade | Cut off Percent | Description |
---|---|---|
1 (Low Fail) | 0 - 19 |
Absence of evidence of achievement of course learning outcomes. |
2 (Fail) | 20 - 44 |
Minimal evidence of achievement of course learning outcomes. |
3 (Marginal Fail) | 45 - 49 |
Demonstrated evidence of developing achievement of course learning outcomes |
4 (Pass) | 50 - 64 |
Demonstrated evidence of functional achievement of course learning outcomes. |
5 (Credit) | 65 - 74 |
Demonstrated evidence of proficient achievement of course learning outcomes. |
6 (Distinction) | 75 - 84 |
Demonstrated evidence of advanced achievement of course learning outcomes. |
7 (High Distinction) | 85 - 100 |
Demonstrated evidence of exceptional achievement of course learning outcomes. |
Additional course grading information
To pass this course, a minimum of 50% (25 marks) must be obtained in the final exam. Note that your final percentage will be rounded to the nearest whole number (e.g. 84.5% is a 7), and the final marks are calculated as a simple accumulation of all marks obtained in this semester.
Supplementary assessment
Supplementary assessment is available for this course.
Additional assessment information
Use of AI
Individual Programming Tasks/Individual Project Implementation: This assessment task evaluates students' abilities, skills and knowledge without the aid of generative Artificial Intelligence (AI) or Machine Translation (MT). Students are advised that the use of AI technologies to develop responses is strictly prohibited and may constitute student misconduct under the Student Code of Conduct.
Learning resources
You'll need the following resources to successfully complete the course. We've indicated below if you need a personal copy of the reading materials or your own item.
Library resources
Find the required and recommended resources for this course on the UQ Library website.
Learning activities
The learning activities for this course are outlined below. Learn more about the learning outcomes that apply to this course.
Filter activity type by
Please select
Learning period | Activity type | Topic |
---|---|---|
Multiple weeks From Week 1 To Week 13 |
Lecture |
Lectures Lectures will cover 1). Cloud Computing concepts, technologies, and applications; 2). Virtualisation technologies and Docker; 3). Apache Spark framework, programming, and applications; 4). Distributed file systems; 5). Google file system and BigTable; 6). Databases in Cloud Computing; 7). Hadoop and MapReduce; 8). Cloud Computing advanced topics: networking, load balancing, security, and privacy. The lectures will be delivered on campus. Learning outcomes: L01, L02, L03, L04, L05, L06, L07, L08 |
Multiple weeks From Week 2 To Week 12 |
Tutorial |
Tutorials Weekly tutorials aim to enhance the understanding of lectures. Should the on-campus tutorial not be possible, the backup plan consists of an online session. Learning outcomes: L01, L05, L06, L07, L08 |
Practical |
Practical Weekly practicals aim to enhance the learned technologies including Docker, NoSQL, Hadoop, and Spark programming on Google Cloud Platform (GCP) and develop the individual project. Weekly tutorials aim to enhance the understanding of lectures. Should the on-campus practical not be possible, the backup plan consists of an online session. Learning outcomes: L03, L05, L06, L07, L08 |
Policies and procedures
University policies and procedures apply to all aspects of student life. As a UQ student, you must comply with University-wide and program-specific requirements, including the:
- Student Code of Conduct Policy
- Student Integrity and Misconduct Policy and Procedure
- Assessment Procedure
- Examinations Procedure
- Reasonable Adjustments - Students Policy and Procedure
Learn more about UQ policies on my.UQ and the Policy and Procedure Library.
School guidelines
Your school has additional guidelines you'll need to follow for this course: