thanks for taking your time to watch my screencast
Concepts: I will have a deeper look at it tomorrow…
What kind of advantages do you see in this approach?
In a later iteration it would be nice to adjust the values for a specific patient. (e.g. due to a bad general condition the patient has to stay longer in the hospital as the average)
One possibility would be to model the average case as concept and copy individual changes to the procedures table
@akanter what do you think?
Optaplanner: I have just finished my first version of the automatic scheduler with one
hard rule (no overlapping surgeries) and one soft rule (first come
first served)
I don’t fully understand the question about concepts for procedures. However, we traditionally have all procedures as concepts with their appropriate reference code mappings. Procedures include not only traditional procedures like appendectomy, but also things like Encounter for xxxxxx or Admission to ICU or Application of device…
Using concepts for procedures would provide localization and make it clear when a procedure referenced by the Operation Theater Module was the same procedure documented in a note, referenced in a financial module, etc. (i.e., normalize procedures across the system).
@akanter, the question is whether procedures should be defined & used as concepts rather than created within the module. See the video at 1:55. When I first looked at CIEL, I just did some searches in the dictionary and didn’t find procedures. I just dug a little deeper and found nearly 500 concepts with class “Procedure”. Many are surgeries and procedures that make sense to me. There are others that don’t look like procedures to me. For example, here’s a sampling of concepts classified as procedures that include lab tests, referrals, medications, and miscellaneous concepts:
HIV Test (1356)
Physical Exercise (159364)
medical advice given (159636)
Recommended motorcycle transport (159638)
emergency caesarean section (159739)
HIV care program enrolled (159812)
Combined treatment for HIV and Tuberculosis (162180)
Home assessment (162190)
Assistance for HIV disclosure (162284)
Highly active antiretroviral therapy (162321)
Interrupted highly active antiretroviral therapy (162322)
PMTCT Option A regimen (162323)
Single dose Nevirapine (162325)
Nevirapine administered for six weeks (162326)
Nevirapine administered during breast feeding (162327)
Dry powder inhaler (162417)
@lbat, you may want to simply use concepts with class “Procedure”, have users pick from these concepts to define procedures for your module, or at least provide a concept mapping attribute to allow each procedure to be mapped to its concept.
thank you very much for your detailed explanation!
The benefits are now obvious for me.
I will evaluate the two solutions that you mentioned and implement the “winner” accordingly.
Hi Lukas, great work! (And sorry I’m just watching this now!)
I would echo what Burke said–your Procedure object should point to a Concept (though I personally would keep a “name” field in your Procedure domain object and not delegate naming to the Concept).
E.g. if Partners In Health were to use this module, we’d want to have the same concept linking (1) the procedure a patient is scheduled for, and (2) the “procedure performed” question recorded in the post-op surgical note (which we implement via HTML Form Entry).
As an aside, my understanding is that there are a lot of things that go into deciding whether a patient is ready for surgery. Any chance that you’re going to touch the workflow around the clinician signing off that a patient is ready for surgery?
hey darius,
I am very sorry that it took me so long to reply! I totally forgot about it
Thank you for your time and your feedback!
about Concepts:
If a use my own naming field, wouldn’t I loose the localization benefit?
about patient ready workflow:
I had it in mind, but I doubt that there will be enough time left to implement this solution.
My focus lies on the automatic scheduler and it is my goal to deliver a high quality end product. From my point of view that is better than having a lot of buggy features.
Of course this functionality can be implemented in a later iteration.