Use Cases - CMPUT301F18T10/MediTrack GitHub Wiki

Task Basics

Use Case ID:01.01

Item Description
Use Case Name AddProblem
Use Case ID 01.01
Participating Actors Patient, MediTrack
Goal Add a new problem
Trigger User chooses to add a new problem
Precondition The problem that the user wishes to create does not exist
Postcondition The problem that the user wished to create exists
Basic Flow 1. User chooses to add a new problem 2. MediTrack prompts user to enter a title, date, and a brief description 3. User fills title, date, and description 4. MediTrack adds a new problem and notify the user of its success
Exceptions 4. Not all fields are fileed4.1 MediTrack informs the user that all fields are required to add a new problem4.2 Returns to step 2 5. The problem with entered “title” exists 5.1 MediTrack informs the user that it cannot add a problem with the title of an existing problem 5.2 Returns to step 2
Constraints 1. The maximum length for a title must be at least 30 characters 2. The maximum length for a description must be at least 300 characters
Related Artifacts US 01.01.01US 01.01.02US 01.01.03US 08.01.01

Use Case ID:02.01

Item Description
Use Case Name ViewProblems
Use Case ID 02.01
Participating Actors Patient, MediTrack
Goal View a list of their problems
Trigger User logs in
Precondition User has internet access
Postcondition A list of problems displayed to the user
Basic Flow 1. User logs in 2. Meditrack displays the main page where a list of problems are shown.
Include UseCase_LogIn
Related Artifacts US 01.02.01

Use Case ID:01.03

Item Description
Use Case Name EditProblem
Use Case ID 01.03
Participating Actors Patient, MediTrack
Goal Edit an existing problem
Trigger User selects a problem for edit
Precondition The selected problem is not modified
Postcondition The selected problem is modified
Basic Flow 1.User chooses a problem to modify 2. MediTrack prompts user to edit its current title, date, and description 3. User selectively modifies one or more fields of the problem 4. MediTrack changes the existing title, date, and description to match user input
Exceptions 4. Not all fields are filled 4.1 MediTrack informs the user that all fields are required to modify this problem4.2 Returns to step 2 5. New title is not unique 5.1 MediTrack informs the user that title must be unique 4.2 Returns to step 25.2 Returns to step 2
Inclule UseCase_ViewProblems
Related Artifacts US 01.03.01

Use Case ID:01.03

Item Description
Use Case Name DeleteProblem
Use Case ID 01.03
Participating Actors Patient, MediTrack
Goal Delete an existing problem
Trigger User click the delete button for the problem
Precondition The selected problem exists
Postcondition The selected problem deleted
Basic Flow 1User logs in 2. User chooses a problem to see its details 3. Meditrack shows the details of that problem 4. User opts to delete the problem 5. Meditrack deletes the problem
Inclule UseCase_LogIn
Related Artifacts US 01.04.01

Record Details

Use Case ID:01.02

Item Description
Use Case Name AddRecord
Use Case ID 01.02
Participating Actors User (patient), MediTrack
Goal To add new record to a particular problem
Trigger User clicks 'plus' floating action button
Precondition User has a problem in the list of problems to add a record to
Postcondition The new record is added to the list of records for the selected problem with a timestamp
Basic Flow 1. User chooses to add a new record to a problem.m 2. MediTrack prompts user to enter a title, comment and a photo. 3. User adds a title, a photo and a comment. 4. Meditrack prompts user to add more photos, a body location and a geo-location to the record. 5.User can add up-to 10 photos, a body location and a geo-location or choose not to enter either or all of these. 6.MediTrack adds the new record to the record list of that problem.
Exceptions 6. User does not fill the either the title or add a photograph 6.1 MediTrack informs the user that a required field is left blank.
Constraints 1.User can only attach up-to 10 photographs
Related Artifacts US 02.02.01US 02.03.01US 02.04.01US 02.05.01US 02.06.01US 02.08.01

Use Case ID: 02.01

