# Architecture Documentation **Last Updated**: 2025-01-27 **Status**: Comprehensive Architecture Guide ## Overview This directory contains comprehensive architecture documentation for The Order platform, including system design, data models, deployment architecture, and architectural decision records (ADRs). ## Documentation Index ### Core Architecture - [Cloud for Sovereignty Landing Zone](CLOUD_FOR_SOVEREIGNTY_LANDING_ZONE.md) - Complete multi-region architecture - [Sovereignty Landing Zone Summary](SOVEREIGNTY_LANDING_ZONE_SUMMARY.md) - Executive summary ### System Design - **Microservices Architecture**: See service documentation in `services/*/README.md` - **Data Models**: Entity relationships and database schema - **API Design**: RESTful APIs with OpenAPI/Swagger documentation - **Security Architecture**: Zero-trust, defense in depth ## Architecture Principles ### Well-Architected Framework The Order follows Azure Well-Architected Framework principles: 1. **Cost Optimization** - Right-sized resources - Reserved instances - Cost allocation tags - Budget alerts 2. **Operational Excellence** - Infrastructure as Code - Automated deployments - Centralized logging - Runbooks and playbooks 3. **Performance Efficiency** - Regional proximity - CDN for global delivery - Auto-scaling - Performance monitoring 4. **Reliability** - Multi-region redundancy - Availability Zones - Automated failover - RTO: 4 hours, RPO: 1 hour 5. **Security** - Zero-trust architecture - Defense in depth - Data encryption - Identity and access management ### Cloud for Sovereignty - **Data Residency**: All data within specified regions - **Data Protection**: Customer-managed keys, private endpoints - **Compliance**: GDPR, eIDAS, regional requirements - **Operational Control**: Management groups, policy governance ## System Architecture ### High-Level Overview ``` ┌─────────────────────────────────────────────────────────────┐ │ Frontend Applications │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ │ │ MCP Legal │ │ Portal Public│ │Portal Internal│ │ │ └──────────────┘ └──────────────┘ └──────────────┘ │ └─────────────────────────────────────────────────────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────┐ │ API Gateway / Load Balancer │ └─────────────────────────────────────────────────────────────┘ │ ┌───────────────────┼───────────────────┐ ▼ ▼ ▼ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ Identity │ │ Intake │ │ Finance │ │ Service │ │ Service │ │ Service │ └──────────────┘ └──────────────┘ └──────────────┘ │ │ │ ▼ ▼ ▼ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ Dataroom │ │Legal Docs │ │ e-Residency │ │ Service │ │ Service │ │ Service │ └──────────────┘ └──────────────┘ └──────────────┘ │ ▼ ┌─────────────────────────────────────────────────────────────┐ │ Shared Infrastructure │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │ │PostgreSQL│ │ Redis │ │OpenSearch│ │ Azure │ │ │ │ │ │ │ │ │ │ Storage │ │ │ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │ └─────────────────────────────────────────────────────────────┘ ``` ### Service Architecture Each service follows a consistent architecture: ``` Service ├── API Layer (Fastify) │ ├── Routes │ ├── Middleware │ └── Validation ├── Service Layer │ ├── Business Logic │ ├── External Integrations │ └── Error Handling ├── Data Layer │ ├── Database Queries │ ├── Caching │ └── Storage └── Infrastructure ├── Health Checks ├── Metrics └── Logging ``` ## Data Models ### Core Entities - **User**: Member of The Order - **Identity**: Digital identity (eIDAS/DID) - **Credential**: Verifiable credential - **Document**: Legal document - **Matter**: Legal matter - **Deal**: Business transaction - **Payment**: Financial transaction ### Relationships See entity relationship diagrams in service-specific documentation. ## Deployment Architecture ### Regional Deployment The Order is deployed across 7 non-US commercial Azure regions: 1. **West Europe** (Netherlands) - Primary 2. **North Europe** (Ireland) - Secondary 3. **UK South** (London) 4. **Switzerland North** (Zurich) 5. **Norway East** (Oslo) 6. **France Central** (Paris) 7. **Germany West Central** (Frankfurt) ### Per-Region Architecture Each region includes: - Hub Virtual Network (gateway, firewall, management) - Spoke Virtual Network (application, database, storage) - Azure Firewall - Key Vault (with private endpoint) - Storage Account (with private endpoint) - Log Analytics Workspace - AKS Cluster (optional) ### Network Architecture - **Hub-and-Spoke**: Centralized connectivity - **Private Endpoints**: Secure service access - **Azure Firewall**: Centralized security - **VNet Peering**: Hub-to-spoke connectivity ## Security Architecture ### Zero-Trust Principles - **Identity Verification**: Always verify identity - **Least Privilege**: Minimum required access - **Network Segmentation**: Isolated networks - **Encryption**: At rest and in transit - **Monitoring**: Continuous security monitoring ### Defense in Depth 1. **Perimeter**: Azure Firewall, WAF 2. **Network**: NSGs, Private Endpoints 3. **Application**: Authentication, Authorization 4. **Data**: Encryption, Access Controls 5. **Identity**: MFA, RBAC, PIM ## Monitoring & Observability ### Metrics - Application metrics (Prometheus) - Infrastructure metrics (Azure Monitor) - Business metrics (Custom dashboards) ### Logging - Structured logging (JSON) - Centralized log aggregation (Log Analytics) - Log retention (90 days production) ### Tracing - Distributed tracing (OpenTelemetry) - Request flow visualization - Performance analysis ## Disaster Recovery ### Strategy - **RTO**: 4 hours - **RPO**: 1 hour - **Primary Region**: West Europe - **Secondary Region**: North Europe - **Backup Regions**: Other 5 regions ### Backup Strategy - Database: Daily full, hourly incremental - Storage: Cross-region replication - Configuration: Version controlled ## Technology Stack ### Frontend - React 18+ - Next.js 14+ - TypeScript - Tailwind CSS - Material-UI ### Backend - Node.js 18+ - TypeScript - Fastify - PostgreSQL - Redis ### Infrastructure - Azure (non-US commercial) - Kubernetes - Terraform - Docker ### Monitoring - Prometheus - Grafana - OpenTelemetry - Log Analytics ## Design Decisions ### Why Microservices? - Independent scaling - Technology diversity - Team autonomy - Fault isolation ### Why Azure (Non-US)? - Data sovereignty requirements - GDPR compliance - Regional data residency - Cloud for Sovereignty ### Why Kubernetes? - Container orchestration - Auto-scaling - Rolling updates - Service discovery ## Related Documentation - [Cloud for Sovereignty Landing Zone](CLOUD_FOR_SOVEREIGNTY_LANDING_ZONE.md) - [Deployment Guides](../deployment/README.md) - [Service Documentation](../../services/*/README.md) - [Infrastructure Documentation](../../infra/README.md) --- **Last Updated**: 2025-01-27