[20] | 1 |
|
---|
| 2 | Everybody,
|
---|
| 3 |
|
---|
| 4 | We have been spending a lot of time discussing strategies on how we
|
---|
| 5 | are going to proceed about this project. Initially, we were going to
|
---|
| 6 | produce a CCD, and we didn't have quite a plan on how we are going to
|
---|
| 7 | extract the data except as piecemeal. With the advent of the U of Minn
|
---|
| 8 | on the project, and with Emory's discussions, we are going to extract
|
---|
| 9 | a CCR (and I am infinitely happy; the CCD spec belongs to the garbage
|
---|
| 10 | can; I willingly send my abominations to the HL7 committee), and we
|
---|
| 11 | are going to use Mumps Routines called by CPRS for most of the data
|
---|
| 12 | extraction.
|
---|
| 13 |
|
---|
| 14 | There has been a lot of bantering around, and I wish for us to settle
|
---|
| 15 | this by deciding a general strategy and the steps needed to produce
|
---|
| 16 | it, as well as a timeline and expected deliverables. May I propose
|
---|
| 17 | that the initial CCR be generated completely from Mumps without us
|
---|
| 18 | having to do any GUI programming. Why? At this point we have not even
|
---|
| 19 | defined the requirements that any of the steps are going to satisfy
|
---|
| 20 | (at least that is the way it seems to me); developing the stuff in
|
---|
| 21 | Mumps will at least help us define the requirements; plus, it is
|
---|
| 22 | always my belief in anything Vista that the functionality must be
|
---|
| 23 | available using the roll-and-scroll interface. Does that mean we don't
|
---|
| 24 | need Java programmers? Absolutely not! I would like them to work in
|
---|
| 25 | tandem with the Mumps development process to produce the GUI.
|
---|
| 26 |
|
---|
| 27 | Here is my plan, sketched on the plane...
|
---|
| 28 | 0. Read the CCR Spec from beginning to end
|
---|
| 29 | 1. Enumerate the sections of the CCR, defining what data is needed for
|
---|
| 30 | each section. (This step is almost done for us by the spec.)
|
---|
| 31 | 2. Define the needs of the end user on how they are to use the CCR
|
---|
| 32 | functionality (this is very important and has not been done)
|
---|
| 33 | 3. Define a Mumps strategy on how to extract the data (more on that below)
|
---|
| 34 | 5. Define where the data is going to be extracted from (this is being
|
---|
| 35 | carried out by George right now)
|
---|
| 36 | 6. Document Data Output from M/CPRS (RPC's etc.)
|
---|
| 37 | 7. Match data from CPRS with CCR sections
|
---|
| 38 | 8. Define routines that need to be written/modified in order to allow
|
---|
| 39 | us to fill in the missing info for CCR that's not in CPRS (e.g. LOINC
|
---|
| 40 | codes for Labs; they are not in the RPC)
|
---|
| 41 | 9. Write the M code to extract the data from each of the sections
|
---|
| 42 | 10. Write a Mumps XML Writer
|
---|
| 43 | 11. Write the CCR writer that utilizes the XML Writer for output
|
---|
| 44 | 12. Write the CCR user interface that does the user interaction,
|
---|
| 45 | initially in MUMPS, then in a GUI.
|
---|
| 46 | 13. Write a CCR viewer, initially in Mumps, then in a GUI.
|
---|
| 47 |
|
---|
| 48 | I am most concerned with step #2. We need to do mock-ups and present
|
---|
| 49 | them for ideas.
|
---|
| 50 |
|
---|
| 51 | Deliverables (#'s refer to above):
|
---|
| 52 | 1. Spreadsheet
|
---|
| 53 | 2. Needs document; roll-and-scroll and GUI mock-ups.
|
---|
| 54 | 3. Document
|
---|
| 55 | 5. Document
|
---|
| 56 | 6. Series of Documents for each RPC
|
---|
| 57 | 7. Spreadsheet from #1, modified
|
---|
| 58 | 8. Document; work assignments for completion
|
---|
| 59 | 9. Working Code - unit tested
|
---|
| 60 | 10. Working Code
|
---|
| 61 | 11. Working Code
|
---|
| 62 | 12. Working Code
|
---|
| 63 | 13. Working Code
|
---|
| 64 |
|
---|
| 65 | Each of the steps may take a loooooooooong time... Witness George's
|
---|
| 66 | analysis of the RPCs. We need to take advantage as much as possible of
|
---|
| 67 | parallelism; while George is analyzing the RPCs, somebody can be
|
---|
| 68 | writing the Mumps XML output routine, and others can be defining user
|
---|
| 69 | needs, and others can be constructing CCR/Vista data spreadsheets.
|
---|
| 70 |
|
---|
| 71 | The other thing I thought about is how are we going to write the Mumps
|
---|
| 72 | Routines to extract the data. This is all tenative:
|
---|
| 73 | 0. CCRCOMP () - Routine to ask user about patient, purpose of CCR,
|
---|
| 74 | receipient, transmission method, sections, date range
|
---|
| 75 | 1. CCRPROC (DFN, ARRAY1, DUZ, DOCTYPE, BEGDATE, ENDDATE) - Routine to
|
---|
| 76 | process CCRCOMP choices that calls the next routine
|
---|
| 77 | 2. CCRSECTIONS - Outputs data into
|
---|
| 78 | ^TMP($J,"CCR",Section,Name,Value,SubValues,ActorID)
|
---|
| 79 | a. Demograhics (DFN)
|
---|
| 80 | b. Purpose
|
---|
| 81 | c. Payers (DFN, DT)
|
---|
| 82 | d. Meds (DFN, DT1, DT2, DetailFlag)
|
---|
| 83 | e. Labs (DFN, DT1, DT2, DetailFlag) etc etc.
|
---|
| 84 | 3. MXMLWRIT (Name, ATTRIBUTE array, Value) - Writes XML from Mumps
|
---|
| 85 | 4. CCRWRITE (^TMP array) - Write data from ^TMP to the file system
|
---|
| 86 | using MXMLWRIT
|
---|
| 87 |
|
---|
| 88 | --
|
---|
| 89 | Sam
|
---|
| 90 |
|
---|
| 91 | PS: George has been kind enough to host me at his NY apartment for
|
---|
| 92 | hammering out the details of our implementation and show me his
|
---|
| 93 | progress thus far.
|
---|