Top Ten List
- Widgets reloading every time used on page? Patient search, concept search are examples (TRUNK-28, high priority)
- javascript files provided by modules are not cached? (probably fixable, medium priority) - TRUNK-1613
- It takes a long time for the patient dashboard to load after you click on a name on the search page (fixable, high priority) - TRUNK-1667
- TODO: Need explicit targets for performance improvement (either existing features known to be inefficient OR hints from profiling)
- FYI – Slowness from too many infopath forms fixedin formentry module 4.5.3
- Search for patient by ID number is slow (easily fixable. need to change the defaults) - TRUNK-1616
- Using cohort builder (probably fixable, but needs investigation, medium priority)
- Searching the list of Patients having observations MALARIA<sup>1</sup> TRUNK-1618
- Find the list of patient enrolled in a program<sup>2</sup> - TRUNK-1619
- Patients having an encounter created for them
- Searching for Admission diagnosis in the past year
- Data exports (using old framework) (RCM-20, low priority)
- TODO: get a real data export that is slow
- TODO: Jeremy will provide a data export that is used with the anonymized data set
- Patient pages occasionally loading improperly - the top summary bar loads but none of the tab data shows up when the page is done loading. After refreshing a few times, the data shows up. (unsure on fixability, high priority) - TRUNK-1621
- TODO: replicate the error
- NOTE: This could be fixed by replacing DOJO widgets with jquery widgets (TRUNK-1652 below)
- BIRT Reports are slow (documentation problem) - BIRT-30
- HTML Forms – Especially complex ones can take several seconds to load. (have example, high priority) - HTML-58
- Linking mother to child on encounter forms is a slow mainly due to the number of steps involved - (Requires UI improvements rather than Performance)
- TODO: Fixed? Jeremy?
- Searching for the location on an infopath form taskpane - (TRUNK-1665)
- Searching for a Provider - (TRUNK-1664)
- Searching for concepts (e.g., in concept search widget of FormEntry taskpane) - (TRUNK-1663)
- Improve workflow when adding a new program and state (TRUNK-22, easy, medium priority)
- Improve workflow when ending a program with a terminal state (TRUNK-24, easy, medium priority)
- Improve workflow when editing drug orders (TRUNK-25)
- Generating data sets in the new reporting framework
- TODO: Need a specific example if we're going to work on this one for 1.8
- It takes long time to load the schema in the Schema Design page. (high priority) - TRUNK-1623
- Development is very slow: - TRUNK-1666
- Reloading modules can take many minutes if there are many deployed with dependencies, even if only one class in one module changes
- Reduce number of requests between browser and server - (TRUNK-34)
- Convert the dojo widgets to jquery widgets - (TRUNK-1652)
- Support for multi level database caching - (TRUNK-434)
Candidates for Top Ten
See Top Ten List
Suggestions
- Benchmarking Module (OpenMRSMark?)
Voted off the island
The following are too ambiguous or the solution is not clear/explicit enough for targeting 1.8.
- Loading InfoPath forms (probably unfixable)
- TODO: Need more details about /when/ the slowdown happens. After click and before "open/save as" comes up? After clicking "open in infopath" and before the page is fully shown?
References
Searching the list of Patients having observations MALARIA
SELECT given_name, family_name,ROUND(DATEDIFF(NOW(),birthdate)/365) as age, gender FROM `obs`, patient, person, person_name WHERE `value_coded` = 123 AND obs.person_id=person_name.person_id AND obs.voided=0 AND patient.voided=0 AND patient.patient_id=obs.person_id AND person.person_id=obs.person_id GROUP BY patient_id LIMIT 0, 300
Find the list of patient enrolled in a program
SELECT given_name, family_name,ROUND(DATEDIFF(NOW(),birthdate) /365) as age, gender FROM `patient_program`, patient, person, person_name WHERE program_id=6 AND patient_program.patient_id=person_name.person_id AND patient_program.voided=0 AND patient.voided=0 AND patient.patient_id=patient_program.patient_id AND person.person_id=patient_program.patient_id GROUP BY patient.patient_id LIMIT 0, 300