Skip to content

Latest commit

 

History

History
71 lines (44 loc) · 3.67 KB

File metadata and controls

71 lines (44 loc) · 3.67 KB
graph LR
    API_Gateway_Interface["API Gateway Interface"]
    Respondent_Session_Manager["Respondent Session Manager"]
    Survey_Instance_Manager["Survey Instance Manager"]
    Survey_Execution_Engine["Survey Execution Engine"]
    Response_Ingestion_Validation["Response Ingestion & Validation"]
    Data_Persistence_Layer["Data Persistence Layer"]
    Event_Bus_Adapter["Event Bus Adapter"]
    API_Gateway_Interface -- "routes requests to" --> Respondent_Session_Manager
    Respondent_Session_Manager -- "utilizes" --> Survey_Execution_Engine
    Survey_Execution_Engine -- "interacts with" --> Response_Ingestion_Validation
    Response_Ingestion_Validation -- "passes data to" --> Data_Persistence_Layer
    Response_Ingestion_Validation -- "informs" --> Survey_Instance_Manager
    Event_Bus_Adapter -- "publishes events to" --> Data_Management_Service
    Event_Bus_Adapter -- "publishes events to" --> Metadata_Management_Service
    Export_Publishing_Service -- "sends events to" --> Event_Bus_Adapter
    API_Gateway_Interface -- "interacts with" --> Identity_and_Access_Management_IAM_Service
Loading

CodeBoardingDemoContact

Details

The feedback highlights two critical areas: the absence of source code references for the identified components and the omission of certain external services involved in the subsystem's interactions.

API Gateway Interface

Serves as the external entry point for the Data Collection Service, handling incoming requests for survey initiation and response submission. It acts as a facade, routing requests to the appropriate internal components.

Related Classes/Methods: None

Respondent Session Manager

Manages the state and progress of individual respondents throughout their interaction with a survey instance. It tracks respondent progress, handles session continuity, and orchestrates the flow of survey questions.

Related Classes/Methods: None

Survey Instance Manager

Responsible for the creation, tracking, and overall lifecycle management of active survey instances. It ensures that each survey execution is properly initialized and its status is maintained.

Related Classes/Methods: None

Survey Execution Engine

Interprets and executes the survey logic based on instrument definitions. It dynamically generates questions, applies skip logic, and enforces validation rules as respondents progress through the survey.

Related Classes/Methods: None

Response Ingestion & Validation

Receives raw response data submitted by respondents, performs initial validation against the survey schema, and processes the data before persistence.

Related Classes/Methods: None

Data Persistence Layer

Handles the storage and retrieval of all survey-related data, including survey instances, respondent session data, and raw responses, within its dedicated data store (e.g., PostgreSQL for structured data, MongoDB for flexible metadata).

Related Classes/Methods: None

Event Bus Adapter

Manages asynchronous communication for the Data Collection Service, responsible for publishing events (e.g., "response submitted," "survey completed") and consuming events from other services (e.g., "new survey published").

Related Classes/Methods: None