Assignment 2 Serverless Data Processing Solution

$30.00 $24.00

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…

5/5 – (2 votes)

You’ll get a: zip file solution

 

Description

5/5 – (2 votes)

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:

  1. Create three containers using Docker. These containers are responsible for the backend logic. The database you will be using here is, Firestore

  1. Container #1 is responsible for accepting registration details from frontend and store it in backend database. (image 1)

  1. Container #2 is responsible for validating the Login information (image 2)

  1. Once a user is logged in – the state changes to online, and it appears on the front page (image 3)

  1. Your database should contain only 2 arrays. One to contain registration data, another to contain user state (online, offline, timestamp etc.) information.

  1. 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.

  1. Once the docker images are built, you need to run those using Google Cloud Run.

  1. In order complete the tasks, and perform interaction, you need build 3 simple web pages (or 1), using any technology of your choice.

  2. Write test case to test your application, and perform testing

  1. 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

  1. Using AWS Lex – Create a chatbot on OrderFood

  1. Consider it as a pizza place. (assumptions: they have 3 types of regular size pizzas –veg, cheese, pepperoni.

  1. The chatbot can accept information on food delivery or pickup

  2. If it is delivery, then customer address, delivery date, and time is important

  1. 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

Assignment 2 Serverless Data Processing Solution
$30.00 $24.00