Item Description
Use Case Name ViewRecord
Use Case ID 02.01
Participating Actors User(Patient/Care Provider), MediTrack
Goal View an existing record
Trigger User selects a record to View by selecting a record from the record list of a problem
Precondition A record exists in the record list to view
Postcondition The details of the selected record are visible
Basic Flow 1. User chooses a record to view 2. MediTrack displays all details of the selected record including its title, comments, photos in imageview, a button linked to the body location and geolocation of the problem each. 3. User clicks on the imageview. 4. A slideshow of all the photos of the record is displayed. 5.User clicks on geolocation button. 6.The geolocation of the record is displayed on a map. 7. User clicks on body location button. 8.Body location of the record is displayed on a body location cutout.
Exceptions 5. There is no geolocation for the record 5.1 MediTrack informs the user that there is no geolocation for the record. 7.There is no body location for the record. 7.1 MediTrack informs the user that there is no body location for the record
Constraints 1.User can only attach up-to 10 photographs
Related Artifacts US 02.01.01US 02.10.01US 10.02.01US 11.04.01

Use Case ID:07.03

Item Description
Use Case Name Add a Caregiver Comment (record) to a Patient's Problem
Use Case ID 07.03
Participating Actors Caregiver, MediTrack
Goal To add a new caregiver comment to the list of records for the problem
Trigger User chooses to add a new caregiver comment
Precondition The user is logged in as caregiver and arrived at the record screen for the right problem for the right patient
Postcondition The patient is now added to the list of assigned patients for the caregiver
Basic Flow 1. User selects the "+" floating button 2.MediTrack prompts the user to enter the comment 3. User enters the comment and selects add. 4. MediTrack adds the new caregiver and informs the user of success
Include UC 07.02
Related Artifacts US 07.01.03

User Profile

Use Case ID:03.01

Item Description
Use Case Name UserRegistration
Use Case ID 03.01
Participating Actors User (patient/care provider), MediTrack
Goal Register a new account
Trigger User chooses to sign up for a new account
Precondition User account does not exist in “database”
Postcondition User account exists in “database”
Basic Flow 1. User chooses to sign up for an account 2.MediTrack prompts user to enter userid, username, contaction information (email and phone number) and at least two body location photos(front and back). 3. User fills fields and submits for registration4. The body location images are stored locally in the device and in the database.5.MediTrack adds the required account to its “database” and notify user for the success
Exceptions 4. Submitted userid is less than 8 characters 4.1 MediTrack clears the userid field and notify user that the userid needs to be at least 8 characters. 4.2 Returns to step 2 4. Submitted userid is not unique 4.1 MediTrack clears the userid field and notify user that the userid is not unique 4.2 Returns to step 2 4.One of the fields prompted by MediTrack is not filled 4.1MediTrack notify user that all information must be filled 4.2 Returns to step 2
Constraints There should be at least two body location pictures.
Related Artifacts US 03.01.01US 03.01.02US 03.01.03US 11.01.01US 11.03.01US 11.09.01

Use Case ID:08.01

Item Description
Use Case Name Log in
Use Case ID 08.01
Participating Actors Patient/Caregiver, MediTrack
Goal Log into the application
Trigger User chooses to log in
Precondition 1.The user knows their username 2.User isn't already logged into the application
Postcondition The user is now logged into the application
Basic Flow 1. User launches the application 2. User enters the username in the first dialog box 3. User does not need a password. 4. If the user is a caregiver, they select the caregiver radio button. 5.The user selects sign in.
Exceptions 5. The user name is invalid 5.1 MediTrack informs the username is not registered. 5.2 Returns to step 2
Alternate Flow 1. User launches the application in a new device 2. User enters the username in the first dialog box 3. User scans a security code generated during registration. 4. If the user is a caregiver, they select the caregiver radio button. 5.The user selects sign in.
Related Artifacts US 03.04.01US 03.05.01US 03.07.01

Use Case ID:03.01

Item Description
Use Case Name EditPatientInfo
Use Case ID 03.01
Participating Actors Patient, MediTrack
Goal Edit the contact information (email address, phone number)
Trigger User clicks the ‘Edit’ button in the profile page
Precondition User signed in successfully
Postcondition The contact information is updated
Basic Flow 1. MediTrack displays the profile 2. User clicks the ‘Edit’ Button. 3. MediTrack prompts user to edit its email address, and phone number or add or delete body location photos. 4. User fills in the email address, and phone number in the correct format.5. User adds new body location images or deletes one or more of the existing body location images 6.User clicks ‘Finish’ button. 6.MediTrack updates the contact information.
Exceptions 5. Not all required fields are filled 5.1 MediTrack displays an error. 5.2 System returns to step 3
Related Artifacts US 02.02.01US 03.02.01US 11.06.01US 11.07.01

