mikeymckay / coconut

Coconut renders json defined forms in a browser and then saves the results to couchdb.
http://vetula.github.com/coconut
Other
11 stars 6 forks source link

Automated neighbor visiting when >=2 cases at one household and no travel history #178

Open mikeymckay opened 8 years ago

mikeymckay commented 8 years ago

We decided that neighbor households should be visited when there are: 2 or more positive cases at one households At least one positive case with no travel history

gmcressman commented 8 years ago

Can policy/protocol rules like this be made easily configurable, at least to some extent? Via the admin UI? Keep thinking in terms of application to other malaria elimination programs.

mikeymckay commented 8 years ago

It's a reasonable question. We certainly can make any so called "magic numbers" configurable and I think this is something that we should do. The problem with expecting to be able to reuse and apply it to other malaria efforts is that there is currently no abstraction layer between the text of the question and the reports. This means that if in Zambia they change the wording of the question then all of the skip logic, reports, etc will also need to be changed. We could add an abstraction layer but even that will need to be configured for each deployment. I think it is better to keep the questions, skip logic and reports simple and close to the metal. I expect every new country will want to do it their own way, and being able to do so enables us to stick close to their workflow. It will require updates but I just think that's the reality.

mikeymckay commented 8 years ago

I was surprised to find that we hadn't implemented this. We had - I just didn't look carefully when we reviewed this together in Zanzibar:

Here is the current logic to suggest that neighbors should be visited:

if window.currentCase then not(window.currentCase.indexCaseHasNoTravelHistory() and window.currentCase.highRiskShehia()) else true

This means that if the index case has no travel history and they are in a high risk shehia then we suggest a neighbor followup. We will expand this to include:

2 or more positive cases at one households At least one positive case with no travel history

gmcressman commented 8 years ago

As usual, please consider how to implement this so that it can be changed easily if protocol changes (e.g. a different country). Yes, I did read your comment above, but I can still dream. ;-)

gmcressman commented 8 years ago

Perhaps Mike, the best that can be done is to make such decision rules very easy to identify in the code.

mikeymckay commented 8 years ago

These kind of rules are actually defined in the questions themselves. So very configurable and obvious. They are not even in the codebase. They do depend on calling some functions in the codebase - but it is fairly easy to follow.

On Wed, Feb 10, 2016 at 12:39 AM, Gordon Cressman notifications@github.com wrote:

Perhaps Mike, the best that can be done is to make such decision rules very easy to identify in the code.

— Reply to this email directly or view it on GitHub https://github.com/mikeymckay/coconut/issues/178#issuecomment-182087909.