Status
# | Step | Status |
---|---|---|
1 | Responsible prepares rough business analysis/reqs doc | Done |
2 | Get CHAI review | Done |
3 | Get Akros Review | Done |
4 | Get Ona feedback | Done |
5 | Responsible - 1 iteration for feedback | Done |
6 | Ona sign off | Done |
7 | Ona tech spec scoping and mockups | In progress |
8 | Ona LOE | In progress |
9 | Ona scheduling | In progress |
The following tickets are detailed in this document:
- RVL-858Getting issue details... STATUS
- RVL-856Getting issue details... STATUS
- RVL-506Getting issue details... STATUS
- RVL-476Getting issue details... STATUS
Requirements
- Ability to look-up households per list view lookup
- Need some kind of searchable unique identifier to uniquely identify people to avoid counting them twice. (QR code)
- Need a way to link family that doesn’t have locations.
- Search needs to search floating families
Assumptions
- You will never treat a child without a caregiver to consent.
- You will never treat a child without linking them to a family entity. All workflows rely on registering a family/family head.
- On-ground protocols will determine and train on what defines a family entity.
- We will not be able to unlink and relink to "fix" where linkages were made incorrectly in the MVP with QR codes.
Workflow
There are two main templates that will inform these workflows. The Web UI reporting and plan template contains the details of the plan and activity as well as requirements for web based dashboards. The Data collection data dictionary defines the forms and data needed for register family, register child and drug distribution workflow, as well as two aggregate forms.
Plan: NTD MDA in community - RVL-858Getting issue details... STATUS
- This should follow the IRS model for plan, where we see a map of all eligible operational areas and point and click which we prioritize.
Location types: Residential structure
Activities/Tasks available:
- Register Family (linked to location by also floating, detailed in workflow 3) - does not autogenerate
- Register Child - does not autogenerate
- Drug Distribution - autogenerates against any eligible, registered child. We need to define eligibility criteria and generate tasks based on these criteria and NOT for all person-entities. - RVL-856Getting issue details... STATUS
Drug Allocation (team-level task not linked to location)Drug Return (team-level task not linked to location)
Workflow 0 - Confirm household eligibility and presence
- Visit home, tap on house from map view, following questions appear before kicking off family registration
- Confirm house is residential, someone is home to give info, and consent is given, is main house?
- If no to any of above, follow skip logic and do not enter family module and family registration
Workflow 1a, 1b, 1c - WHEN AT HOUSE: Register/Edit Family, Register/Edit Child, Distribute Drugs (all within Family Module)
- After answering yes to all of Workflow 0
- Access family module, register family
- Register each child, including children that are not present
- Treat each eligible, present, child. Children not treated will be registered but left untreated.
Workflow 2 - Leave QR code when not everyone home - RVL-475Getting issue details... STATUS
- In 'Add family' workflow (1), after answering 'no' to 'is everyone home' and 'yes' to 'is main house'
- User is taken to a QR scanning view.
- "Scan the QR code for this structure and leave stickers at house"
- User scans QR code
- User leaves two identical QR stickers at house; one will stay with the house at that location, the other can be carried by the family with them. The QR code is assigned/linked at a structure level and not a person level. There is not one QR code per person registered, rather one QR code per location.
- QR codes need to have the operational area code written on them, at the time they are distributed.
- The intention of this is to allow us to simplify the lookup for the QR later in workflow 4. Humans will not read the QR code, but use it for less error prone id look up.
Why is this needed? From the QR code perspective, we just need the unique ID. Are humans going to read the QR code for some specific reason?
- Need QR code because need to be able to assign to a structure even if a family is not home and leave something physically at the structure for the family to find. An ID would work for this if the ID is not reliant on family information to be generated and it can be pre-generated so that it printed and then assigned to a location when there. A QR code seems easier for a user to scan into the app and then stick on the house, than have to read and type in an ID which is more prone to errors.
MB: We are in agreement on value of QR code. Just saying there is no reason we need to
Workflow 3 - FLOATING FAMILY, NOT AT HOUSE: Linking to Location and entering Family Module
Find someone who belongs to unregistered household - RVL-476Getting issue details... STATUS or does not belong to that community
- This could happen in the village at a location that is not the household location
- If have QR code: Access family module from list view through a button "Family lookup"
-
RVL-476Getting issue details...
STATUS
- QR code lookup: See data dictionary logic for question flow.
- If yes, open QR code scanner to link (Details in QR linking below)
- If no, "Are you sure this family/child does not belong to an already registered house?"
- After lookup (i) or entering registration without lookup (ii) Proceed to family module (workflow 1) .
- QR code lookup: See data dictionary logic for question flow.
- If no QR code: Attempt to link to existing household first by searching list view.
- Searchable features: all household names and phone number.
- If find family, proceed to family module (Workflow 1)
- If no family found, register as new floating family without QR code
- Searchable features: all household names and phone number.
Workflow 4 - FLOATING FAMILY NOT WITHIN VILLAGE (Point-distribution?)
The program would like to conduct 'mop-up' from a central location, which means that families may show up with their QR code or with no QR code at a health facility. This requires the following features:
- Register new floating families to the health facility catchment level and use QR code to lookup across synced data
- Global look-up with search functionality in list view
- Global look-up with QR code
MB: Finding this section a bit confusing.
If QR code, we just need to look up. The main question is lookup will only work against locally synced data. If QR code is out of the area you have synced we will have to implemented a global lookup (requiring connectivity). Right. Options 2 and 3 are trying to get around doing a global lookup by instead suggesting we just access the different OAs and sync data as people from that OA are treated. Which also requires connectivity which we are counting on, but doesn't require actually building the search in a global way.
If not QR code, just register a family and assign them to either the highest level catchment or sub area if they can identify it. I don't think we should try and link them to structures though. I modified this write-up to be less confusing, as I think I was mixing up the hamburger menu selection with syncing.
Option A - Implement 1, 2 ,3 → Global lookup
Working at the health facility level, where families from multiple (20+ OAs may show up for treatment), select hamburger menu option for that catchment.
Syncing assumptions
- Data would be synced globally to facilitate a search or QR look-up of any family
- If have QR code paper
- Conduct QR code look up.
- If no QR code
- Attempt to link to existing household by searching list view (global look-up)
- Searchable features: all household names
- If find family, proceed to rest of Workflow 1
- If no family found, register as new floating family
- Searchable features: all household names
- Attempt to link to existing household by searching list view (global look-up)
Option B - Implement 1 → Local Lookup
Syncing assumptions
- Team of the user would be assigned to all OAs within the catchment, so all of the OAs should be synced to that device.
- This lookup with QR code will only work if the QR code is for a family/structure that was registered in the working catchment of the user.
Working at the health facility level, select hamburger menu option for that catchment.
- If have QR code paper
- Conduct QR code look up
- If no QR code: stay at health facility level in hamburger menu with a full list view.
- Family must be registered as a floating family.
Use QR code to link family to location - RVL-828Getting issue details... STATUS
Assumptions:
- Same syncing assumptions apply
- QR search can search across all synced data on the tablet. Matt, please confirm?
- We will not be able to unlink and relink to "fix" where linkages were made incorrectly in the MVP.
- In looking up family, when triggered to open QR scanner, scan QR code
- Potential results from scan
- Success
- QR code matches and is not yet linked.
- Confirmed match, show view of household location on map . MB: I don't know if this is worth the added complexity. I'm assuming this means we are trying to link a family to an unclaimed structure on a map? What does this give us if we are providing the service when we see them? This only should be attempted if you are visiting the household at their house. This is if we have been to that house and left a QR code there, and they visit you later not at there house, with their QR code, this applies. WE may not need to show location of the house, but linking back to a location if these criteria are met is important.
- "Confirm link?"
- If yes, make link and proceed with workflow
- If no, warning message "This QR code links with the house shown on the map; are you sure you do not want to link?"
- Do not link → back to question in form asking "Does this family have a QR code"?
- Confirmed match, show view of household location on map . MB: I don't know if this is worth the added complexity. I'm assuming this means we are trying to link a family to an unclaimed structure on a map? What does this give us if we are providing the service when we see them? This only should be attempted if you are visiting the household at their house. This is if we have been to that house and left a QR code there, and they visit you later not at there house, with their QR code, this applies. WE may not need to show location of the house, but linking back to a location if these criteria are met is important.
- QR code matches and has already been linked
- Enter family module
- QR code matches and is not yet linked.
- Failure
- QR code does not match.
- "Okay"→ back to question in form asking "Does this family have a QR code"?
- QR code does not match.
- Success
Other forms
Drug distribution tracking to distributor team . MB: This needs better scoping? IS this meant to be a stock form? We can do a form to capture stock levels. We don't want to go down path of doing any type of calulations based on usage / resupply, etc. That would be out of scope. Can we capture their stock on a daily basis and compare this distribution form with the return form if comparing to usage is too complex? MB: Again needs better scoping. Let's just potentially start with capturing initial stock and then daily usage in some type of form. I don't know if we need to calculate balances on the fly since this is used in campaigns.We expect this to happen once or a few timesThis should be a form that is not linked to task model OR is an "on demand" formWant to see on application indicator for #drugs received against #drugs distribution, this should sum if there are multiple submissions on the form . MB: this sounds like stock management. Don't think this should be in scope at this phaseNeed to keep form blank for the next round of edits
Drug return formWe expect this to happen potentially multiple timesShould play into the same indicator
Reporting
The mobile client indicators are defined in the Data collection data dictionary
The web indicators are defined in the Web UI reporting and plan template
Mock-Ups
Views/UI
- Add list of floating families view (likely from list view)
- QR code
- Scanning screen (think this already exists in OpenSRP)
- Visualize matched house screen (show on the map view, the location of the house that matches with the QR code
- Follow-on/confirmation questions
- View to family-look up → icon from list view?
- to look up families with QR code
- to add floating families
Justification
Notes
Questions
Test Case
# | Step | Pass / Fail | Comment |
---|---|---|---|
1 | |||
2 | |||
3 | |||
4 | |||
5 | |||
6 | |||
7 | |||
8 | |||
Additional tester comments: |