Crew Management System – workflow request submission, BFF forwarding, workflow validation, persistent state creation, notification triggering, optional external delivery, and final user confirmation
USER
User
Authenticated user submits a workflow-driven request from the CMS screen
Browser / React SPA
Captures form input, sends request payload, and shows the returned workflow status
BFF
BFF / Orchestration
Receives the workflow submission and forwards it to the workflow service
WF
Workflow Management Service
Validates rules, creates the workflow instance, manages state, and coordinates next actions
DDB
Azure DocumentDB
Stores workflow records, states, metadata, and operational application data
NT
Notification Service
Creates internal notifications and optionally triggers outbound delivery
IB
Infobip
Optional outbound email or notification delivery channel
OK
Returned Result
Final workflow confirmation, initial status, and user-facing success response
1. Submit request
User submits workflow request from CMS screen
2. Send payload
React sends validated request payload to BFF
3. Forward to workflow
BFF forwards request to Workflow Management Service
4. Validate rules
Workflow service validates auth, business rules, and transition eligibility
5. Create instance
Workflow service creates workflow instance and initial state
6. Persist state
Workflow service writes workflow record to Azure DocumentDB
7. Storage acknowledgement
DocumentDB confirms workflow state persistence
8. Trigger notifications
Workflow service invokes Notification Service
9. Create internal notification
Notification service creates internal notification record
10. Optional outbound delivery
Notification service optionally sends outbound message via Infobip
11. Delivery acknowledgement
Infobip returns delivery acknowledgement / status
12. Build success response
Workflow service returns workflow ID and initial status to BFF
13. Return final payload
BFF returns success response to React with request status
14. Show confirmation
React shows confirmation, workflow reference, and initial state
Workflow ownership: The Workflow Management Service owns the lifecycle of the submitted request, including validation, initial state creation, and routing of subsequent actions.
Operational persistence: Azure DocumentDB stores the workflow instance and operational state rather than relying on the enterprise analytical platform for transactional application data.
Notification pattern: Internal notification generation is part of the workflow flow, while outbound delivery through Infobip remains an optional external channel layered on top.
User actionFrontend / browserBFF / orchestrationWorkflow managementOperational storageNotification serviceExternal delivery