RMIT Classification: Trusted
,
Page 1 of 7
School of Science
COSC2626/2640 Cloud Computing
Assignment 2
Assessment Type: Group assignment. Submit online via Canvas→Assignments→Assignment 2. Marks awarded for meeting
requirements as closely as possible. Clarifications/updates may be made via announcements/relevant discussion forums.
Due date: 11:59pm, 29
th January 2021 Please check Canvas→Assignments→Assignment 2 for the most up to date
information.
As this is a major assignment in which you demonstrate your understanding, a university standard late penalty of 10% per
each working day applies for up to 5 working days late, unless special consideration has been granted.
Weighting: 50 marks
1. Overview
Assignment
2 will contain 50% of total assessment for this course. It should be a
project by using cloud platforms and technologies.
Some sample reports (rated as excellent or good) from previous year have been provided to get an idea about the difficulty and
depth of the project. You are free to choose any programming language, any cloud platform and any services/API you want to
use.
You have to form a group of two. Discuss your proposal with your tutor.
2. Assessment Criteria
This assessment will develop your ability to:
1. Design and develop a highly scalable application by applying the knowledge of distributed architecture and multiple cloud
platforms and services
2. Develop a professional project report
3. Write a user’ manual to introduce your product
3. Learning Outcomes
This assessment is relevant to the following Learning Outcomes:
• Develop and deploy cloud application using popular cloud platforms,
• Design and develop highly scalable cloud-based applications by creating and configuring virtual machines on the cloud and
building private cloud.
• Explain and identify the techniques of big data analysis in cloud.
• Compare, contrast, and evaluate the key trade-offs between multiple approaches to cloud system design, and Identify
appropriate design choices when solving real-world cloud computing problems.
• Write comprehensive case studies analysing and contrasting different cloud computing solutions.
• Make recommendations on cloud computing solutions for an enterprise.
RMIT Classification: Trusted
,
Page 2 of 7
4. Assessment details
Criteria/Project requirement
1.
You must have a distributed model for your application. You can use
distributed system concept for your application as discussed in
Lecture 2. (e.g. separate component for processing and storage/ Multinode cluster/ multiple processing servers/ multiple cloud
features
/ Integration of multiple REST APIs/ IoT/ Edge computing/ Fog
Computing/Publish subscriber model/ Peer to Peer system/
Push notifications).
2.
The use of Google/AWS cloud services such as Hadoop MapReduce,
BigQuery, SQS, Microservices, Endpoints, API Gateway,
CloudWatch,
Lambda, Machine Learning, real-time data analysis, etc. will make your
project interesting. You may not learn all of the
services but if you learn them by yourself, it will be highly appreciated as well as helpful for your projects.
3. You should take advantage of Google/AWS Cloud storage (e.g. S3, Google Cloud Storage) and Google/AWS Cloud Datastore (e.g.
Google datastore, Amazon DynamoDB, MongoDB or Relational Database Services) in your project.
4.
You should have a nice client side visualization (e.g. a
webpage/website or a mobile app). If you have any kind of data analysis
you
should interpret your result nicely using tabular and/or
graphical format. For web application you should to deploy your
application
either in Google cloud or AWS cloud.
5. Your
application must have at least 5 high-level user stories that you will
complete for the assignment. Note an admin user will
not be
considered a valid user for a user story. Though you may still need to
build supporting tools to administer your solution.
6.
Students in a group should sign a contribution agreement form to
acknowledge each member’s contribution portion in the project.
The contribution agreement form must be signed by all group members, scanned, and attached with the report otherwise your
assignment
cannot be marked. If fewer contributions are identified by one student
then he/she will receive less mark than his/her
group-mate.
Project Options
Option 1
Development of a cloud application using your own idea and strength.
Option 2
Development of a cloud application using idea suggested by your tutor based on your interest and strength.
Option 3
You
may refer to Assignment 2 Supporting Information.pdf, where several
applications were discussed (the projects are from previous
years). You may choose one of them as your project or somewhat similar.
5. Referencing guidelines
What: All submitted contents must be your own. If you have used sources of information other than the contents directly under
Canvas→Modules, you must give acknowledge the sources and give references using IEEE referencing style.
Where: Add a code comment near the work to be referenced and include the reference in the IEEE style.
How:
To generate a valid IEEE style reference, please use the citethisforme
tool if unfamiliar with this style. Add the detailed
reference before any relevant code (within code comments).
RMIT Classification: Trusted
,
Page 3 of 7
6. Submission, Demonstration, Report and Presentation
You
need to submit a report and all materials related to your project. The
deadline of submission of your Assignment-2 in Canvas is
29th
January 11:59 PM. If you submit after that it will be considered as late
submission. You will be penalised 10% of your total
mark per
working day for late submission. You will not get your mark if you do
not submit your project materials and report. If you
work in a group only one submission of a group member is fine.
During submission you will need to provide the following content in a .zip file.
1.
Your report in word document or pdf extension. You can make your own
format or follow the sample reports that has been provided
in Canvas.
The report should contain the following materials
a. Signed Contribution Agreement: of all team members (Must be signed by all the members, scanned, and attached
otherwise your assignment cannot be marked) -- A temple can be found from Appendix.
b.
Links: Live url of your project (if any), repository url
(github/bitbucket/google drive) of your source code (if any), public
dataset links of your project (if any).
c. Summary: The objective/purpose of your project.
d. Introduction: Introduce your project such as:
i. What are the motivations behind your idea?
ii. What it does?
iii. Why it is required?
iv. How it can be used as real-life application?
v. The advantages/positive/new things of your application.
e. Related work: Refer some related works similar to your application.
f. Software Design/Architecture
i. A high level architectural diagram that shows the communication between different cloud components used in your
project and purpose of using those components.
ii. Description of your dataset/data structure/APIs/sensors you used for your project (if any) [use figure if required]
g. Implementation - Developer Manual: A step-by-step guideline to reproduce your project [use figure if required] and make
it
live. This is like our tutorial sheet. For known/general description
(e.g. creating and MySQL RDS instance in AWS, deploying
project in Elastic Beanstalk, deploying project in Google cloud) you can refer to any web link directly. You can also refer to
tutorial sheet if you have similar steps in your description (e.g. deploy application in Google cloud).
h. A small user manual: A quick overview of how to use your application.
i. References: Important references/website links that you use to develop your application.
j. Video (optional): A video demonstration of your application (provide a YouTube link in the report).
2. Put all the images you have used in your report in a folder name doc_images.
3. Put all the source code of your project in a folder named code. If source code is greater than 5 MB then provide a
google_drive/dropbox/github share link in a text file (name it code.txt). to download your source code.
4. Put runnable/deployable files (if any e.g. .war, .zip, .jar) in a folder named deploy
5.
Put all the data/sql tables/sql script (if any) in a folder named data.
If data files are too large then provide a link to download
your data in a text file (name it data.txt)
6. A readme.txt with name and student number of team members, a short description of your project and the public link to
access your project (if any).
You
must demo your project to your tutor by making appointment with your
tutor. All demonstration will be completed by week 8th
February.
There will be penalty if you fail to complete and demonstrate your work
by then. All team members must present during
demo time and explain individual contributions. The demo is around 20 minutes (including project introduction, app demo and
RMIT Classification: Trusted
,
Page 4 of 7
Q&A) for each team. Keep everything ready and make your application live during your demo.
During
demonstration you will need to use presentation slides to introduce
your projects (no more than 10 pages). The presentation
slides should include the presentable information of the following sections of your report:
a. Summary (1 page)
b. Introduction (1 page)
c. Related work (1 page)
d. Software Design/Architecture (1 page)
e. Implementation (2-6 pages)
7. Academic integrity and plagiarism (standard warning)
Academic
integrity is about honest presentation of your academic work. It means
acknowledging the work of others while developing
your own insights, knowledge and ideas. You should take extreme care that you have:
• Acknowledged words, data, diagrams, models, frameworks and/or ideas of others you have quoted (i.e. directly copied),
summarised, paraphrased, discussed or mentioned in your assessment through the appropriate referencing methods,
•
Provided a reference list of the publication details so your reader can
locate the source if necessary. This includes material
taken from Internet sites.
If
you do not acknowledge the sources of your material, you may be accused
of plagiarism because you have passed off the work and
ideas of another person without appropriate referencing, as if they were your own.
RMIT
University treats plagiarism as a very serious offence constituting
misconduct. Plagiarism covers a variety of inappropriate
behaviours, including:
• Failure to properly document a source
• Copyright material from the internet or databases
• Collusion between students
For further information on our policies and procedures, please refer to the University website.
8. Assessment declaration
When you submit work electronically, you agree to the assessment declaration.
,
RMIT Classification: Trusted
Page 5 of 7
9. Rubric/assessment criteria for marking
Criteria Ratings
Project idea and
project formulation.
Selection of
appropriate
technologies
2 Pts
Project idea well formulate with selection of
appropriate technologies
1 Pts
Project idea partially formulated with selection of
most technologies being appropriate
0 Pts
Project idea not well formulated (with major issues)
with selection of most technologies being
inappropriate
Skill development in
learning new tools and 3 Pts 2 Pts 1 Pts 0 Pts
technologies for Demonstration of excellent Demonstration of good knowledge Demonstration of poor knowledge No marks
project
completion knowledge in learning new tools and (with minor issues) in
learning new (with major issues) in learning new
technologies for project completion tools and technologies for project tools and technologies for project
completion completion
Appropriate utilization
of cloud
tools/technologies/ser
vices in your project
27 Pts
Appropriate
utilization and
full
24 Pts
Appropriate
utilization
and full
21 Pts
Appropriate
utilization and
full
18 Pts
Appropriate
utilization and
full
15 Pts
Appropriate
utilization and full
implementation
12 Pts
Appropriate
utilization and full
implementation
9 Pts
Appropriate
utilization and
full
0 Pts
No marks
implementation implementat implementatio implementation of 4 cloud of 3 cloud implementation
of at least 8 ion of 7 n of 6 cloud of 5 cloud services in your services in your of 2 cloud
cloud services cloud services in services in your project according project according services in your
in your project services in your project project to Criteria 2-4 to Criteria 2-4 project
according to your project according to according to Employing 2 types Employing 1 types according to
Criteria 2-4 according to Criteria 2-4 Criteria 2-4 of cloud services of cloud services Criteria 2-4
Employing at Criteria 2-4 Employing 4 Employing 3 from Criterion 2, at from Criterion 2, at Employing 1 type
least 6 types of Employing 5 types of cloud types of cloud least 2 types of least 2 types of of cloud service
cloud services types of services from services from cloud storage from cloud storage from from Criterion 2,
from Criterion 2, cloud Criterion 2, at Criterion 2, at Criterion 3, and a Criterion 3, and a 1 type of cloud
at least 2 types services from least 2 types of least 2 types of cloud hosted cloud hosted storage from
of cloud storage Criterion 2, at cloud storage cloud storage website for website for Criterion 3, and a
from Criterion 3, least 2 types from Criterion from Criterion 3, Criterion 4 Criterion 4 cloud hosted
and a cloud of cloud 3, and a cloud and a cloud Or Or website for
hosted website storage from hosted website hosted website Employing 3 types Employing 2 types Criterion 4
for Criterion 4 Criterion 3, for Criterion 4 for Criterion 4 of cloud services of cloud services
and a cloud Or Or from Criterion 2, at from Criterion 2, at
hosted Employing 5 Employing 4 least 1 type of least 1 type of
website for types of cloud types of cloud cloud storage from cloud storage from
Criterion 4 services from services from Criterion 3, and a Criterion 3, and a
Or Criterion 2, at Criterion 2, at cloud hosted cloud hosted
Employing 6 least 2 type of least 1 type of website for website for
types of cloud storage cloud storage Criterion 4 Criterion 4
cloud from Criterion from Criterion 3,
,
RMIT Classification: Trusted
Page 6 of 7
Criteria Ratings
services from
Criterion 2, at
least 1 type
of cloud
storage from
Criterion 3,
and a cloud
hosted
website for
Criterion 4
3, and a cloud
hosted website
for Criterion 4
and a cloud
hosted website
for Criterion 4
Project architecture
and the distribution of
your components
4 Pts
Distributed project architecture fully utilized
Separate processing and storage components + one
more type of distributed architecture from Criterion 1
2 Pts
Distributed project architecture partially utilized
Separate processing and storage components
0 Pts
Distributed project architecture not utilised
Report
8 Pts
Well-written report with all
the required parts and
substantial details
6 Pts
Report with all the required
parts and substantial details
4 Pts
Report with all the required
parts and some details
2 Pts
Report with some of the
required parts and some
details
0 Pts
No marks
Presentation slides
3 Pts
Well-written presentation
slides with all the required
parts and substantial details
and visual aids
2 Pts
Presentation slides with all the
required parts and some details
and visual aids
1 Pts
Presentation sides with some of
the required parts and some
details
0 Pts
No marks
Presentation and
communication skills
3 Pts
Clearly present the slides
and actively respond to all
the queries from examiner
with detailed answers
2 Pts
Clearly present the slides and
actively respond to most of the
queries from examiner with
answers
1 Pts
Present the slides and actively
respond to some of the queries
from examiner with answers
0 Pts
No marks
Total points: 50
Page 7 of 7
,
RMIT Classification: Trusted
Appendix: Student Contribution Agreement
Project title here
Group name here
Student Name: Student Name:
Student ID: Student ID:
Contributions:
1.
2.
Contributions:
1.
2.
Contribution Percentage: Contribution Percentage:
By signing below, I certify all information is true
and correct to the best of my knowledge.
Signature:
Date:
By signing below, I certify all information is true
and correct to the best of my knowledge.
Signature:
Date: