Component Model Diagram
Crew Management System – detailed component boundaries, UI modules, orchestration, domain services, shared platform services, data stores, and cross-cutting integrations
Frontend Components
BFF Components
Domain Components
Shared Services
Data & Cross-Cutting
Frontend Boundary
React SPA Shell
React SPA Shell
Routing, shared layout, navigation, access-aware screen composition, and common UI framework
UI Modules
Authentication Module
Home / Dashboard Module
Profile Module
Roster Module
Attendance Module
Events Module
Leave Module
Trainings Module
Qualifications Module
Recruitment Module
Productivity Module
Overview Module
Specialized UI Components
Notifications UI
Document Upload / Download UI
Shared Tables, Filters, and Search Components
BFF / Orchestration Boundary
UI-Facing API Layer
BFF
API Facade
Single controlled integration point for the frontend
Response Aggregation
View Model Builder
Workflow Coordination
Error Handling & Response Normalization
Auth Context Propagation
Main Responsibility
Reduce chatty frontend calls, coordinate multi-service responses, and expose UI-optimized endpoints
Backend Service Boundaries
Domain Services
Crew Profile Service
Roster Service
Attendance Service
Events Service
Leave Service
Trainings Service
Qualifications Service
Recruitment Service
Productivity Service
Typical Component Interaction
BFF → Domain Services for business-specific reads and actions
Domain Services → Microsoft Fabric for read-only enterprise data
BFF → Shared Services for reusable workflow, document, and notification capabilities
Shared Platform Services
Reusable Services
WF
Workflow Management Service
Workflow state, transitions, routing, approvals, and lifecycle handling
NT
Notification Service
In-app notifications, email triggering, delivery tracking, and async messaging
DOC
Document Management Service
Upload, retrieval, metadata handling, controlled access, and file lifecycle
Data & Cross-Cutting
Data Stores
FAB
Microsoft Fabric
Read-only enterprise analytical datasets
DDB
Azure DocumentDB
Workflow state, app records, notification state, preferences, and file metadata
ADLS
ADLS Gen2
Binary file storage, uploads, generated exports, and document artifacts
Cross-Cutting Services
Azure AD
SSO, authentication, token issuance, identity context
RBAC / ABAC
Authorization policy enforcement across protected operations
Datadog
Logs, metrics, traces, monitoring, and observability
Infobip
External outbound notification delivery
Frontend → BFF
All UI modules consume controlled UI-facing APIs through the orchestration layer.
BFF → Domain Services
Business-specific functionality is separated into bounded domain services.
BFF → Shared Platform Services
Workflow, notifications, and document handling are exposed as reusable capabilities.
Domain Services → Fabric
Enterprise data access remains read-only and separated from operational application data.
Shared Services → DocumentDB / ADLS
Operational state and file storage are handled by different underlying stores.
Cross-Cutting Controls
Azure AD, RBAC/ABAC, Datadog, and Infobip apply across multiple components without collapsing boundaries.
Frontend boundary
BFF / orchestration
Domain services
Shared platform services
Data stores
Cross-cutting services