kristhecanadian / protect-together Goto Github PK
View Code? Open in Web Editor NEWSOEN 390 - Software Engineering Mini Capstone Project Concordia Winter 2022
License: GNU General Public License v3.0
SOEN 390 - Software Engineering Mini Capstone Project Concordia Winter 2022
License: GNU General Public License v3.0
Priority: Low
Story Points: Fibonacci Sequence: 5
Risk: Medium
Description:
Medical staff should be able to book an appointment with a patient when needed. By clicking on "recommend appointment", the patient will be prompt to choose an appointment based on the time slot. As soon as this is done, the doctor will then be able to view the appointment information in his dashboard and appointments list.
Exit Criteria
-Once the appointment is booked, medical staff should be able to view it on the 'My Appointments' page
Sub-Tasks/Steps
Linked to Issue: [#38]
Priority: Medium
Story Points: Fibonacci Sequence: 13
Risk: Low
Description:
A patient should be able to book an appointment and see the doctor's availability. He/She will receive this invitation to book an appointment with the doctor. This prompt will ask him/her to select a timeslot. As soon as this is done, the appointment will be booked in the system and the user will be able to see it in the dashboard.
**Important: Booking Appointments will only be accessible when the doctor gives permission. (in other words: button will only be visible after the medical staff invite the patient to book an appointment)
Exit Criteria
What should we expect once the task is complete:
Sub-Tasks/Steps
Additional context
Add any other context or screenshots about the feature request here.
Linked to Issue: [#38]
Priority: Medium
Story Points: 13
Risk: Medium
Description:
A patient needs to be able to update his Covid-19 status and his symptom to be able to have accurate daily information on his profile for the medical staff when he is taken in charge.
Exit Criteria
What should we expect once the task is complete:
Sub-Tasks/Steps
Linked to Issue: [#31]
Risk
Medium
Describe the solution you'd like
The 3rd-Party Dashboard will be reserved for a "special" type of user (3rd-party). This dashboard will contain some key information about Covid. It's important to note that the "patient" data will be anonymous. Instead, this dashboard will mostly be showing data/graphics related to a high-level view of covid information (cases, tests, general symptoms, statistics on who are sick).
A 3rd-party can be a government official, a journalist, etc. Since this patient info is all confidential, there's no need to worry. They won't be able to access anything else.
Stories/Tasks
Priority:[Low/Medium/High]
Risk:[Low/Medium/High]
Description:
https://drive.google.com/drive/u/0/folders/1H62zNZX2YFFCfa6naJNAwh4GuzvnNKgN
Priority: [Medium]
Story Points: Fibonacci Sequence: 8
Risk: Low
Description:
Register professional to the application. After clicking on the activation link via email, they should be redirected to the login form asking them to create a pswd and activate the account. Note that the activation will be done automatically (by clicking on the link and adding a pswd, the user will be added automatically with the right permissions into the right environment).
If the user doesn't have an activated account (and is a staff) and is trying to log in, a message will appear to tell them to contact X in order to get access.
Exit Criteria
Professionals should be able to register for the application
Sub-Tasks/Steps
Additional context
Add any other context or screenshots about the feature request here.
Linked to Issue: [#10 ]
Priority: High
Story Points: Fibonacci Sequence: 13
Risk: Low
Description:
As a patient, I would like to request some help in regards to my symptoms/current situation. In order to do that, the patient will fill out an "interactive" form that will show answers based on the patient's queries. If these answers are not enough, and/or the situation is too technical -> the patient will be re-directed to a "case" where he/she will be in charge by medical staff. From there, a new "case" will be created and he/she will be able to chat with medical staff.
Exit Criteria
What should we expect once the task is complete:
Sub-Tasks/Steps
Linked to Issue: [#31]
Priority: Medium
Story Points: 8
Risk: High
Description:
If there is a shortage of medical staff accounts, patients will no longer be automatically assigned to one and admins will be able to hire more help and assign those patients to new accounts.
Exit Criteria
An admin will assign a patient to a new medical staff account if they did not receive one upon account creation.
Sub-Tasks/Steps
Linked to Issue: #27
Priority: High
Story Points: Fibonacci Sequence: 5
Risk: Low
Description:
When a new message is sent to a doctor or a patient they should be notified.
The notification settings for a patient or a medical staff will be different.
Exit Criteria
A user should have received a notification indicating that they have received a new message from another user.
Sub-Tasks/Steps
Linked to Issue: #19
Priority: High
Story Points: Fibonacci Sequence: 3
Risk: Medium
Description:
If a patient is not assigned to medical staff due to a shortage of available time slots, admins will be able to view them in the list of unassigned patients in another sub-section of the dashboard.
Exit Criteria
An admin should see an updated list of unassigned patients on their dashboard.
Sub-Tasks/Steps
Linked to Issue: #27
Priority: High
Story Points: Fibonacci Sequence: 8
Risk: Low
Description:
Register a medical patient to the application.
Fields:
Exit Criteria
Users should be able to register for the application, and an account will be created on their behalf with the right permissions. He/She will then be re-directed to the dashboard.
Acceptance Test
Sub-Tasks/Steps
Linked to Issue: #10
Priority: [Medium]
Story Points: Fibonacci Sequence: (3)
Risk: [High]
Description:
In the admin dashboard, admins will need to be notified if there are more patients than the number of available slots (based on the nb of current patients and doctors). This notification will allow them to modify settings, or add more medical staff.
There's no need to send a pop-up notification to the admin for it. A simple red dot on the UnAssigned Patients Tab is enough.
Exit Criteria
What should we expect once the task is complete:
-Notification Working when there is an un-assigned patient (will be in another color in the table and also notification counter will be updated)
Sub-Tasks/Steps
Additional context
Add any other context or screenshots about the feature request here.
Linked to Issue: #19
Priority: Low
Story Points: 5
Risk: Low
Description:
On the patients' dashboard, they will be able to see news and information concerning Covid-19 and additional resources like health tips and recommendations.
Exit Criteria
What should we expect once the task is complete:
Sub-Tasks/Steps
Linked to Issue: [#31]
Priority: Low
Story Points: 3
Risk: Low
Description:
Create additional admin accounts for the application. Creating another admin account will be possible directly from the admin dashboard. A menu will appear prompting the user to choose what type of account to create. Then, a form will appear to add information about the new user (all his info: email, etc). From there, a new user will be created to the database, and this email will be added to the admin user's list.
Exit Criteria
-New Admin Account Created in the DB with the right access.
Sub-Tasks/Steps
Linked to Issue: #10
Priority:[Low/Medium/High]
Risk:[Low/Medium/High]
Description:
Priority: [Low]
Story Points: 3
Risk: [Medium]
Description:
The user will be able to delete his account. This button will be accessible via the Main Settings button (in the nav bar).
Exit Criteria
What should we expect once the task is complete:
-User can see an option to delete his account
-On click: "are you sure?" message is shown
-Account deletion removes the relevant user from the database.
Sub-Tasks/Steps
Additional context
Add any other context or screenshots about the feature request here.
Linked to Issue: #10
Priority: Low
Story Points: Fibonacci Sequence: 13
Risk: Low
Description:
Users will be able to see online/offline status.
Exit Criteria
What should we expect once the task is complete:
-xxx
-xxx
Sub-Tasks/Steps
Additional context
Add any other context or screenshots about the feature request here.
Linked to Issue: #35
Priority: Medium
Risk: Low
Description:
Modify the wiki to make sure we have all the most up-to-date info. We need to update:
Priority: High
Story Points: 3
Risk: Med
Description:
Users should be able to log out easily when they are in the app. A logout button should be accessible on every page.
Exit Criteria
What should we expect once the task is complete:
-User Logout
-Remove the token in the browser
Sub-Tasks/Steps
Linked to Issue: #10
Priority: Medium
Story Points: Fibonacci Sequence: 3
Risk: Low
Description:
As a patient, I want to be able to get notified if there are any updates on my "medical case" such as getting a new doctor, getting a new appointment, etc.
I also want to let my doctor know that he has a new patient!
I also want to make sure that the patient can only book an appointment if I give him the permission (bug)
Exit Criteria
The patient/doctor has received a notification.
Acceptance Test
Sub-Tasks/Steps
Linked to Issue: #19
Priority: High
Story Points: 8
Risk: Medium
Description:
Medical staff should be able to access a patient's profile and view their symptoms and medical history (including all info from the previous forms/status updates). Medical staff should be able to raise a flag to set a profile as a high priority. They should also be able to see the patient info from the medical connector (i.e: RAMQ) and all the info from the "interactive form".
**Appointment Booking and Chat will be implemented later (they have their own epics), but will be available from this "page".
Exit Criteria
-Medical history of a patient should appear on their profile.
-After raising a flag on a patient's profile, the profile becomes a high priority.
-Once a medical staff visit a patient's profile, the profile should be labeled as visited in the database.
Sub-Tasks/Steps
Linked to Issue: [#42]
Priority: Low
Story Points: 5
Risk: Low
Description:
When a patient receives PCR or rapid antigen test results, he can add it to his profile to add more information for medical staff and administrators.
Exit Criteria
What should we expect once the task is complete:
Sub-Tasks/Steps
Linked to Issue: [#31]
Priority: Medium
Risk: [Medium]
Describe the Task:
Setup the Stack project by installing the libraries, frameworks, database and by preparing the folder structure.
Exit Criteria
Code Repo is ready to start the business logic.
Additional Info
Priority: High
Story Points: 13
Risk: Medium
Description:
Admins should be able to view their staff list with some ways to search and sort results by different types of queries (type of staff, etc). They will also have an option to create new accounts (the logic is already implemented in another EPIC), however, you can prepare the UI Forms.
Exit Criteria
What should we expect once the task is complete:
-A list of staff appears in a list with different ways to sort the data.
Sub-Tasks/Steps
Additional context
This story is mostly focused on the table UI itself. Later on, we will build on top of it by adding new features (booking, notifications, timeslots, etc).
Linked to Issue: #27
Priority: Medium
Story Points: Fibonacci Sequence: 13
Risk: Medium
Description:
If the resources on the patient dashboard do not answer the patient's questions or concerns, they may request to chat with medical staff. This connection will be already implemented in a previous epic. Here, we are asking to create that "chat" component between a patient and a doctor. The chat should be real-time (no need to refresh to view new messages).
Exit Criteria
What should we expect once the task is complete:
Sub-Tasks/Steps
Linked to Issue: [#35 ]
Priority: Low
Story Points: Fibonacci Sequence: 5
Risk: Low
Description:
When a patient has booked an appointment, he can see the date and time on a calendar. (only 1 appointment at a time)
Exit Criteria
What should we expect once the task is complete:
Sub-Tasks/Steps
Additional context
Add any other context or screenshots about the feature request here.
Linked to Issue: [#31 ]
Risk
High
Description
Admins will be able to track and manage staff (admins, medical staff, 3rd party). They will be able to add new users, assign slots for appointments and for patients for each medical staff.
Additional context
Admins will be managing medical staff's schedules and user accounts.
Stories
Priority: Medium
Story Points: 8
Risk: Low
Description:
The user would be able to edit his own account information. The form will let the user change his medical info and access other settings such as medical conditions, healthcare number, pswd modification, etc. This account setting feature should be visible in the navbar.
Exit Criteria
What should we expect once the task is complete:
-Users will be able to edit their own information.
-Validation of inputs in the form is working well.
Sub-Tasks/Steps
Additional context
Add any other context or screenshots about the feature request here.
Linked to Issue: #10
Priority:[Low/Medium/High]
Risk:[Low/Medium/High]
Description:
https://drive.google.com/drive/u/0/folders/1H2lS0HglL8ijwRV9stAzYsCgXuv3vbvr
Priority: High
Story Points: Fibonacci Sequence: 3
Risk: Low
Description:
A notification can be sent to a patient's doctor when a patient re-updates their status.
Exit Criteria
A doctor should receive a notification from their patient's status update.
After the patient submits the status changes, the patient will view a popup indicating "your doctor has been notified about your status update".
Acceptance Test
Sub-Tasks/Steps
Linked to Issue: #19
Priority:[Low/Medium/High]
Risk:[Low/Medium/High]
Description:
https://docs.google.com/document/d/1r_ZIaqZrqxbCoWPAdg5GTLUnv2_r4685r0KGY0FMbps/edit
Priority: Low
Story Points: 3
Risk: Low
Description:
Medical staff and patients should be able to close a patient's file once the medical consultation finishes. When the file is closed, it will also close the case on the patients' UI view (and vice-versa).
Exit Criteria
-Once a file is closed, patient's database is modified to remove doctor.
-Once a file is closed, it should not appear in the medical staff list of patients.
-Once a file is closed, it should not appear in the patient info. Process re-start from scratch.
Sub-Tasks/Steps
Linked to Issue: [#42 ]
Priority: [High]
Story Points: 5
Risk: [High]
Description:
The user should be able to login onto his account (with his email/password or OAuth). If it's a new account (medical staff, admins, or 3rd party) -> login will act as an activation. If the user doesn't have an activated account (and is a staff), a message will appear to tell them to contact X in order to get access.
Exit Criteria
What should we expect once the task is complete:
-Users can log in from the login page
-Error Messages are shown for unsuccessful attempts
-On successful login, the user has access to his/her page on the site.
-Local Storage Token
-Accessing pages other than the login/signup page without being logged in is prevented.
Sub-Tasks/Steps
Additional context
Add any other context or screenshots about the feature request here.
Linked to Issue: #10
Priority: High
Story Points: 13
Risk: Low
Description:
Medical staff should see all their patients on a list where high-priority patients are shown at top of the list. Medical staff should be able to distinguish between visited and unvisited profiles. They should also be able to sort their list of patients based on multiple factors (symptoms, age, covid status, appointment date, etc). When clicking on a patient on the table, the medical staff will be re-directed to the "patient file" where he/she will be able to see all the info and chat with him/her.
Exit Criteria
-All lists of patients appear in a list (Table)
-Patients with higher priority should appear at top of the list.
-After visiting a patient's profile, its entry in the list shows in a different color than those not visited.
-Sorts will work.
Sub-Tasks/Steps
Linked to Issue: [#42]
Priority: [Medium]
Story Points: Fibonacci Sequence: (5)
Risk: [Medium]
Description:
Medical Staff will be able to view their upcoming appointments in addition to the dashboard for convenience.
Exit Criteria
What should we expect once the task is complete:
-List of Appointments for medical staff in upcoming days (and past appointments)
-Appointments are sorted by time.
Sub-Tasks/Steps
Linked to Issue:
Priority:[Low/Medium/High]
Risk:[Low/Medium/High]
Description:
https://drive.google.com/drive/u/0/folders/1HJb3hO92Myxv3LjNHnyWCF0jx9EuBWUF
Priority: [High/Medium/Low]
Story Points: Fibonacci Sequence: 5
Risk: Medium
Description:
Create additional medical staff accounts for application. Creating a medical staff account will be possible directly from the admin dashboard. A menu will appear prompting the user to choose what type of account to create. Then, a form will appear to add information about the new user (all his info: email, etc). From there, a new user will be created to the database, and this email will be added to the medical staff user's list.
Exit Criteria
Admin should be able to add a medical staff to the application.
Sub-Tasks/Steps
Additional context
Add any other context or screenshots about the feature request here.
Linked to Issue: #10
Priority: [Low]
Story Points: Fibonacci Sequence: 8
Risk: Low
Description:
Users should be able to upload files (with a max upload size) directly into the chat in order for the other user to see it.
Exit Criteria
What should we expect once the task is complete:
-File Uploading Form working with data validation (size, etc)
-File is Uploaded to the Cloud
-File is visible in the Chat and can be downloaded by the other user.
Sub-Tasks/Steps
Additional context
Add any other context or screenshots about the feature request here.
Linked to Issue: #35
Priority: High
Story Points: Fibonacci Sequence: 8
Risk: High
Description:
Admins will create a specific availability schedule for each medical staff account upon creation and adjust it whenever needed. They will be able to modify the appointment slots for each medical staff.
Exit Criteria
Sub-Tasks/Steps
Linked to Issue: #27
Priority: High
Risk: Low
Description:
Prepare Backlog of User Stories/Epics of Sprint 1 and Epics for Sprint 2-3-4-5 (hopefully)
-> Good resource in case you forgot how to write stories: https://docs.google.com/document/d/1I1AJmpVbRonelhUP5SvQzkhwGqNqKGAg/edit#
Priority: [Low]
Story Points: Fibonacci Sequence: (3)
Risk: Low
Description:
As a medical staff, I want to get notified when I have a new appointment. I also want to make sure that the patient can only book an appointment if I give him the permission (bug)
Exit Criteria
What should we expect once the task is complete:
-UI is being updated (with a new countdown)
-Medical Staff is getting notified.
-Patient can only book when the doctor give him/her the permission.
Sub-Tasks/Steps
Additional context
Add any other context or screenshots about the feature request here.
Linked to Issue: #19
Priority:[Low/Medium/High]
Risk:[Low/Medium/High]
Description:
https://drive.google.com/drive/u/0/folders/1GkAhz4S3CEw60_-irCPN9mhKwN8jbcuO
Priority: High
Story Points: Fibonacci Sequence: 5
Risk: High
Description:
Create additional 3rd party accounts for the application. Creating a 3rd party account will be possible directly from the admin dashboard. A menu will appear prompting the user to choose what type of account to create. Then, a form will appear to add information about the new user (all his info: email, etc). From there, a new user will be created to the database, and this email will be added to the 3rd-party user's list.
Exit Criteria
What should we expect once the task is complete:
-admin should be able to add 3rd party users to the application
-email should be sent to added 3rd party users prompting the user to choose his own password and activate his account.
Sub-Tasks/Steps
Additional context
Add any other context or screenshots about the feature request here.
Linked to Issue: #10
Risk
Low
Describe the solution you'd like
Landing Page (using scrolly-telling) to explain our application to "customers". In our case, customers would be clinics and government medical entities.
Additional context
Scrolly-Telling (everything on one page), and to create a new "customer account", they need to contact us.
Stories
[To Do]
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.