Skip to content

SOA System Landscape — MIT Open Learning

Generated 2026-06-24 17:02 UTC · c4gen dev

The holistic, whole-system view: every mapped MIT Open Learning system and the cross-service data flows between them, composed from the 10 per-system C4 models. Use it for onboarding and SOA-wide decisions — surfacing dependencies, cycles, and the shared platform every system leans on. Each per-system guide drills into containers and flows; this page is the map of maps.

How to read these diagrams

These are C4 model diagrams (C4-PlantUML). Read them top-down: System Context (the whole SOA) → Container (one system's runtime units) → Dynamic (a single data flow, step by step).

  • People are rounded boxes; systems and containers are rectangles; databases and queues have distinct shapes.
  • Each arrow is a data flow labelled with what moves.
  • Solid arrows are synchronous (request/response, caller blocks).
  • Amber dashed arrows are asynchronous (queued, scheduled, or event-driven — caller does not block).
  • Drag to pan, scroll to zoom. Boxes with a link drill into the next level.

System dependency matrix

System-to-system coupling aggregated from the curated cross-service flows across all models (container-level flows lifted to their owning system; deduped).

System Depends on →
MITx Online Keycloak (SSO), MITx Online Open edX
MITx Online Open edX Keycloak (SSO), MITx Online
MITx Pro xPRO Open edX
xPRO Open edX
MicroMasters MIT Learn, MITx Online, MITx Online Open edX
OCW Studio MIT Learn
ODL Video Service Keycloak (SSO), MITx Online Open edX, xPRO Open edX
MIT Learn APISIX Gateway, LiteLLM Proxy, MITx Online, MITx Pro, MicroMasters, ODL Video Service
learn-ai Keycloak (SSO), LLM Provider, LiteLLM Proxy, MIT Learn
OL Data Platform MIT Learn, MITx Online, MITx Pro, MicroMasters, OCW Studio, ODL Video Service

Cross-service cycles

Computed over the owned internal systems only (Open edX included) — the shared gateway/identity infra (APISIX, Keycloak) sits in nearly every path and would manufacture cycles that aren't harmful coupling.

SOA-wide dependency cycles

  • micromasters → mit-learn → micromasters
  • mitxonline → mitxonline-openedx → mitxonline

Shared platform & libraries

The apps share a common platform: APISIX (gateway, OIDC), Keycloak (SSO), and HashiCorp Vault (secrets/credentials). Open edX sits behind the course-delivery apps as a first-class internal system (drill in for its map). Shared Django/identity libraries — ol-django and ol-keycloak — are used across systems (not drawn as nodes).

Composition clean

Every cross-service flow endpoint resolved to a known system or shared platform node.

Keeping this current

This page is composed from architecture_maps/models/*.yaml by architecture_maps/c4gen. Update a per-system model and regenerate with c4gen landscape; CI fails if the committed page/diagram drift.