GithubHelp home page GithubHelp logo

heart-bangalore-kata-2023's Introduction

O'Reilly Architecture Katas Sept 2023

Team submission for O'Reilly [Architecture Katas Sept 2023]

Team Members:
Krishnaraj Ramakrishna
Prinjumon Kalyani
Raghu A M
Sangeeth Kumar
Vishwanatha K

Contents

Introduction

The Road Warrior wants to build the next generation online trip management Dashboard to allow travelers to see all of their existing reservations organized by trip either online (web) or through their mobile device.

Requirements

Busines Requirments

  • Poll E-Mail looking for travel-related E-Mail.

  • Filter and whitelist certain E-Mails

  • The system must interface with the agency’s existing airline, hotel, and car rental interface system to update travel details (delays, cancellations, updates, gate changes, etc.). Updates must be in the app within 5 minutes of an update (better than the competition).

  • Customers should be able to add, update, or delete existing reservations manually as well.

  • Items in the dashboard should be able to be grouped by trip, and once the trip is complete, the items should automatically be removed from the dashboard.

  • Users should also be able to share their trip information by interfacing with standard social media sites or allowing targeted people to view your trip.

  • Provide end-of-year summary reports for users with a wide range of metrics about their travel usage.

  • Road Warrior gathers analytical data from users trips for various purposes - travel trends, locations, airline and hotel vendor preferences, cancellation and update frequency, and so on.

Technical Requirements

  • Richest user interface possible across all deployment platforms.

  • Must integrate seamlessly with existing travel systems (i.e, SABRE, APOLLO).

  • Must integrate with preferred travel agency for quick problem resolution (help me!).

  • Must work internationally.

  • Users must be able to access the system at all times (max 5 minutes per month of unplanned downtime).

  • Travel updates must be presented in the app within 5 minutes of generation by the source.

  • Response time from web (800ms) and mobile (First-contentful paint of under 1.4 sec)

Architecture Characteristics

The following section highlights the architecure characteristics we consider crucial to a successful implementation of the system.

Driving Characteristics

Implicit Characteristics

Security

Architecture Approach

Goals

"Microservices are not the goal, you don't win by having microservices"

A discussion regarding architecture characteristics and microservices

Context

Actors and Use Cases

Event Storming

Containers

Service Containers

API Layer

Coupling and Architecture Quanta

Static Coupling

Dynamic Coupling

Components

Identity and Access Manager

Profile Manager

Connections Manager

Proximity Detection

Establishing Connection

Reporting and Analytics Manager

Social Media API Manager

Deployment

The next diagram models a sample deployment of The Road Warrior system on the AWS Platform. A brief overview of the involved AWS services follows.

AWS Figure * AWS Deployment Architecture

Cost Analysis

Evaluation, Risks and Architecture Fitness

ADRs

References

heart-bangalore-kata-2023's People

Contributors

raghuam avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.