asa: amazon shopping assistant€¦ · aws lambda & aws api gateway serverless infrastructure...

12
From Students… …to Professionals The Capstone Experience Project Plan Asa: Amazon Shopping Assistant Team Amazon Evan Moran Samuel Chung Yiming Li Renee Dennis Aaron Beckett Department of Computer Science and Engineering Michigan State University Fall 2016

Upload: others

Post on 19-Jun-2020

13 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Asa: Amazon Shopping Assistant€¦ · AWS Lambda & AWS API Gateway serverless infrastructure AWS DynamoDB for any sort of persisted data •Software Platforms / Technologies Node

From Students…

…to Professionals

The Capstone Experience

Project PlanAsa: Amazon Shopping Assistant

Team AmazonEvan Moran

Samuel ChungYiming Li

Renee DennisAaron Beckett

Department of Computer Science and EngineeringMichigan State University

Fall 2016

Page 2: Asa: Amazon Shopping Assistant€¦ · AWS Lambda & AWS API Gateway serverless infrastructure AWS DynamoDB for any sort of persisted data •Software Platforms / Technologies Node

Functional Specifications

• A chat bot to bring Amazon shopping to messaging platforms

• Users can search for and purchase items

• Learns about a user

Through conversations

Using Facebook profile

• Occasionally messages user with tailored recommendations

• Reminds users to buy gifts

• Helps user to choose gifts for others

• Extendable to various messaging platforms (Slack, FB, SMS)

The Capstone Experience Team Amazon Project Plan 2

Page 3: Asa: Amazon Shopping Assistant€¦ · AWS Lambda & AWS API Gateway serverless infrastructure AWS DynamoDB for any sort of persisted data •Software Platforms / Technologies Node

Design Specifications

• Focus on integration with Facebook messenger

• Extend functionality to other platforms

• User interaction is two-fold:

Messaging application UI

Natural language conversation

• Enhance text conversation with pictures and quick replies when dealing with items

The Capstone Experience Team Amazon Project Plan 3

Page 4: Asa: Amazon Shopping Assistant€¦ · AWS Lambda & AWS API Gateway serverless infrastructure AWS DynamoDB for any sort of persisted data •Software Platforms / Technologies Node

Screen Mockup: Starting Screen, Small Talk

The Capstone Experience 4Team Amazon Project Plan

Figure 1: Starting Screen Figure 2: Small talk

Page 5: Asa: Amazon Shopping Assistant€¦ · AWS Lambda & AWS API Gateway serverless infrastructure AWS DynamoDB for any sort of persisted data •Software Platforms / Technologies Node

Screen Mockup: Searching for Items

The Capstone Experience 5Team Amazon Project Plan

Figure 3: No extra options Figure 4: Extra options(using quick replies)

Page 6: Asa: Amazon Shopping Assistant€¦ · AWS Lambda & AWS API Gateway serverless infrastructure AWS DynamoDB for any sort of persisted data •Software Platforms / Technologies Node

Screen Mockup: Item Recommendation

The Capstone Experience 6Team Amazon Project Plan

Figure 5: Recommend item Figure 6: Recommend gift

Page 7: Asa: Amazon Shopping Assistant€¦ · AWS Lambda & AWS API Gateway serverless infrastructure AWS DynamoDB for any sort of persisted data •Software Platforms / Technologies Node

Screen Mockup: Bot-initiated Recommendation

The Capstone Experience 7Team Amazon Project Plan

Figure 7: Bot initiated recommendation

Page 8: Asa: Amazon Shopping Assistant€¦ · AWS Lambda & AWS API Gateway serverless infrastructure AWS DynamoDB for any sort of persisted data •Software Platforms / Technologies Node

Technical Specifications

• Deploy on serverless architecture AWS Lambda, AWS API Gateway

• Support various messaging platforms

• Communicate with natural language

• Search products on Amazon

• Tailor recommendations to user

The Capstone Experience Team Amazon Project Plan 8

Page 9: Asa: Amazon Shopping Assistant€¦ · AWS Lambda & AWS API Gateway serverless infrastructure AWS DynamoDB for any sort of persisted data •Software Platforms / Technologies Node

System Architecture

The Capstone Experience 9Team Amazon Project Plan

Page 10: Asa: Amazon Shopping Assistant€¦ · AWS Lambda & AWS API Gateway serverless infrastructure AWS DynamoDB for any sort of persisted data •Software Platforms / Technologies Node

System Components

• Hardware Platforms AWS Lambda & AWS API Gateway serverless infrastructure

AWS DynamoDB for any sort of persisted data

• Software Platforms / Technologies Node for runtime

Facebook Messaging API / Twilio / Slack Events API

Wit.ai for NLP platform

Amazon Product Advertising API for searching items

Apex / Babel for build and deployments

The Capstone Experience Team Amazon Project Plan 10

Page 11: Asa: Amazon Shopping Assistant€¦ · AWS Lambda & AWS API Gateway serverless infrastructure AWS DynamoDB for any sort of persisted data •Software Platforms / Technologies Node

Testing

• Unit Testing

Mocha / Chai

Tested locally and automatically

• Integration Testing

Staging / Production environments

Tests automated with deployments

• End User Testing

Team members, Amazon client, outside parties

Use observations to improve Asa

The Capstone Experience Team Amazon Project Plan 11

Page 12: Asa: Amazon Shopping Assistant€¦ · AWS Lambda & AWS API Gateway serverless infrastructure AWS DynamoDB for any sort of persisted data •Software Platforms / Technologies Node

Risks

• AWS Services (Lambda, API Gateway), Bot Platforms No one on the team has used AWS extensively Mitigation: Read documentation, make prototype bots and deploy to AWS

• Difficulty of Natural Language Processing (NLP) Challenging to retrieve correct intent from a message Mitigation: Utilize existing NLP services as much as possible & lots of research

• Gather extra information about items if needed For something like a shirt, how do we get size, color, quantity info? Mitigation: Quick replies, but still need to figure out how to integrate these into conversation

• Get user information when making suggestions Need a way to retrieve user data for bot-initiated gift recommendations Mitigation: Research Facebook API and make prototype application that can grab the information

• How are we going to learn about a user? No external customer data for model training Mitigation: Depend on Amazon Advertising API, design modular plug-in architecture, explore

Facebook API to see what user information is available

The Capstone Experience Team Amazon Project Plan 12