$29
To avoid any additional charges for resource consumption - Delete the GCP resources, and AWS services after fulfilling the assignment submission requirements.
Objective:
This assignment covers concepts of containerization and Serverless components of cloud computing. The primary objective of this assignment is to introduce you to the cloud computing containerization application using Docker and creation of a chatbot using Lex.
Plagiarism Policy:
• This assignment is an individual task. Collaboration of any type amounts to a violation of the academic integrity policy and will be reported to the AIO.
• Content cannot be copied verbatim from any source(s). Please understand the concept and write in your own words. In addition, cite the actual source. Failing to do so will be considered as plagiarism and/or cheating.
• The Dalhousie Academic Integrity policy applies to all material submitted as part of this course. Please understand the policy, which is available at: https://www.dal.ca/dept/university_secretariat/academic-integrity.html
Assignment Rubric - based on the discussion board rubric (McKinney, 2018)
Excellent (25%)
Proficient (15%)
Marginal (5%)
Unacceptable (0%)
Problem # where
applied
Completeness
All required tasks
Submission
Some tasks are
Incorrect and
Part A
including
are completed
highlights tasks
completed, which
irrelevant
Citation
completion.
are disjoint in
However, missed
nature.
some tasks in
between, which
created a
disconnection
Correctness
All parts of the
Most of the given
Most of the given
Incorrect and
Part B
given tasks are
tasks are correct
tasks are incorrect.
unacceptable
correct
However, some
The submission
portions need minor
requires major
modifications.
modifications.
Novelty
The submission
The submission
The submission
There is no novelty
Part A
contains novel
lacks novel
does not contain
contribution in key
contributions. There
novel
segments, which is
are some evidence of
contributions.
a clear indication
novelty, however, it
However, there is
of application
is not significant
an evidence of
knowledge.
some effort.
Fall 2021 saurabh.dey@dal.ca
Clarity
The written or
graphical
materials, and
developed
applications
provide a clear
picture of the
concept and
highlights the
clarity.
The written or
graphical materials,
and developed
applications do not
show clear picture of
the concept. There is
room for
improvement
The written or graphical materials, and developed applications fail to prove the clarity. Background knowledge is needed.
Failed to prove the clarity. Need proper background knowledge to perform the tasks.
Part B
Citation:
McKinney, B. (2018). The impact of program-wide discussion board grading rubrics on students’ and faculty satisfaction. Online Learning, 22(2), 289-299.
Tasks:
This assignment has 2 parts. Part A is related to coding, and development. Part B is related to exploring a service.
Part A. Build, deploy, and run a Containerized Application using GCP.
Using GCP create and validate an online meeting account.
take screenshots at every step and submit as part of the PDF:
a. Create three containers using Docker. These containers are responsible for the backend logic. The database you will be using here is, Firestore
b. Container #1 is responsible for accepting registration details from frontend and store it in backend database. (image 1)
c. Container #2 is responsible for validating the Login information (image 2)
d. Once a user is logged in – the state changes to online, and it appears on the front page (image 3)
e. Your database should contain only 2 arrays. One to contain registration data, another to contain user state (online, offline, timestamp etc.) information.
f. Container #3 is responsible for extracting state information from database. E.g. who is online. You need to maintain the session from login to logout. The session must expire after clicking the logout, which should update the state item in the Firestore database.
g. Once the docker images are built, you need to run those using Google Cloud Run.
h. In order complete the tasks, and perform interaction, you need build 3 simple web pages (or 1), using any technology of your choice.
i. Write test case to test your application, and perform testing
j. You need to study Google Cloud Run, GCR, Docker Container documentations, and write a summary within 1 page explaining how you have used these technologies in your application.
Fall 2021 saurabh.dey@dal.ca
Docker
Name: <text field>
Email: <email field>
Password: <password field>
Select Topic: <dropdown> [Register]
Docker
Login: <accept id>
Password: <password field>
[Login]
Image 1
Image 2
Docker
Hi, <user> you are logged in
[Logout]
Here are other users who are
online
<user1>
<user2>
GCP
Firestore
Image 3
Part A - Submission requirement:
For (a to h), submit screenshots of every steps. Please do not exclude any steps. Submit screenshots of empty and populated Firestore database
For (a to h), submit your program files (Source code on Gitlab) as well.
However, from the source code - add the important methods (pseudocode), or program instructions as part of the pdf. E.g. Login Validation method etc.
For (i), add the test cases and screenshots of tests in the pdf For (j), add the summary as part of the pdf file
Part B. Building a Chatbot:
Using AWS Educate account perform the following:
take screenshots at every step
a. Using AWS Lex - Create a chatbot on OrderFood
b. Consider it as a pizza place. (assumptions: they have 3 types of regular size pizzas –veg, cheese, pepperoni.
c. The chatbot can accept information on food delivery or pickup
d. If it is delivery, then customer address, delivery date, and time is important
e. If it is takeaway, then assuming same day, it should ask arrival time of customer.
Fall 2021 saurabh.dey@dal.ca
E.g.
Utterances – “I want to place an order for pickup”
Prompts - “When are you coming to get your parcel?”
Slots – “I will come around noon”
Prompts – “What do you want today?”
Slots – “cheese pizza”
Prompts – “How many?”
Slots – “2”
Fulfillment –
“You have ordered 2 regular cheese pizza, and you will be arriving at 12:00 pm” “Yes”
“Your order has been placed successfully”
Part B - Submission requirement:
A pdf file with the screenshots of AWS Lex chatbot creation, customization, test etc.
Paragraph explaining how the operation is performed.
Fall 2021 saurabh.dey@dal.ca