Deployment Model - SENG-350-2024-fall/Team-11 GitHub Wiki

Deployment diagram

This deployment model outlines the mapping of components to the resources in the system, detailing the interaction between the hardware, application layer, and user devices.

Hardware/Infrastructure Layer:

  • AWS Cloud:
    • The cloud infrastructure where key components are deployed. It contains the AWS Database (AWSDB), which serves as the primary data storage for the entire system. This deployment ensures scalability, reliability, and secure access to patient and prescription data.

    • AWS Database (AWSDB):

      • Deployed within the AWS cloud infrastructure, this database stores patient data, prescription information, symptom evaluation results, and notification data. It interacts with other system components to ensure that all data is stored and retrieved efficiently.

Application Layer:

  • Symptom Evaluation System (SymptomEval):

    • This component is responsible for managing the virtual triage process. It interacts with the Database Adapter System to store the results of symptom evaluations in the AWS Database.
  • Prescription Command System (PrescriptionCmd):

    • Handles prescription management, sending prescription information to the Database Adapter System, which in turn stores the data in the AWS Database.
  • Notification System (Notification):

    • This component handles the notifications system, storing notification-related data in the AWS Database through the Database Adapter System. It ensures that patients and medical staff are kept up-to-date with triage results and system updates.
  • Database Adapter System (DatabaseAdapterSys):

    • Acts as an intermediary between the application layer and the AWS database, ensuring secure data access and retrieval. It connects directly to the AWS Database for storing and accessing data.
  • User Role System (RoleSystem):

    • Manages the different roles in the system (e.g., Patient, Nurse, Admin, etc.) and the permissions associated with each role. It is accessed by user devices to determine what actions can be taken based on user roles.

User Devices:

  • Patient Device (PatientDevice):

    • This represents the devices used by patients to interact with the system. Patients access the RoleSystem through their devices, allowing them to complete their virtual triage, receive notifications, and make informed decisions based on their triage results.
  • Healthcare Staff Device (StaffDevice):

    • The devices used by healthcare staff (e.g., nurses, doctors) to manage patient flow, view triage results, and interact with patient data. These devices also access the RoleSystem for role-specific access to system functionalities, such as managing triage requests and patient care coordination.
  • Admin Console (AdminConsole):

    • The administrative interface used to configure and monitor the system. Admins access the RoleSystem to manage user roles, configure system settings, and oversee the overall operation of the virtual triage system.

Interactions and Allocations:

  • RoleSystem is accessed by all user devices (PatientDevice, StaffDevice, and AdminConsole) to ensure that each user has appropriate access based on their role.

  • Symptom Evaluation System, Prescription Command System, and Notification System all send or store data through the Database Adapter System, ensuring that the data is securely stored in the AWS Database.

  • Database Adapter System acts as a bridge, connecting the internal application components with the external cloud infrastructure (AWS Database).

Design Patterns and Deployment Notes:

  • Centralized Role Management: The RoleSystem handles all user roles and permissions centrally, providing each user with the appropriate access and functionality based on their role.

  • AWS Cloud Infrastructure: The deployment on the AWS cloud ensures high availability, scalability, and security for sensitive medical data stored in the AWS Database.