Table of Contents
Outline
This page explains the computational forms feature which can be used to calculate scores for specific attributes based on the patient’s answers and a computational formula for the attribute. This feature also shows the dashboard user a unique perspective on relative comparison of the scores across form submissions, each time the patient submits the same form. It is part of the Patient Reported Outcome Measures (PROMs) and is customisable to calculate scores for any required attribute which can be used by researchers and clinicians to assist with clinical monitoring of a patient's health journey.
Understanding Computations and adding them to .JSON content to create customisable Computational forms
You can add Computations code and formula to a .JSON content similar to the ones below and use that to create computationsl forms.
Note: Please check the bottom of the .JSON content attached above to see the Computations code and formula for KOOS, DASS-21, and HOOS respectively.
Example Computation Code for DASS-21 form
"computations": { "depression": { "display_name": "Depression", "type": "symbolic", "function": "q3 + q5 + q10 + q13 + q16 + q17 + q21", "improvement": "decrease" }, "anxiety": { "display_name": "Anxiety", "type": "symbolic", "function": "q2 + q4 + q7 + q9 + q15 + q19 + q20", "improvement": "decrease" }, "stress": { "display_name": "Stress", "type": "symbolic", "function": "q1 + q6 + q8 + q11 + q12 + q14 + q18", "improvement": "decrease" } }
In the above example (Line 2-7, computational code for one attribute: Depression),
"depression":
indicates the attribute whose score will be calculated."display_name": "Depression"
is the text that will be displayed to the patient on the app for this attribute."type": "symbolic"
indicates the calculated score will be displayed as an integer value ('-ve', ‘0.0’, '+ve') on the dashboard."function": "q3 + q5 + q10 + q13 + q16 + q17 + q21"
is the computational formula for the attribute ‘Depression’ based on which the score will be calculated."improvement": "decrease"
is used to visualize the calculated score in ‘Green’ or ‘Red’ colour prefixed by an ‘Upward’ or ‘Downward’ arrow. This illustrates a relative comparison of the calculated score across form submissions.
In this case, if the calculated score decreases from the first form submission to the second, it will be shown in green with a downward green arrow in the second form submission. The opposite scenario, i.e., if the calculated scores increase from the first form submission to the second, it will be shown in red with an upward red arrow in the second form submission.
On the other hand,"improvement": "increase"
can be used to achieve the opposite result. Here, if the calculated score decreases from the first form submission to the second, it will be shown in red with an downward red arrow in the second form submission. The opposite scenario, i.e., if the calculated scores increase from the first form submission to the second, it will be shown in green with an upward green arrow in the second form submission.
The same lines of code (2-7) can be repeated as shown in the picture above (repeated 3 times for the attributes - ‘Depression’, Anxiety' and ‘Stress) to calculate scores for various other attributes using the patient’s answers from the same form submission in ‘Form Results’. These scores can be viewed together on the dashboard under the ‘Scores’ card in 'Form Results’ as shown below.