Skip to content
@advprog-a08

advprog-a08

Advanced Programming 2025 — A08

  1. 2306152411 Muhammad Vito Secona (@secona)
  2. 2306222746 Pascal Hafidz Fajri (@Scallss)
  3. 2306228756 Krisna Putra Purnomo (@KrisnaPutraP)
  4. 2306152494 Andrew Devito Aryo (@Andrew4Coding)
  5. 2306207480 Muhammad Rafli Esa Pradana (@rafliesa)

Group Software Architecture Assignment

Current Architecture of the Application (C4 Diagram) - Deliverables G.1

Context Diagram

image

Container Diagram

image

Deployment Diagram

image

Future Architecture - Deliverables G.2

Kafka Container Diagram

image

Kafka Deployment Diagram

image

Risk Mitigation - Deliverables G.3

Why the risk storming technique is applied?

Kami menerapkan teknik Risk Storming untuk mengidentifikasi, memprioritaskan, dan mengurangi risiko dalam sistem pemesanan makanan berbasis microservice. Dengan arsitektur yang terdistribusi (database terpisah, komunikasi antar layanan, dan eksposur API), Risk Storming membantu tim secara kolaboratif menemukan risiko teknis dan operasional sejak awal.

Risk Matrix

image

Current Deployment Risk Diagram

WhatsApp Image 2025-05-16 at 7 55 04 PM

Consensus

  1. Lima partisipan mendapati bahwa inkonsistensi database antar microservice merupakan resiko yang cukup tinggi, karena dapat menyebabkan alur data tidak dapat ditrack. Resiko ini sendiri dapat terjadi secara berkala (6).
  2. Lima partisipan mendapati bahwa koneksi yang lambat antar service juga dapat menjadi resiko, namun memiliki dampak yang tidak terlalu serius. Selain itu, resiko hanya akan terjadi ketika user menjadi banyak secara tiba-tiba (4).
  3. Lima partisipan mendapati bahwa service yang tidak mendapatkan autentikasi dapat menjadi resiko, yang dimana resiko memiliki dampak yang cukup tinggi, karena dapat menyebabkan perubahan data secara ilegal oleh pihak yang tidak bertanggung jawab. Namun, resiko ini cenderung jarang untuk terjadi dengan adanya service auth yang digunakan pada sistem (3).

Mitigations

  1. Inconsistent Database Mitigasi: Mengembangkan arsitektur ke depan dengan menerapkan event-based synchronization menggunakan Kafka untuk menjaga konsistensi antar layanan.

  2. Exposed Service Without Authentication Mitigasi: Memasang API Gateway dan menerapkan autentikasi berbasis JWT untuk memastikan hanya pengguna terverifikasi yang dapat mengakses layanan.

  3. Lambatnya Koneksi Antar Microservice Mitigasi: Mengoptimalkan jaringan menggunakan service mesh (seperti Istio atau Linkerd) untuk meningkatkan performa dan observabilitas antar layanan.

Pinned Loading

  1. aura-frontend aura-frontend Public

    🌌✨ | Aura Frontend

    TypeScript

  2. mewing-menu mewing-menu Public

    🗿🍝 | Mewing Menu

    Java

  3. ohio-order ohio-order Public

    🌪️🛒 | Ohio Order

    Java

  4. sigma-authentication sigma-authentication Public

    🐺🔒 | Sigma Authentication

    Rust

Repositories

Showing 8 of 8 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…