High Level Context Analysis - gcivil-nyu-org/INT2-Monday-Spring2024-Team-1 GitHub Wiki

High Level Context Analysis Diagram

image

Activity Diagram

image

User Personas

Patient/User

These are the personas that would be using the application to store their health records. There would be two subsets of these personas:

a. Users who are 18+ -> They would have control over their records. They would be able to add/edit their details.

b. Users who are Minors -> The control of these accounts would be with their Legal Guardians. All operations with regards to Minors will be taken care of by their Legal Guardians. Once they turn 18, their account ownership can be transferred.

Healthcare Worker

The healthcare worker persona are users who would actually be verifying appointment details and handling requests from patients. In addition to handling requests for confirmation from patients, they could also request access to patient details in order to get up to speed on their full health profile.

Hospital Admin

These personas would be in charge of their hospital wide admin tasks. They would have the option to add or remove a healthcare worker, as well as redirecting an “Approve” request to the respective healthcare worker. The healthcare worker request to view a patient’s files would also come to the admin team. The admin team needs to then request the access from the patient.

Health Score Admin

This more limited Health Score admin would have the ability to add new healthcare facilities to our network, as well as controlling the details of an existing healthcare facility.

Epics

Handle Requests for Healthcare Records from Outside Institutions - Users

Users will be able to see which institutions have requested access to their health history records. They will have the option to approve or reject the request.

  • As a user, I want to clearly see which institutions want access to my health history and I should be able to approve/reject the requests so that unauthorized institutions do not get access to my confidential records.

View Health History - Users and Healthcare Workers

Users should be able view their Health history. And be able to generate a report of their history.

  • As a user, I would like to be able to view my health history.
  • As a user, I would like to get a report of my health history. This would contain all the necessary information like my name, date of birth, the vaccinations that I have taken, etc along with the hospitals from which I have received them.
  • As a user, I would like to filter/search based on my health records.
  • As a user, I would like to see a page which has all my approved vaccines along with the date and hospital in which I have taken it.
  • As a user, I would like to see a page which has all my appointments with hospitals.
  • As a user, I should also be able to see the history of my requests. This page should contain all the requests that I have made thus far, along with their status and reason (if applicable).

Healthcare workers should be able to access a patient’s health history. They should be able to see all the vaccines that the patient has taken thus far so that they can make an appropriate diagnosis.

  • As a Healthcare worker, I would like to be able to view a patient/user’s health history.
  • As a Healthcare worker, I would also like to generate a report of the patient’s health history.

Interact with Other Users in the Community - Users and Healthcare Workers

Users can communicate with other users and healthcare workers in the community by posting a question, replying to the posts, or sending direct messages to other users.

  • As a user, I want to make posts about disease, health, healthcare, etc. to the community.
  • As a user, I want to reply to other users’ posts.
  • As a user, I want to edit and delete my posts and manage the replies to my posts.
  • As a user, I want to send direct messages to other users or healthcare workers.

Healthcare workers can also make posts and answer questions from the users in the community, but they are not allowed to send or receive direct messages.

  • As a healthcare worker, I want to make posts to the community.
  • As a healthcare worker, I want to reply to users’ posts.
  • As a healthcare worker, I want to edit and delete my posts and manage the replies to my posts.

Submit Health Requests - Users and Healthcare Workers

Users should be able to submit health record requests to the hospital. This could be for a new vaccine that they have received or for an appointment

  • As a user, I would like to have the feature to submit a new health record to the hospital associated with it. It could be a new vaccination, appointments, etc
  • As a user, I should have the view to see all my records which have been approved or rejected (along with the reason).

Hospital Admin staff should have the ability to submit a request to the patient’s respective doctor on behalf of the patient.

  • As a Hospital Admin, I should be able to submit a request about a patient's health record to the health workers, on behalf of the User/patient.
  • As a Hospital Admin, I should be able to upload medical records into a User’s account (For eg: Blood test reports).

Handle Healthcare Service Requests from Patients - Healthcare Workers

Healthcare workers can approve a verification request from users to make the health record verified or reject one that is invalid.

  • As a healthcare worker, I want to approve a verification request from a user so that his/her medical information is verified.
  • As a healthcare worker, I want to reject a verification request from a user so that his/her medical information is shown as invalid.
  • As a healthcare worker, I want to approve or reject several requests at once so that my work can be done faster.

Edit Health Records - Users and Hospital Admin

Users will be able to edit their unapproved/rejected health record requests and send them again for approval to the respective health center.

  • As a user, I want to edit my previous unapproved/rejected health record requests and send them again for review so that I can correct any mistakes in the form related to appointment details, or while selecting the hospital’s/doctor’s name.

Hospital admins will be able to edit the unapproved/rejected health record requests and send them for approval to the respective doctor.

  • As a hospital admin, I want to edit the patients’ health record requests which are not yet approved or rejected so that I can send the correct appointment details to the doctor for review.

Register for a Health Score Account - Users and Hospital Admin

Users can register on our website by providing a username, email, proof of identity, password, etc. They can log in to our website and edit profiles for more services.

  • As a user, I want to create an account by providing an email, username, password, and proof of identity.
  • As a user, I want to log into my account using my user ID/email and password.
  • As a user, I want to reset my account via email if I forget my password or user ID.
  • As a user, I want to create, edit, and update my account profile.

Hospital/Pharmacy Admin can register an official account and healthcare workers’ accounts on our website by providing their information (name, employee ID), emails, licenses, etc.

  • As a Hospital/Pharmacy Admin, I want to sign up for an official account by providing an official email, hospital/pharmacy name, and password.
  • As a Hospital/Pharmacy Admin, I want to log into my account using the organization name and password.
  • As a Hospital/Pharmacy Admin, I want to register accounts for my employees and add them to my organization.
  • As a Hospital/Pharmacy Admin, I want to update the organization name, location, opening hours, website URLs, and contact information.

Route Healthcare Service Requests to Healthcare Workers - Hospital Admin

Hospital Admin can route requests from users to different healthcare workers to deal with requests.

  • As a hospital admin, I want to decide who should deal with a certain request so that each request can be addressed properly.
  • As a hospital admin, I want to assign several requests to the same healthcare worker at once so that I can finish my work faster.

Manage Healthcare Worker Accounts - Hospital Admin

The hospital admin will be able to manage the accounts of the employees at their institution.

  • As a hospital admin, I want to add healthcare worker accounts to the hospital page as soon as the hospital is added to the network so the hospital can manage user requests as soon as possible.
  • As a hospital admin, I want to delete a healthcare worker’s account from the hospital database when they leave the institution so sensitive hospital information is secure.

Manage Hospital Networks and Hospital Admin Accounts - Health Score Admin

The health score admin will be able to manage all hospital accounts in the network and manage all the admin accounts related to each hospital.

  • As a health score admin, I want to be able to view and edit details of all the hospitals in the network in order to keep the network secure and up-to-date.
  • As a health score admin, I want to be able to add hospitals to the network after they have been verified so that patients of the hospital can be included in the network.
  • As a health score admin, I want to assign and manage hospital admin accounts to a hospital when the institution is added to the network so hospitals can start creating their employee list as quickly as possible.
  • As a health score admin, I want to be able to remove a hospital from the network so the network stays secure and up-to-date.