Table of Contents |
---|
...
- 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.
Jira Legacy server System JIRA serverId 3420e60a-4e6f-3f80-8335-059c22bb40aa key RVL-855 - A school should be a point that is tied to an operational area. There will be just one school per operational area. Is this correct Sameen Babur or will there be multiple? Last time we said multiple, not sure if this changes when we take out community.
Location types: Distribution-point (types=school, health-facility)
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
...
This will take place at a central location ahead of the intervention. Communities or schools sSchools will send their rosters to a central administrator who will create a plan for the intervention. The administrator will have to compile these rosters into one import for all communities; s/he will have to cross check spellings of schools so that they map correctly to the school list in Reveal. have to map the communities on the roster to operational area names or ids defined in Reveal so that the Reveal names/ids are on the roster import template.
...
- Components
- Question name: CSV roster
- Upload button
- Download template button
- Help text - reads "You may upload a CSV with the roster of the children in the school. You must include all required fields in the template."
- View current roster
- Workflow first roster upload .
- Click Download template (template will be laid out per CSV requirements, below) –> CSV file downloads to desktop
- Complete template and save
- Select Upload, select CSV file
- Validation checks of CSV
- Required fields
- Check
communitiesschools against OAs in Reveal - Check that fields with dropdown select type, boolean type, numeric type and Yes/No type have valid entries
- Other? <What other validation checks are necessary?>
- Error message if failed:
- "Upload failed. Check your CSV to make sure all required fields are filled in".
- "Upload failed. Check field (field name) in your CSV to make sure it is a valid entry type
- <Other error messages depending on validation checks>
- Message if successful: "x out of y individuals were successfully uploaded"
- View/download current roster hyperlink
- This appears as a hyperlink "View current roster <file name"
- Can click on this and see the assigned ids of students, student list with attributes
- There should be a way to download this information as a CSV that looks identical to what was uploaded
- Must include the Reveal operational area id and student identifiers (
nameall fields from the Registration dictionary)
- Must include the Reveal operational area id and student identifiers (
- Workflow to
replaceamend roster- Select Upload, select CSV file
- Confirmation message: "This upload will replace the current roster. You will not be able to recover the previous roster. Are you sure you want to proceed?" MB: This is a bit more complex in that we have to delete all the registered children and the tasks associated with them. AM: Ah, I didn't consider that and thought this would be simpler. Can you suggest how we should handle this instead if they want to make changes?
- Restrictions
- Once a plan status is not in 'draft' the roster may not be uploaded/replaced
- Cannot edit individuals rows or parts of the roster on web, must edit CSV and replace if changes needed, or can edit on client later
...
- Region (maps to admin unit and will match Reveal)
- Inkhundla (maps to admin unit and will match Reveal)
- School (maps to operational area and will match Reveal)
- National ID (integer)
- Does not have National id (boolean)
- Reveal ID (integer) . MB: Is this an ID that will be provided or one the system needs to generate? AM: System gen = OpenSRP id. National ID is provided.
- Name of child (string)
- Child's allocated sex at birth ('Male', 'Female')
- Child's date of birth (date YYYY-MM-DD)
- Date of birth estimate (boolean)
- Age category (6-10, 11-15, 16-18, 'Adult')
- Currently enrolled at school ('Yes, 'No'
- Name of school attending, if from another school (string)
- School grade/form (where form 1 is grade 8) ('Form 1', 'Form 2', 'Form 3', 'Form 4', 'Form 5', 'Grade 1', 'Grade 2', 'Grade 3', 'Grade 4', 'Grade 5', 'Grade 6')
- Class number (string)
Workflow 2 - Roster import (Client) - proposed not MVP
Some schools may not send their roster to the central administrator for a load ahead of the activity. We would like to support a roster load on the client through some Android plug. We suggest this is not MVP for a pilot as we expect all schools in the pilot to send their rosters ahead of time. Any changes that need to be made to the roster at the point of interaction, can be done through Workflow 3.
MB: Out of scope. Need better clarity of what an android plugin is. It's pretty rare to use android to do file management / data loading etc. Might be better if they have a way to email a special email address a CSV file to load the data in the system. Validation becomes complex here though. It would be helpful to think this through better and try and clarify scope. AM: Fair, we had brainstormed this as a nice to have anyway.
Workflow 3 - Register child (client)
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
...
- Access the list view (current list view) . MB: Is this linked to a specific school or operational area? Please clarify. AM: School view! Schools will be points in OA and may be 1:1 school:OA or many:1 school to OA, but we only need a view at school level.
- Have button somewhere for 'Reg child'
- Selecting that button takes you to the Register child form (See Data collection data dictionary)
- Completing the registration takes you to the child-specific view. Task should have generated and be visible on task view for child.
- Back button from there takes you back to list view.
- Child will be marked as coming from the community according to the registration attribute 'Currently enrolled at school' == 'No' . MB: Does this just meant they weren't on the imported list? I see limited value in this designationthis designation. AM: No. There may be school-going children who were missed on import. Value is to be able to disaggregate reporting between school-going and not. I.e. to know how many not school going we reach in school workflows, does that meet what our estimates are, etc.
<How do we want to treat community children? Can we add "From community" as their classroom attribute? Otherwise we have to make that attribute non-required.>
...
- Registration info is incorrect
- Child has moved classrooms . MB: Editing classrooms. Will classroom list be free text or some kind of pulldown. Will the classrooms be predined or given some name. if a unique name, then pulldowns will be harder to do. AM: In this use case, free text is fine, so we do not need to manage a classroom list - it will be a free text attribute for the child entity.
- Other reason
Suggested Workflow <though this may already have a UI in the immunization OpenSRP workflow>
...
MB: do kids get a single dose one time or is there follow-up. Eg. Will they come back to the school at a later date for another round. AM: I'm adding details on task gen shortly but publishing to save work (we may need two tasks).
Task generation must happen in two places:
...
- We need to define what are the key values we need to build in tables in Superset
- Disaggregation would be by any other items from data dictionary mentioned like gender, classroom, precise age, dose given, drugs taken etc.
On app indicators to be defined. See Data collection data dictionary
...