Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Goals

  • Define the feature and functionalities of the Back-End Admin App

Background and strategic fit

Assumptions

Requirements

User Story Title

User Story Description

Priority

Back-end Admin Web App

Feature

Comments

1

Login Page

Login Page

As a back-end system admin, I want to login to the system, so that I can manage the

Tele-Rehabilitation BackEducation Material List

OpenRehab back-end system.

Acceptance Criteria

  • When I access the “Login page”, I will see the Login screen

  • In the Login screen, I will be able to login by using Username and Password. The Login screen will have:

    • Username: Textbox

    • Password: Textbox

    • Login button

    • Forgot your password?: Hyperlink

  • Clicking the login button

    • If I input the correct Username and Password then I will be sent to the Dashboard screen

    • If I input the invalid Username/Password:

      • If I do not input the Username or password, when I click the Login button a red text line message will be displayed: “Please fill in the Username/Password”.

      • If I input the wrong Username or password, when I click the Login button a red text line message will be displayed: “Incorrect Username or password. Please try again”.

  • Clicking “Forgot your password?”

    • I will be sent to a Recovery page that I could type my email registered with the system and receive the password.

Must have

2

Password Recovery Page

As a back-end system admin, I want to be able recover my password in case I forgot it.

Acceptance Criteria

  • When I click the “Forgot your password?” link in the login page I see the password recovery page that has:

    • Email: Textbox

    • Recover Password button

    • Back to login page hyperlink

  • Clicking Recovery button:

    • If the input email exists in the database then the password will be sent to the email.

    • Else a red text line message under the Login button will be displayed: “Your  email does not exist.”.

  • Clicking the "< Login" hyperlink sends me back to the login page

Must have

3

User Roles and Permission

As the site admin I want to define different user roles and permission so that I can set the what can and cannot be done by back-end system admins.

Acceptance Criteria

  • Define the user roles and permission as describe by the table in the User Roles page

Must Have

4

Dashboard

As a Back-end Admin, I want to view brief information about therapists and treatments

Acceptance Criteria

  • When I click to Dashboard menu, I will go to the Dashboard screen

  • Global Admin users should display the following information charts (includes worldwide  separation by country, age and gender)

    • Number of current therapists

    • Number of current ongoing treatments / total patient limit

    • Number of total treatments

    • Number of total patients

  • Country Admin users should display the following information charts (includes countrywide separation by age and gender)

    • Number of current ongoing treatments / total patient limit

    • Number of total treatments

    • Number of total patients

Must have

5

User Profile Page

As a back-end admin, I want to view and edit my profile so that I can manage my own information.

Acceptance Criteria

  • When I click the user name in the menu, it displays the a drop-down that lists the following action

    • Update profile

    • Change password

    • Log out

  • The page displays two tabs

    • Profile Information

    • Passwords

    • Clicking the tab headers switches the active tab

Must have

6

Update Profile

As a back-end admin I want to edit profile so that I can update my profile information

Acceptance Criteria

  • Clicking Update profile opens the profile page with Profile Information tab active

  • Profile tab has

    • First Name and Last Name

      • Text field, required

      • Contain text only, max length 255 characters

    • Email

      • Text field, required

      • Contain text only, max length 255 characters

      • Follows email pattern: "text@text.text"

    • Mobile phone number

      • Split into

        • area code/mobile carrier prefix

          • max length: 5

        • phone number

          • max length: 10

      • Text field

      • Contain digits only

    • Country (country and clinic admins)

    • Region/Province (clinic admins only)

      • Drop-down (set up by country admin)

    • Institution/Clinics

      • Drop-down (set up by country admin)

    • Gender

      • Drop-down

      • Options: Male, Female or Other

    • Date of birth

      • Date field

      • Format: dd/mm/yyyy

      • Display calculated age

    • Save button

      • Enable if something is changed

      • If all field values satisfy the validations, the data will be saved

        • Show system notification Save successfully.”

      • If there is a field that does not match the condition

        • System will show a red text line in the right of input field

          • First Name and Last Name: “No number allowed.”

          • Phone Number: “Only digit numbers are allowed.”

        • If there is a required field that is blank, show a red text line in the right of input field “Cannot leave blank.”

    • Cancel button

      • Reverts all information to the last saved data

Must have

7

Change Password

As a back-end admin I want to edit my password so that I can update my password and keep it secured

Acceptance Criteria

  • Clicking Change password opens the profile page with Password tab active

  • Password tab has

    • Old Password: text field, required

    • New Password: text field, required

    • Confirm New Password: text field, required

    • Save button

      • Enable if something is changed

      • If Old password is correct and  New password and Confirm new password match each other

        • Then, the new password is updated to the database

        • Show system notification “Password changed successfully!”

      • If the password input in Old Password does not match with the current password, a red text line
        message will be displayed: “Old password is not valid.”

      • If the input New password and Confirm new password do not match each other, a red text line message will be displayed: “Confirm new password does not match.”

    • Cancel button

      • Reverts all information to the last saved data

Must have

8

Logout

As a back-end admin I want to be able to logout of the system

Acceptance Criteria

  • Clicking Log out

    • A modal popup will be shown “Are you sure you want to log out?”

      • Choose YES: I will be returned to the login page

      • Choose NO: I will stay at the current page

Must have

9

Admin Management

As a global admin I want to access to Global, Country and Clinic list so that I can manage the Admin accounts