Use Case ID: 03.03

Item Description
Use Case Name ViewContactInfo
Use Case ID 03.03
Participating Actors User, MediTrack
Goal View contact information
Trigger User clicks username
Precondition User is able to view a username on screen
Postcondition None
Basic Flow 1.User sees a username and clicks it. 2. MediTrack shows contact information for that user to user
Related Artifacts US 03.03.01

Searching

Use Case ID:04.01

Item Description
Use Case Name SearchProblem
Use Case ID 04.01
Participating Actors User (patient/care provider), MediTrack
Goal Use keywords to search related problems
Trigger User clicks ‘Search’ button
Precondition User enters at least one keyword
Postcondition Related problems displayed
Basic Flow 1. MediTrack prompts the user to enter keywords 2. User enters keywords. 3. User selects at least one of checkboxes (‘Keywords’, ‘GeoLocation’, or ’BodyLocation’). 4. User clicks ‘Search’ button. 5.MediTrack displays related results/problems.
Exceptions 4. User doesn’t provide any keyword 4.1 MediTrack displays an error . 4.2 System returns to step 1 5. No matching problems 5.1 MediTrack displays an error 5.2 System returns to step 1
Constraints 1.User can only attach up-to 10 photographs
Related Artifacts US 04.01.01US 04.02.01US 04.03.01

Patient Assigned

Use Case ID:06.01

Item Description
Use Case Name View list of assigned patients
Use Case ID 06.01
Participating Actors Caregiver, MediTrack
Goal View a list of patients assigned to the current user
Trigger User chooses to view the list of patients
Precondition The user is logged in as caregiver
Postcondition The list of patients is visible
Basic Flow 1. User presses the sign in button 2. MediTrack displays a scrollable list of assigned patients
Includes UC 01.01
Related Artifacts US 06.01.01

Care Provider

Use Case ID: 07.01

Item Description
Use Case Name Add Patient
Use Case ID 07.01
Participating Actors Caregiver, MediTrack
Goal Add a new patient to list of assigned patients
Trigger User chooses to add a new patient
Precondition The user is logged in as caregiver and arrived at the patients list screen. The user knows the username of the patient they wish to assign.
Postcondition The patient is now added to the list of assigned patients for the caregiver.
Basic Flow 1. User chooses to add a patient by selecting the "+" floating button on the list of patients screen 2.User is prompted by MediTrack to enter the username of the patient. 3. User enters the username 4. MediTrack adds the new patient and informs the user of success
Exceptions 3. No such username exists in the database 3.1 MediTrack informs the user that no such patient exists. 3.2 Returns to step 1 3. The patient username already exists in the caregivers assigned patients list. 3.1 MediTrack informs the user that the patient already exists 3.2 Returns to step 1
Alternate Flow 1. User chooses to add a patient by selecting the "+" floating button on the list of patients screen 2.User is prompted by MediTrack to scan the code. 3. User scans the code shared by the patient. 4. MediTrack adds the new patient and informs the user of success
Include UC 01.01
Related Artifacts US 07.01.01US 03.06.01

Use Case ID:07.02

Item Description
Use Case Name Browse List of Problems for an Assigned Patient
Use Case ID 07.02
Participating Actors Caregiver, MediTrack
Goal The user can see all the problems added by the specified patient
Trigger User chooses to view the list of problems for a patient
Precondition The user is logged in as caregiver and arrived at the patients list screen. The user knows the username of the patient they wish to view problems for.
Postcondition A scrollable list of the patient's problems are displayed.
Basic Flow 1. The user scrolls through the list and finds the desired patient 2. MediTrack displays all assigned patients. 3. The user selects the desired patient by selecting the list element. 4. MediTrack displays the problems list screen. 5.If user chooses to view the records in the problem they can select the problem. 5.1 MediTrack displays the record screen for that problem.
Include UC 01.01 UC 06.01
Related Artifacts US 07.01.021

Use Case ID:07.03

