Details
-
Type:
Improvement
-
Status: Resolved
-
Priority:
High
-
Resolution: Done
-
Labels:
Description
Even though MUZIMA-438 has improved initial device setup by minimizing the required level of user involvement and reducing the number of steps for setup, the app still takes time to download data, because it makes REST calls for every element in the data to download.
For example, to download encounters for a patients, the app iterates through the patient list and makes REST calls to download, extract and save encounters for each patient.
A potential improvement of this process is to take advantage of the setup configs defined at server side, by making the server generate all data associated with a config, package it in a file and compress the file, then send it alongside the config upon request by the mobile app. This way, the app would use the setup config as a definition of what to expect in the data file. Further improvements would be to optimize the server side processing in such a way that the server can reuse generated data files by sending a file for multiple requests if regenerating the file would yield the exact same copy of data.
This ticket requires a design discussion to think through and identify the best approach.