Acceptance Criteria

  • When I click on Admins menu, I will be sent to the Admin Management screen with the following content:

    • Tab Bar

      • Global Admins

        • Can be accessed by Global Admins

        • When clicked, displays the list of global admins

      • Country Admins

        • Can be accessed by Global Admins

        • Can be accessed by Country Admins

        • When clicked, displays the list of country admins

      • Clinic Admins

        • Can be accessed by Global Admins

        • Can be accessed by Country Admins

        • When clicked, displays the list of clinic admins

    • New Admin button

      • Can be accessed by Global Admins

      • Can be accessed by Country Admins

      • When clicked, displays an admin creation modular pop-up form

    • Search box

      • When users input the text (at least 1 character), the Admins list will only return the records that one of their column values contain the search text (except Action column)

    • Filter button

      • When users click on the Filters button, a filter bar will appear below the title row with the search boxes corresponding to each title (except Action column):

        • Search boxes (ID, First Name and Last Name, Email):

          • Default: blank

          • When users input the text (at least 1 character), the Admins list will only return the records that have the search input text contained in the value column

        • Dropdown (Status)

          • Default: All

          • Filters admin list that matches selected status

          • Status:

            • Active

            • Inactive

        • Calendar picker (Last Login)

          • Default: blank

          • Last Login

            • Date format: dd/mm/yyyy

            • Filter admin list that last login was on or before the selected date

        • Close icon: Closes/hide the Filters bar

    • Columns button

      • Shows a check box list of columns that are displayed in the admin list

      • Default: All checked

        • If some columns are unchecked, All Columns check box is automatically unchecked

      • When an item is unchecked, column is not displayed in the admin list

      • Clicking on the close icon applies the checked columns to be displayed

    • Admin list

      • Data table of admins

      • Summary count label (e.g. "Showing 1 to 5 of 10 items)

      • Pagination labels

        • Drop down to select number of items to show in a page

        • Previous icon: returns to the previous page

        • First icon: returns to the first page

        • Next icon: goes to the next page

        • Last icon: moves to the last page

    • Action button

      • When click it will show the following actions

        • Edit Info - when clicked, opens the create admin modal pop-up pre-filled with current user information

          • Can save/cancel updated information

        • Activate/Deactivate - When clicked, opens a activate/deactivate modal confirmation form

        • Delete - When clicked, opens a delete modal confirmation form

Must have

10

Admin Creation

As a back-end admin, I want to create admin users so that they can be added to the admin list

Acceptance Criteria

  • When I click on New Admin button, the New Admin popup will open with the following content:

    • Radio button for role options: Global Admin, Country Admin and Clinic Admin

      • Allow me to select the role of the new admin user I need to create

      • Shows the current role of the admin user that I am editing/updating

      • Only global admins can change user role

    • Email - required

    • Country - required (only for Country and Clinic Admins)

      • Drop down list of possible countries

    • Clinic/Institution - required (only for Clinic Admins)

      • Drop down list of possible clinics/institutions

    • First Name and Last Name - required

    • Create button (Save when editing existing user)

      • When I click on Create button:

        • Display warning/error messages if values fail validation (e.g. “Please fill in the email”)

      • If I input all required fields then I click on the Create button:

        • Save the new admin user

        • Show system notification of successful user creation

    • Cancel button

      • When click, closes modal pop-up and returns to the admin management page

Must have

11

Admin Deactivation

As a back-end admin, I want to deactivate admin users so that they can be temporarily denied access to the system

12

Admin Deletion

As a back-end admin, I want to delete admin users so that they can be permanently removed from the system

13

Therapist Management

As a country and/or clinic admin I want access to the therapist list so that I can manage the therapist accounts

Acceptance Criteria

  • Global/Country admins does not have access to the Therapists menu

  • For clinic admins, list only shows therapist on the same clinics

  • When I click on Therapists menu, I will be sent to the Therapist Management screen with the following content:

    • New Therapist button

      • When clicked, displays a therapist creation modular pop-up form

    • Search box

      • When users input the text (at least 1 character), the Therapist list will only return the records that one of their column values contain the search text (except Action column)

    • Filter button

      • When users click on the Filters button, a filter bar will appear below the title row with the search boxes corresponding to each title (except Action column):

        • Search boxes (ID, First Name and Last Name, Email, Clinic/Institution, Age, Ongoing patient limit, Assigned patients):

          • Default: blank

          • When users input the text (at least 1 character), the Therapist list will only return the records that have the search input text contained in the value column

        • Dropdown (Status)

          • Default: All

          • Filters therapists list that matches selected status

          • Status:

            • Active

            • Inactive

        • Calendar picker (Date of Birth, Last Login)

          • Default: blank

          • Last Login

            • Date format: dd/mm/yyyy

            • Filter therapist list that last login was on or before the selected date

        • Close icon: Closes/hide the Filters bar

    • Columns button

      • Shows a check box list of columns that are displayed in the therapist list

      • Default: All checked

        • If some columns are unchecked, All Columns check box is automatically unchecked

      • When an item is unchecked, column is not displayed in the therapist list

      • Clicking on the close icon applies the checked columns to be displayed

    • Therapist list

      • Data table of therapist

      • Summary count label (e.g. "Showing 1 to 5 of 10 items)

      • Pagination labels

        • Drop down to select number of items to show in a page

        • Previous icon: returns to the previous page

        • First icon: returns to the first page

        • Next icon: goes to the next page

        • Last icon: moves to the last page

    • Action button

      • When click it will show the following actions

        • Edit Info - when clicked, opens the create therapist modal pop-up pre-filled with current user information

          • Can save/cancel updated information

        • Activate/Deactivate - When clicked, opens a activate/deactivate modal confirmation form

        • Delete - When clicked, opens a delete modal confirmation form

Must have

14

Therapist Creation

As a clinic admin, I want to create therapist users so that they can be added to the therapist list

Acceptance Criteria

  • When I click on New Therapist button, the New Therapist popup will open with the following content:

    • Email - required

    • Country/Region/Province - required

      • Drop down list of possible countries

    • Clinic/Institution

      • Drop down list of possible clinics/institutions

    • Patient limit Ongoing treatments - required

      • Numeric (default 15)

    • First Name and Last Name - required

    • Date of Birth - show calculated age

    • Language ?

    • Profession

    • Create button (Save when editing existing user)

      • When I click on Create button:

        • Display warning/error messages if values fail validation (e.g. “Please fill in the email”)

      • If I input all required fields then I click on the Create button:

        • Save the new admin therapist user

        • Show system notification of successful user creation

    • Cancel button

      • When click, closes modal pop-up and returns to the therapist management page

Must have

15

Therapist Deactivation

As a clinic admin, I want to deactivate therapist users so that they can be temporarily denied access to the system

16

Therapist Deletion

As a clinic admin, I want to delete admin users so that they can be permanently removed from the system

17

Patient List

As a global admin, I want to be able to see the list of patients in the system so that I can use that data for research and data analytics

Acceptance Criteria

  • Only global admin can access this page

  • When I click on Patients menu, I will be sent to the Patient List screen with the following content:

    • Search box

      • When users input the text (at least 1 character), the patients list will only return the records that one of their column values contain the search text (except Action column)

    • Filter button

      • When users click on the Filters button, a filter bar will appear below the title row with the search boxes corresponding to each title (except Action column):

        • Search boxes (ID):

          • Default: blank

          • When users input the text (at least 1 character), the Therapist list will only return the records that have the search input text contained in the value column

        • Dropdown (Status)

          • Default: All

          • Filters patient list that matches selected status

          • Status:

            • Active

            • Inactive

        • Close icon: Closes/hide the Filters bar

    • Columns button

      • Shows a check box list of columns that are displayed in the therapist list

      • Default: All checked

        • If some columns are unchecked, All Columns check box is automatically unchecked

      • When an item is unchecked, column is not displayed in the patient list

      • Clicking on the close icon applies the checked columns to be displayed

    • Patient list

      • Data table of therapist

      • Summary count label (e.g. "Showing 1 to 5 of 10 items)

      • Pagination labels

        • Drop down to select number of items to show in a page

        • Previous icon: returns to the previous page

        • First icon: returns to the first page

        • Next icon: goes to the next page

        • Last icon: moves to the last page

Must have

18

Services Management

As a global admin, I want to have a services management page so that I can access the list of services (exercises, educational materials and questionnaires) and manage the global library content

Acceptance Criteria

  • Only global admin can access this page

  • When I click on the Services Setup menu, I will have see the Services Setup page that shows:

    • Tab Bar

      • Exercises

        • When clicked, displays the list of exercises

      • Education Materials

        • When clicked, displays the list of education materials

      • Questionnaires

        • When clicked, displays the list of questionnaires

    • New Content button

      • When clicked, displays list of actions to create a:

        • New Exercise

        • New Education Material

        • New Questionnaire

      • When action is clicked opens the specific content creation modal dialog/page

    • Search/Filter Side Bar

      • Filter applied as we type or select values

Must have

19

Exercise Deletion

20

Education Material Deletion

21

Questionnaire Deletion

22

Search/Filter Side Bar

As a global admin, I want to be able to search or filter contents using the side bar so that I can see the filtered results in the content list on the right

Acceptance Criteria

  • Located on the left side of the services management page and has the following:

    • Search box - filters all text based fields that matches text

    • Categories filter (number will be based on the category depth)

    • Language

  • Filter applied as we type or select values

Must have

23

Exercise List

24

Exercise Creation/Editing

As a global admin, I want to be able to create exercise content/activities so that I can add them to the global library and therapist can assign them to patient treatment plans

Acceptance Criteria

  • When I click on the New Content button and select New Exercise, I opens the create new exercise page

  • Has a radio button to select an option to create a single exercise or do a bulk upload of multiple exercises

  • When create a single exercise is selected the page will show a two-column form:

    • First column

      • Will display the thumbnails of the uploaded media for the exercise

        • Has a close button that removes/delete the image

      • After the last image (or on top if no images are uploaded yet) will have an Upload Media button that prompts user to upload a file

    • Second Column

      • Language drop down

        • List all language records available to the exercise

        • Has link in the last item to create new translation (no available if main language is not created yet)

      • Title: textbox, required, 255 characters

      • Aim: textbox, required, 255 characters

      • Instruction: textbox, required, 255 characters

      • Include collecting feedback: checkbox, checked by default

        • If checked: Therapist will have set and rep when they add the exercise in a treatment program

        • If checked: Patient to input feedback on rep, set, pain level

      • Category: List all category drop down of Exercise as defined in the Categories management page

      • Create/Save button

        • Saves created/edited exercise

        • System notification of successful/failed saving

      • Cancel button

        • Returns to the exercise list without saving

  • For bulk upload of exercises

    • File to upload browse button to select the file to upload

    • Once uploaded, user needs to map columns to exercise fields ?

Must have

25

Exercise Bulk Upload

26

Exercise Cards

As a user, I want to display the exercise information as cards, so that I can visually display the important information easily

Acceptance Criteria

  • The card will show:

    • first image - assume GIF

    • title of exercise (hyperlink)

      • display max 3 lines

      • if longer than 3 lines show ellipsis

      • hover displays full title

    • categories of the exercise

      • display max 2 lines

      • if more than 2 lines show ellipsis

      • hover displays all categories

  • Clicking on the title will open the Exercise Creation/Editing page ready for editing

Must have

27

Expanded Exercise Cards

  • media slideshow - manual switching of media

Nice to have

28

Education Material Creation/Editing

As a global admin, I want to be able to create/edit education materials so that I can add/update them in the global library of education materials

Acceptance Criteria

  • When I click on the New Content button and select New Education Material, it opens the create new education material pop-up modal form

  • Has a file browse button to select the file to be uploaded

  • Title: textbox, required, 255 characters

  • Categories drop downs: List all category drop down of Education Materials as defined in the Categories management page

    • Required

  • Language drop down

    • List all language records available to the education material

    • Has link in the last item to create new translation (no available if main language is not created yet)

  • Create/Save button

    • Saves created/edited education material

    • System notification of successful/failed saving

      • Display red error message for failed field validation

    • Closes the dialog

  • Cancel button

    • Returns to the education materials list without saving

    • Closes the dialog

Must have

29

Additional Improvements

  • Added an "About the App" area that global admin users can customize

  • A language selection option is added on the login page to allow the users to change the systems

  • Added a show/hide password button

2

Password Recovery Page

As a back-end system admin, I want to be able to recover my password in case I forget it.

Additional Improvements

  • Created customized email templates for languages English, Vietnamese, French, Arabic and Spanish

    • There is no back-end interface to add/edit these templates and any additional language templates need to be requested before they can be added to the system

3

User Roles and Permission

As the site admin, I want to define different user roles and permissions so that I can set the what can and cannot be done by back-end system admins

Notes

  • User roles/groups were created for the following:

    • global admins

    • country admins

    • clinic admins

    • therapists

    • patients

  • The permissions are detailed in the user manuals

4

User Profile Page

As a back-end admin, I want to view and edit my profile so that I can manage my own information.

Notes

  • When a user clicks on "User Profile" under the user menu, they can immediately edit their profile and update it

5

Change Password

As a back-end admin, I want to edit my password so that I can update my password and keep it secured

Notes

  • Password pattern

    • minimum 8 characters

    • at least 1 uppercase letter

    • at least 1 lowercase letter

    • at least 1 number

    • at least 1 special character

    • cannot use old password

6

Logout

As a back-end admin, I want to be able to logout of the system

Notes

  • Clicking the Logout button logs out the user and returns to the login screen

7

Admin Management

As a global admin I want to access to the Global, and Country Admin list so that I can manage their accounts

As a country admin I want to access to the Clinic Admin list so that I can manage their accounts

Notes

  • Data table columns (in order)

    • Global Admin: Last Name, First Name, Email, Status, Last Login, Actions

    • Country Admin: Last Name, First Name, Email, Country, Status, Last Login, Actions

    • Clinic Admin: Last Name, First Name, Email, Country, Clinic, Status, Last Login, Actions

  • Data table default sorting: Status > Last Name > First Name

  • Action button

    • Activate/Deactivate - toggles the users status (active/inactive)

    • Edit Info - when clicked opens the admin user update information pop-up

    • Delete - deletes the admin user

    • Resend activation email - for users that has not clicked on their activation email, the admin can click on this button to resend the email containing the link

Additional Improvements

  • Adding the Resend activation email button

  • Changed the default items to display to 50 items and can be incremented by 50 until 200 items

8

Admin Creation

As a back-end admin, I want to create admin users so that they can be added to the admin list

Notes

  • Global admin can create Global Admin or Country Admin users

  • Country admin can create Clinic Admin users

    • Only one country admin per country

9

Admin Deactivation

As a global admin, I want to be able to activate/deactivate other global admin users, so that I can enable or temporarily disable their access to the system

As a global admin, I want to be able to activate/deactivate country admin users, so that I can enable or temporarily disable their access to the system

As a country admin, I want to be able to activate/deactivate clinic admin users, so that I can enable or temporarily disable their access to the system

Notes

  • For disabling access of delinquent admin users before deleting their account

  • Also prevents the accidental deletion of active admin  accounts

10

Admin Deletion

As a global admin, I want to be able to delete other global admin users so that I can permanently remove their account from the system

As a global admin, I want to be able to delete a country admin account, to permanently remove their account from the system

As a country admin, I want to be able to delete a clinic admin account, to permanently remove their account from the system

Notes

  • Only deactivated admin users can be deleted

  • Deleting a country admin does not delete the country, clinics, clinic admins, therapists and patients under it

  • Deleting a clinic admin does not delete the clinic, clinic admins, therapists and patients under it

11

Therapist Management

As clinic admin I want access to the therapist list so that I can manage the therapist accounts

Notes

  • Data table columns (in order)

    • ID - T#######

      • T - therapist 

      • First 3 digits - institution-id

      • Last 4 digits - therapist id 

    • Last Name

    • First Name

    • Email

    • Total number of patients (therapist is the lead therapist)

    • Assigned patients (total number of patient that has on-going treatment plan)

    • Ongoing treatment limit

    • Status

    • Last Login

    • Actions

  • Data table default sorting: Status > Last Name > First Name

  • Action button

    • Edit Info - when clicked opens the admin user update information pop-up

    • Activate/Deactivate - toggles the users status (active/inactive)

    • Delete - deletes the admin user

    • Resend activation email - for users that has not clicked on their activation email, the admin can click on this button to resend the email containing the link

Additional Improvements

  • Adding the Resend activation email button

  • Changed the default items to display to 50 items and can be incremented by 50 until 200 items

12

Therapist Creation

As a clinic admin, I want to create therapist users so that they can be added to the therapist list

Notes

  • There will be a system limit for the total number of therapist in a country and is shared across the clinics

  • The therapist limit per clinic is set during clinic creation

  • When the therapist limit has been reached, the create therapist button will be hidden

Additional Improvements

  • Added a Profession field that can be chosen by the clinic admin from a list of possible values

  • The possible values for the Profession field is entered by the country admin

13

Therapist Deactivation

As a clinic admin, I want to be able to activate/deactivate therapist users, so that I can enable or temporarily disable their access to the system

Notes

  • For disabling access of delinquent therapist users before deleting their account

  • Also prevents accidental deletion of active therapist  accounts

14

Therapist Deletion

As a clinic admin, I want to delete therapist users so that they can be permanently removed from the system

Notes

  • If the therapist has patients that have on-going and/or planned treatment plans, it will ask the clinic admin to select a therapist in the same clinic where the patients of the deleted therapist will be transferred to

  • Delete all patients of the therapist being deleted that does not have on-going and/or planned treatment plans

    • Patient data is obfuscated and kept for research purposes

  • Deletes all created content of the therapist being deleted

15

Patient List for Global Admin

As a global admin, I want to be able to see the list of all patients in the system so that I can use that data for research and data analytics

Notes

  • Data table columns (in order)

    • ID - P#######

      • P - patient 

      • First 3 digits - institution id

      • Last 4 digits - patient id 

    • Age

    • Country

    • Region/State (From the clinic data)

    • Clinic

    • Region/State

    • Ongoing Treatment Status

Additional Improvements

  • Global admin can access patient treatment plan history and details

16

Therapist List for Global Admin

As a global admin, I want to be able to see the list of all therapist in the system so that I can use that data for research and data analytics

Notes

  • Data table columns (in order)

    • ID - T#######

      • T - patient 

      • First 3 digits - institution id

      • Last 4 digits - patient id 

    • Profession

    • Country

    • Region/State

    • Clinic

    • Total number of patients

    • Ongoing treatment plans

    • Ongoing treatment Limit

17

Services Management

As a global admin, I want to have a services management page so that I can access the list of services (exercises, education materials and questionnaires) and manage the global library content

Notes

  • Only global admins can access this page

  • Services management page has a tab selector to display list of:

    • Exercises

    • Education Materials

    • Questionnaires

  • The active tab determines what content is created

18

Exercise List

As a global admin, I want to be able to list exercises so that I can manage them

Notes

  • Clicking on the Exercise tab will display the list of exercises

  • Exercises are displayed as cards

  • Cards displayed per page is set as a multiple of 4, starting at 60 and increments by 60 up to 240

19

Exercise Creation/Editing

As a global admin, I want to be able to create exercise content/activities so that I can add them to the global library and therapist can assign them to patient treatment plans

Notes

  • Multiple media can be uploaded

  • Uploaded media can be reordered

  • First media in the list is shown as the card thumbnail

  • English version is created by default and other language translations can be added after creation

Additional Improvements

  • Separated checkboxes to set default exercise sets and reps and to get pain level feedback

  • When set default exercise sets and reps is checked user needs to input the values

20

Exercise Deletion

As a global admin, I want to be able to delete exercises, so that I can remove them from the global library

Notes

  • Can only delete an exercise if it is not used in any ongoing treatment plan

21

Exercise Bulk Upload

As a global admin, I want to upload an exercise spreadsheet so that I can create exercise activity in bulk

Notes

  • Exercise translations can be entered by creating a duplicate of the sheet and naming it as the language (using the language ISO code) that you want to translate to

  • The first sheet needs to be named "en"

  • The assumption is that the same exercises are in the same row and use the same column fields

  • The upload will fail when an entry fails validation

Additional Improvements

  • Bulk upload can be used to update existing exercises if the exercise id matches any existing records

22

Exercise Bulk Download

As a global admin, I want to be able to download exercises in bulk so that I can modify them on a spreadsheet and upload a copy to update them.

Notes

  • The exercise downloaded is based on what is listed in the exercise list page

  • User can filter the exercise list to also filter the exercises that they want to download

  • Only one language, one set in the search and filter sidebar, can be downloaded

  • The downloaded exercise data will contain the exercise id that is needed to update an exercise in the bulk exercise upload process

23

Exercise Cards

As a global admin, I want to display the exercise information as cards, so that I can visually display the important information easily

Notes

  • Only the primary image is seen in the exercise card

  • The exercise title will display a maximum of 3 lines

  • Clicking on the cards will display full details about the exercise

  • An edit and delete icons can be accessed from the cards

Additional Improvements

  • The sets and reps information, if available, can be seen in the cards

24

Exercise Details

As a global admin, I want to display an expanded exercise card so that I can display more information about the activity

Notes

  • Shows an media slider to view the other media added in the exercise

  • Shows the additional information from extra fields added during exercise creation

25

Education Material Creation/Editing

As a global admin, I want to be able to create/edit education materials so that I can add/update them in the global library of education materials

Notes

  • Maximum file attachment is 25MB

  • File types that can be uploaded are PDF, Video, Image and Audio

  • English version is created by default and other language translations can be added after creation

Additional Improvements

  • For translations of education materials, users needs to upload a different version for the translated attachment

26

Education Material List

As a global admin, I want to be able to display the education materials as a data table list

Notes

  • Data table columns (in order)

    • Title

    • File Type

    • Actions

  • Action button

    • View

    • Edit

    • Delete

27

Education Material Deletion

As a global admin, I want to be able to delete an education material, so that I can remove them from the global library

Notes

  • Can only delete an education material if it is not used in any ongoing treatment plan

28

Education Material Details

As a global admin, I want to display a detail view of an education material so that I can display more information about the activity

Notes

  • The detail page displays the preview of the attachment

  • The detail page has the link to download the attachment

29

Questionnaire Creation/Editing

As a global admin, I want to be able to create/edit questionnaires so that I can add/update them in the global library of questionnaires

Notes

  • English version is created by default and other language translations can be added after creation

  • Created/added questions can be reordered via drag and drop

30

Questionnaire List

As a global admin, I want to be able to display the questionnaires as a data table list

Notes

  • Data table columns (in order)

    • Title/Description

    • Total number of questions

    • Actions

  • Action button

    • View

    • Edit

    • Delete

31

Questionnaire Deletion

As a global admin, I want to be able to delete a questionnaire, so that I can remove them from the global library

Notes

  • Can only delete a questionnaire  if it is not used in any ongoing treatment plan

32

Questionnaire Details

As a global admin, I want to display a detail view of a questionnaire so that I can display more information about the activity

Notes

  • The detail view displays each question in a collapsible frame and can be expanded to see the question details

  • The detail view will display any image add to a question

  • Questions in the detail view is not answerable

33

Adding Questions to Questionnaire

As a global admin, I want to be able to create/edit questions so that I can add/update them in questionnaires

Notes

  • Created/added questions can be reordered via drag and drop

  • Question types:

    • Checkboxes

    • Multiple choice

    • Open-ended Free text

    • Open-ended Numbers only"

  • Can copy an existing question to create a new question of the same type and content

  • Images can be added to questions

34

Categories Management

As a global admin, I want to manage the Category of contents (Exercises, Questionnaires, Education Materials), so that I can view and list the categories easier

Notes

  • Has 3 tabs for each activity type

  • A category can be 3 levels deep, each level is displayed as a column in the categories table

  • The category item in a column will display the number of their sub-categories and if has been used or not

  • Categories in the same level can be search/filtered using the search field on top of the columns 

35

Create/Edit Category

As a Global Admin, I want to be able to create/edit categories so that I can add categories which I can use to differentiate contents

Notes

  • English version is created by default and other language translations can be added after creation

  • Can enter the next level sub-categories immediately during creation

36

Delete Category

As a global admin, I want to be able to delete categories so that I can remove them from the system

Notes

  • Can only delete a category  if it is not used to categorize any activity

  • The delete button is only active when the category is labelled "Not in use"

37

Settings - Country

As a global admin, I want to be able to add different countries that can use the system, so that when we deploy to system to that country they can be chosen when creating users in the system

Notes

  • The therapist limit of the country can be set in this entity

  • Countries can be added and chosen from a dropdown and automatically fills in the country ISO code and country code for phone numbers

  • Users can select the default language for the country

    • The list is based on the list of languages added in the system

38

Settings - Languages

As a global admin, I want to be able to add languages, so that I can add translations of the system in that language and add multi-language support

39

Settings - Translations

As a global admin, I want to have a settings page for translations so that I can enter the corresponding translations of the applications labels into different available languages of the system

Notes

  • User needs to select which platform labels to display

    • Admin portal

    • Therapist portal

    • Patient app

  • Languages added in the language settings will be displayed as columns and clicking on the edit link of each label allows to user to enter the translation

40

Settings - Terms and Conditions

As a global admin, I want to enter/update the terms and conditions for using the system, so that the I can get the therapist and patient to consent to agreeing to it

Notes

  • English version is created by default and other language translations can be added after creation

  • Content is in rich text format and can be styles accordingly

  • The content is not live until it is published

  • The newly published version replaces the current and will trigger a reconsent process when the user logs in again

41

Settings - Privacy Policy

As a global admin, I want to enter/update the privacy policy of the system, so that the I can get the therapist and patient to consent to agreeing to it

Notes

  • English version is created by default and other language translations can be added after creation

  • Content is in rich text format and can be styles accordingly

  • The content is not live until it is published

  • The newly published version replaces the current and will trigger a reconsent process when the user logs in again

42

Settings - System Limits

As a global admin, I want to set some of the limits of the system, so that the users does not abuse it

Notes

  • Number of ongoing treatment per therapist - the maximum number of ongoing treatment plan that the therapist can have

  • Pain threshold limit - when a patient records a pain level above this threshold, a notification flag will be displayed when the therapist view their patient list

  • Therapist Content Limit - the maximum number of created/custom activities that the therapist can create

43

Settings - Static Pages

As a global admin, I want to be able to customize some certain static page contents, so that I can control what is being displayed in these pages

Notes

  • The static content is determined by what platform it will be displayed and that content is it for

  • Content is in rich text format and can be styles accordingly

  • They can add a banner image to the static page

  • About the App

    • Platform

      • Admin portal - displayed in the login page and users menu item

      • Therapist portal - displayed in the login page and users menu item

      • Patient app - displayed in the users menu item

    • URL path segment - "about-us" (must use this specific value)

  • FAQ

    • Platform

      • Admin portal - displayed in the users menu item

      • Therapist portal - displayed in the users menu item

      • Patient app - displayed in the users menu item

    • URL path segment - "faq" (must use this specific value)

44

Settings - On boarding/tutorial pop-up

As a global admin, I want to be able to

display the education materials as a data table list

Acceptance Criteria

  • Data table of Education Materials

    • Title

    • Category(ies)

    • Language

    • Type - File type

  • Summary count label (e.g. "Showing 1 to 5 of 10 items)

  • Pagination labels

    • Drop down to select number of items to show in a page

    • Previous icon: returns to the previous page

    • First icon: returns to the first page

    • Next icon: goes to the next page

    • Last icon: moves to the last page

  • Action button

    • When click it will show the following actions

      • Edit Info - when clicked, opens the create education material modal pop-up pre-filled with current content information

        • Can save/cancel updated information

      • Delete - When clicked, opens a delete modal confirmation form

Must have

30

Questionnaire Creation/Editing

As a global admin, I want to be able to create/edit questionnaires so that I can add/update them in the global library of questionnaires

Acceptance Criteria

  • When I click on the New Content button and select New Questionnaire, it opens the create new questionnaire page

  • Title: textbox, required, 255 characters

  • Category drop downs: List all questionnaire category as defined in the Categories management page

    • Required

  • Language drop down

    • List all language records available to the education material

    • Has link in the last item to create new translation (no available if main language is not created yet)

  • Description: textbox, required, 255 characters

  • New Question button

    • At least one questions should be in the questionnaire

    • Click adds a question

  • Question can be dragged to set question order

    • Question number label dynamically changes based on order

  • Copy question

    • Copy icon when clicked creates a copy of the question added at the bottom of the list

  • Create/Save button

    • Saves created/edited questionnaire

    • System notification of successful/failed saving

      • Display red error messages for failed field validation

    • Closes the dialog

  • Cancel button

    • Returns to the questionnaire list without saving

    • Closes the dialog

Must have

31

Adding Questions to Questionnaire

As a global admin, I want to be able to create/edit questions so that I can add/update them in questionnaires

Acceptance Criteria

  • Clicking the New Question button on the questionnaire create/edit page opens a question creation form

  • Has a top bar that displays

    • Question number

    • Drag grip icon

      • Click and drag re-orders the question

    • Copy Icon

      • copies the questions and add it to the bottom of the question list

    • Edit Icon

      • clicking allows user to edit the form

    • Delete Ion

      • pops up a confirmation dialog and deletes after confirmation

  • Has the following form fields

    • Question - free text, required, 255 characters

    • Question type - dropdown, required

      • Checkboxes

      • Multiple choice

      • Open-end

        • 2 checkbox options

          • Free text

          • Numbers only

    • Upload image link

    • Answer Options - required

      • Checkboxes - minimum of two options, can multi-select

      • Multiple choice  - minimum of two options, can only choose 1 option

      • Open-end

        • free text - max 255 characters

        • numbers only - numbers only max 15 character

  • Done button

    • Saves created/edited question

    • System notification of successful/failed saving

      • Display red error messages for failed field validation

    • Closes the question form

  • Cancel button

    • Returns to the questionnaire list without saving

    • Closes the question form

Must have

32

Questionnaire List

As a global admin, I want to be able to display the questionnaires as a data table list

Acceptance Criteria

  • Data table of Questionnaires

    • Title

    • Description

    • Category(ies)

    • Language

    • Number of questions

  • Summary count label (e.g. "Showing 1 to 5 of 10 items)

  • Pagination labels

    • Drop down to select number of items to show in a page

    • Previous icon: returns to the previous page

    • First icon: returns to the first page

    • Next icon: goes to the next page

    • Last icon: moves to the last page

  • Action button

    • When click it will show the following actions

      • Edit Info - when clicked, opens the create questionnaire page 

        • Can save/cancel updated information

      • Delete - When clicked, opens a delete modal confirmation form

Must have

33

Categories Management

As a Global Admin, I want to manage the Category of contents (Exercises, Questionnaires, Education Materials), so that I can manage the contents easier

Acceptance Criteria

  • When I click on the Categories menu, I will open the categories list page

  • It will have 3 tabs for Exercises, Questionnaires and Education Materials

  • Each tab will have a multi-column layout where each column corresponds to a category level

  • On each column

    • Have search box to search/filter category

    • Have a  icon to add new category

    • Clicking the category name displays the category values

    • Clicking the category value displays the sub-category in the next column

  • On each category item will have

    • Edit Icon

      • clicking opens the create/edit category pop-up

    • Delete Icon

      • deletes category

      • only available if category is not in use

  • Categories that are not used will have a "Not in use" label

Must have

34

Create/Edit Category

As a Global Admin, I want to be able to create/edit categories so that I have more categories I can use to differentiate contents

Acceptance Criteria

  • When I click the  icon in the categories column, I will open the create/edit category pop-up dialog

  • The dialog has

    • Radio button to indicate if Existing Category or New Category

    • Category: text box, required, 255 characters

      • Not available if category level is the same as the maximum depth

    • Category value: text box, required, 255 characters

      • I can add multiple values by separate them by semicolon (;)

    • Add/Save button

      • Add/saves created/edited category

      • System notification of successful/failed saving

        • Display red error messages for failed field validation

      • Closes the dialog

    • Cancel button

      • Returns to the category list without saving

      • Closes the dialog

Must have

User interaction and Workflow

Login

  • User goes to site

  • User enters email and password

    • If credentials are correct, loads the dashboard page

    • Else, prompted for wrong login credentials and user can

      • Retry login, or

      • Reset password

  • User resets password

    • User clicks the "Forget your password?" link to load the Password Recovery page

      • User enters email and clicks on the Recover Password button

        • If user's email exist on the database, success notification is shown and password recovery email is sent to the user's email

          • If email has not been received, user can click link to resend the email

        • Else, failed notification is shown and message says that the email does not exist in the database

      • User clicks on the "< Login" link to go back to the login page

View/Edit User Profile

  • User clicks on user name in the top right corner and selects Update Profile

  • Loads the User Profile page with the Profile Information tab active

  • User updates information and clicks the Save button to save changes or Cancel to revert to the changes to last save information

  • Displays success notification when save is successful

Change Password

  • User clicks on user name in the top right corner and selects Change Password

  • Loads the User Profile page with the Password tab active

  • User types current password

  • User types new password

  • User confirms new password

  • User clicks the Save button to save new password or Cancel to revert to the changes

    • If current password is correct and  New password and Confirm new password match each other

      • Then, the new password is updated to the database

      • Show system notification “Password changed successfully!”

    • If the password input in Old Password does not match with the current password, a red text line message will be displayed: “Old password is not valid.”

    • If the input New password and Confirm new password do not match each other, a red text line message will be displayed: “Confirm new password does not match.”

Logout

  • User clicks on user name in the top right corner and selects Logout

  • User gets logout of the session and returns to the login page

Dashboard

  • User after login is redirected to the dashboard page and shows the data and charts of the dashboard

  • User can click on the dashboard menu to go to the dashboard page

Admin Management - Viewing Other Admin Users

  • User clicks on Admins menu and loads the Admin Management page

  • User can select 3 different tabs:

    • Global Admins

      • Can be accessed by Global Admins

      • When clicked, displays the list of global admins

    • Country Admins

      • Can be accessed by Global Admins

      • Can be accessed by Country Admins

      • When clicked, displays the list of country admins

    • Clinic Admins

      • Can be accessed by Global Admins

      • Can be accessed by Country Admins

      • When clicked, displays the list of clinic admins

Admin Management - Search/Filter Other Admin Users

  • User clicks on Admins menu and loads the Admin Management page

  • User can select a tab to search admin list

  • User types on the Search box,  the admin list will only return the records that one of their column values contain the search text

  • User clicks on the Filter button and types on a specific filter in the filter bar and the admin list will only return the records that matches the text in the specific column/field

  • User can customizes the columns displayed in the data table by clicking on the Columns button and toggle the checkbox of the columns that they want displayed

  • User can customize the number of items shown in the data table by  selecting the number of items to be shown in a page

Admin Management - Create New Admin

  • User clicks on New Admin button to open the Create/Edit Admin User popup

  • User chooses what type of admin user is created: Global Admin, Country Admin or Clinic Admin

    • Global admin can create Global Admin, Country Admin or Clinic Admin users (each country would need a Country Admin.

    • )Country admin can create Clinic Admin users

  • User enters required information for new Admin user and clicks on the Create button

    • If all input fields are valid, then it saves the new Admin user and show system notification of successful user creation

    • Else, display warning/error messages

  • User clicks on the Cancel button to cancel the Admin user creation and closes pop-up and returns to the Admin user list

Admin Management - Edit Admin User Information

  • User clicks on Actions > Edit Info button of the Admin user that they want to edit and opens the Create/Edit Admin User popup

    • Pop-up is pre-filled with existing information of selected Admin user

  • If global admin user, then they can change the admin user type of selected Admin user

  • User edits/update information of the selected Admin user and clicks on the Save button

    • If all input fields are valid, then it saves the updated Admin user's information and show system notification of successful user information update

    • Else, display warning/error messages

  • User clicks on the Cancel button to cancel the Admin user information update and closes pop-up and returns to the Admin user list

Admin Management - Deactivate Admin User

  • User clicks on Actions > Deactivate button of the Admin user that they want to deactivate

    • Opens an activate/deactivate modal confirmation form, when confirmed changes the status of the Admin user account

    • Deactivated accounts cannot login into the system

Admin Management - Delete Admin User

  • User clicks on Actions > Delete button of the Admin user that they want to delete the account

    • Opens an delete modal confirmation form, when confirmed deletes the account of the selected Admin user

Therapist Management - Viewing List of Therapists

  • User clicks on Therapist menu and loads the Therapist Management page

    • Global admin users does not have access to the page

    • Country admin users only see therapists that belong to the same country

    • Clinic admins can only see therapist that are from the same institution/clinic

Therapist Management - Search/Filter Other Therapists 

  • User clicks on Therapist menu and loads the Therapist Management page

  • User types on the Search box,  the therapist list will only return the records that one of their column values contain the search text

  • User clicks on the Filter button and types on a specific filter in the filter bar and the therapist list will only return the records that matches the text in the specific column/field

  • User can customizes the columns displayed in the data table by clicking on the Columns button and toggle the checkbox of the columns that they want displayed

  • User can customize the number of items shown in the data table by  selecting the number of items to be shown in a page

Therapist Management - Create New Therapist

  • User clicks on New Therapist button to open the Create/Edit Therapist popup

  • User enters required information for new Therapist and clicks on the Create button

    • If all input fields are valid, then it saves the new Therapist and show system notification of successful creation

    • Else, display warning/error messages

  • User clicks on the Cancel button to cancel the Therapist creation and closes pop-up and returns to the Therapist list

Therapist Management - Edit Therapist Information

  • User clicks on Actions > Edit Info button of the Therapist that they want to edit and opens the Create/Edit Therapist popup

    • Pop-up is pre-filled with existing information of selected Therapist

  • User edits/update information of the selected Therapist and clicks on the Save button

    • If all input fields are valid, then it save the updated Therapist's information and show system notification of successful user information update

    • Else, display warning/error messages

  • User clicks on the Cancel button to cancel the Therapist information update and closes pop-up and returns to the Therapist list

Therapist Management - Deactivate Admin User

  • User clicks on Actions > Deactivate button of the Therapist that they want to deactivate

    • Opens an activate/deactivate modal confirmation form, when confirmed changes the status of the Therapist account

    • Deactivated accounts cannot login into the system

Therapist Management - Delete Admin User

  • User clicks on Actions > Delete button of the Therapist that they want to delete the account

    • Opens an delete modal confirmation form, when confirmed deletes the account of the selected Therapist

Services Management - Viewing List of Services

  • Only available to Global admin users

  • User clicks on Services Setup menu to open the services management page

  • User can select 3 different tabs:

    • Exercises - List all of existing exercises

    • Education Materials - List all of existing education materials

    • Questionnaire - List all of existing questionnaire

Services Management - Search/Filter Other Service Contents

  • User clicks on Services Setup menu to open the services management page

  • User selects tab of specific service content that they want to search/filter

  • User types on the Search box, the service content list will only return the records that one of their column values contain the search text

  • User can filter the service content by category and language by selecting the value from the drop down list

Services Management - Create New Single Exercise Content

  • User clicks on Services Setup menu to open the services management page

  • User clicks on New Content button and selects New Exercise to open the Create/Edit Exercise page

  • User selects the option to create a single exercise

  • User uploads media for the exercise

    • Can select/browse from desktop file

    • Can drag/drop files into the media area

    • Can remove added media by clicking on the  icon  

  • User fills in exercise information

  • User clicks the Create/Save button

    • Saves created/edited exercise

    • System notification of successful/failed saving

  • User clicks the Cancel button to cancel content creation and returns to the exercise list without saving

Services Management - Create New Exercise Content in Bulk

  • User clicks on Services Setup menu to open the services management page

  • User clicks on New Content button and selects New Exercise to open the Create/Edit Exercise page

  • User selects the option to upload bulk exercises

  • User can download a template for the spreadsheet

  • User uploads XLSX/CSV of exercises

    • Can select/browse from desktop file

    • Can drag/drop files into the upload area

  • User maps the spreadsheet columns to exercise fields (how to include if exercise needs to include reps and set and pain ?)

  • User clicks the Upload button

    • System creates the exercises

    • System displays report of new exercise created and in what language

    • System notification of successful/failed saving

  • User clicks the Cancel button to cancel bulk upload and returns to the exercise list

Services Management - Create New Education Material Content

  • User clicks on Services Setup menu to open the services management page

  • User clicks on New Content button and selects New Education Material to open the Create/Edit Education Material pop-up

  • User uploads file for the content

    • Can select/browse from desktop file

    • Can drag/drop files into the upload area

  • User fills in Education Material information

  • User clicks the Create/Save button

    • Saves created/edited Education Material

    • System notification of successful/failed saving

  • User clicks the Cancel button to cancel content creation and returns to the Education Material list without saving

Services Management - Create New Questionnaire Content

  • User clicks on Services Setup menu to open the services management page

  • User clicks on New Content button and selects New Questionnaire to open the Create/Edit Questionnaire page

  • User fills in Questionnaire information

  • User clicks the Add Question button to add at least one question 

    • User enters the question and question type

      • User can upload a photo for the question

        • Can select/browse from desktop file

        • Can drag/drop files into the upload area

    • User enters answer options (depends on question type)

  • User can re-order questions by dragging them

  • User can copy a question and created copy is added as the last question in the list

  • User clicks the Create/Save button

    • Saves created/edited Questionnaire

    • System notification of successful/failed saving

  • User clicks the Cancel button to cancel content creation and returns to the Questionnaire list without saving

Categories Management - View Categories for Each Content Type

  • Only available to Global admin users

  • User clicks on Categories menu to open the categories management page

  • User can select 3 different tabs:

    • Exercises - List all of exercise categories

    • Education Materials - List all of education material categories

    • Questionnaire - List all of questionnaire categories

  • User clicks on the parent category and expands and displays the categories

  • User clicks on the category it displays the sub-categories on the next column

  • User clicks on the sub-category and displays the sub-category values on the next column

Categories Management - Add/Edit Categories

  • User clicks on the  icon to add a new category

    • Opens a pop-up to enter the category/sub-category name and values

      • Multiple values can be added using semi-colon separated values 

    • User clicks the Add button to add the category and it's values

    • User clicks the Cancel button to cancel the addition of the category and closes the pop-up

  • User clicks on the  icon to edit an existing category

    • Opens a pop-up to edit the category/sub-category name and values

      • Multiple values can be added using semi-colon separated values 

    • User clicks the Save button to save the category and it's values

    • User clicks the Cancel button to cancel the edit of the category and closes the pop-up

...

setup an on boarding/tutorial welcome screen on the therapist portal, so that it can be displayed when a therapist logs in and can guide them on the next steps to take.

Notes

  • Content is in rich text format and can be styles accordingly

  • The order of the page determines the order it will displayed on the pop-up

  • The pages can be re-ordered via drag and drop

45

Dashboard

As a back-end admin, I want to view brief information about admins, therapists, patients and treatments

Notes

  • There are two main information visual aids in the dashboard 1) information cards and 2) charts

  • Global Admin

    • Cards

      • Total number of Global Admins

      • Total number of Country Admins

      • Total number of Clinic Admins

      • Total number of Therapists

    • Charts

      • Map with marker of each country added in the system

      • Bar graph clinic admin per country

      • Bar graph therapist per country

      • Total number of patients by gender per country

      • Total number of patients by age (range per 10) per country

      • Total number of treatment plans by gender per country

      • Total number of treatment plans by age (range per 10)

      • Total number of on-going treatment plans by gender per country

      • Total number of on-going treatment plans by age (range per 10)

  • Country Admin

    • Cards

      • Total number of Clinic Admins

      • Total number of Therapists / Therapist Country Limit

    • Charts

      • Bar graph therapist per clinic

      • Total number of patients by gender per clinic

      • Total number of patients by age (range per 10) per clinic

      • Total number of on-going treatment plan by gender per clinic

      • Total number of on-going treatment plan by age (range per 10)

  • Clinic Admin

    • Cards

      • Total number of Therapists / Therapist Clinic Limit

      • Total number of Patients

      • Total number of On-going Treatment Plans