Item Description
Use Case Name Add a Caregiver Comment (record) to a Patient's Problem
Use Case ID 07.03
Participating Actors Caregiver, MediTrack
Goal To add a new caregiver comment to the list of records for the problem
Trigger User chooses to add a new caregiver comment
Precondition The user is logged in as caregiver and arrived at the record screen for the right problem for the right patient
Postcondition The patient is now added to the list of assigned patients for the caregiver.
Basic Flow 1. User selects the "+" floating button 2. MediTrack prompts the user to enter the comment. 3. User enters the comment and selects add. 4. MediTrack adds the new caregiver and informs the user of success
Include UC 07.02
Related Artifacts US 07.01.03

Offline behavior

No dedicated use case. (Covered by other test cases.)

Photographs

Use Case ID:09.01

Item Description
Use Case Name AttachPhotographs
Use Case ID 09.01
Participating Actors User (patient/care provider),Sys admin, MediTrack
Goal Attach photographs as further viewable details to a record of patient
Trigger User clicks ‘Browse’ button
Precondition User had taken a picture for a record
Postcondition The uploaded photograph had been attached to a record.
Basic Flow 1. MediTrack prompts the user to attach one or more photographs to a record of the user. 2. User selects photographs from albums. 3. User uploads selected photographs. 4. MediTrack attacths uploaded photographs with a record.
Exceptions 4. User attach inappropriate photographs of a body part to a record. 5 Attached the photograph exists in the user’s record. 5.1 MediTrack informs the user that it cannot be attacted. 5.2 Retern to Step 2
Constraints 1.User attachs more than 10 photographs 2. The attached photograph exceeds 65536 bytes in size.
Related Artifacts US 09.01.01US 09.01.02US 09.02.01US 09.02.01

Geolocation and Maps

Use Case ID:10.01

Item Description
Use Case Name AddGeoLocation
Use Case ID 01.02
Participating Actors User (patient), MediTrack
Goal To add a Geo Location to a particular record
Trigger User clicks 'add GPS' button
Precondition User has a record in the list of records to add a Geo location to
Postcondition The Geo Location is added to the selected record
Basic Flow 1. UUser chooses to add a geo location to a record. 2. User clicks the 'add GPS' button. 3. UUser selects a point on the map to add as the Geo Location. 4. The selected point is added as the Geo location for the record
Constraints 1.User can only attach one Geo Location for a record
Related Artifacts US 10.01.01

Use Case ID:10.01

Item Description
Use Case Name ViewMap
Use Case ID 10.01
Participating Actors User (patient/care provider), MediTrack
Goal To view all the Geo Locations for a patient on a map
Trigger User selects 'maps' in the menu in the problem list activity of a patient
Precondition User has at least one patient in the patient list to select from
Postcondition All the locations from all the records of that patient are displayed on a map
Basic Flow 1. User selects 'maps' in the menu in the problem list activity of a patient. 2. All the locations from all the records of that patient are displayed on a map to the user.
Exceptions 2. There is no location stored in any record for that patient 2.1 MAn empty map is displayed..
Related Artifacts US 10.03.01

Use Case ID: 12.01

Item Description
Use Case Name RecordsMapView
Use Case ID 12.01
Participating Actors User (patient/care provider),MediTrack
Goal View records regarding its geo-locations on the map.
Trigger User clicks ‘VIEW IN MAP’ button
Precondition User had created records
Postcondition Records appears on the google map
Basic Flow 1.MediTrack prompts the user to view records. 2. User clicks the view button. 3. MediTrack informs these records on an interactive map.
Constraints 1.All records must contains geo-locations.
Related Artifacts US Wow factor

Body-locations

Use Case ID: 11.01

Item Description
Use Case Name AddBodyLocation
Use Case ID 11.01
Participating Actors User (patient), MediTrack
Goal To add a Body Location to a particular record
Trigger User clicks 'add Body Location' button
Precondition User has a record in the list of records to add a Body location to
Postcondition The Body Location is added to the selected record
Basic Flow 1. User chooses to add a body location to a record. 2. User clicks the 'add Body Location' button 3.User selects a point on the body-location photo to add as the body Location or selects a body location from the existing body locations. 4. If User selects a new point, user labels the selected point as a particular part of the body. 5.The selected point is saved as the labelled part and is added as the body location for the record
Related Artifacts US 11.02.01US 11.05.01US 11.08.01