4.1 Project Overview

Overview of Project ☁️

Scenario

CoffeeShop Manager is a lightweight inventory management backend powered entirely by serverless services. Traditionally, coffee shop management systems rely on always-on backend servers that require manual scaling, maintenance, and high availability planning.

With CoffeeShop Manager, we take a different approach, using Amazon API Gateway, Lambda, DynamoDB, IAM, and CloudWatch to create a secure, scalable, and cost-efficient architecture that can handle real-world traffic without servers.

This project aligns with the Operational Excellence Pillar of the AWS Well-Architected Framework by implementing automated operations, event-driven architecture, and comprehensive monitoring.

Your Role

In this project, you'll take on the role of a Solutions Architect building a serverless coffee shop inventory management backend. Your goal is to design and deploy an architecture that's:

  • Easy to manage and maintain
  • Event-driven and serverless
  • Integrated with monitoring and security systems
  • Ready to handle spikes in customer traffic without downtime
  • Cost-effective with pay-per-use pricing

You'll integrate business logic, API access with fine-grained security, and deploy a frontend that connects seamlessly to your backend.

What You'll Learn

You'll gain hands-on experience in:

  • Designing a serverless REST API using API Gateway + Lambda
  • Persisting coffee inventory data using DynamoDB with best practices
  • Creating reusable Lambda layers for shared dependencies
  • Implementing proper IAM roles and policies for secure access
  • Building CRUD operations (Create, Read, Update, Delete) for inventory management
  • Configuring CORS for cross-origin API access
  • Monitoring API usage and performance using CloudWatch
  • Deploying and hosting a React frontend on AWS Amplify
  • Connecting frontend applications to serverless backends


Steps To Be Performed 👩‍💻

  1. Coffee shop owner visits hosted management portal (Amplify)
  2. Views current coffee inventory (GET operations)
  3. Adds new coffee items to inventory (POST operations)
  4. Updates existing coffee details (PUT operations)
  5. Removes sold-out items (DELETE operations)
  6. Frontend makes secure API calls to API Gateway
  7. API Gateway invokes appropriate Lambda functions
  8. Lambda functions read/write inventory data from DynamoDB


Services Used 🛠

  • Amazon DynamoDB – Store coffee inventory data (coffeeId, name, price, availability)
  • AWS Lambda – Backend logic for inventory CRUD operations
  • AWS Lambda Layers – Shared dependencies and utility functions
  • Amazon API Gateway – HTTP REST API layer with CORS support
  • Amazon CloudWatch – Logs, monitoring, and debugging
  • AWS IAM – Secure Lambda execution roles and DynamoDB access
  • Amazon Amplify – Frontend hosting and deployment
  • React.js – Modern frontend framework for inventory management UI


Estimated Time & Cost ⚙️

  • Estimated time: ~3 to 4 hours
  • Cost: ~$0.10–0.50 (Mostly free tier)


➡️ Architectural Diagram


➡️ Final Result

By the end of this project, you'll have a fully working inventory management system that powers a real-world use case, a coffee shop backend with:

  • Serverless architecture (scales on demand, no servers to manage)
  • Complete CRUD operations for inventory management
  • Real-time logging and monitoring via CloudWatch
  • Modern React frontend with responsive design
  • Secure API access with proper IAM configurations
  • Cost-effective solution with pay-per-request pricing
  • Production-ready architecture following AWS best practices

You've built an efficient, modern backend that demonstrates Operational Excellence in action - built to scale, easy to maintain, and ready for real coffee shop owners to manage their inventory seamlessly.

Complete and Continue  
Discussion

0 comments