Medical professionals who treat patients (“caregivers”) rely on medical knowledge. For many caregivers, this medical knowledge can extend to an extensive variety of different kinds of information: normal and anomalous body function; condition diagnosis, including relevant forms of physical examination and testing; referral to specialists; condition treatment options and attendant benefits and risks, including by prescribing medicines or placebos, performing surgery, undergoing physical therapy; surgical and anesthesiological techniques; epidemiological updates; techniques for interacting with patients and cooperating caregivers; etc.
Medical knowledge is obtained by caregivers from a variety of sources, such as: medical school classes and textbooks; clinical rotations, internships, residencies, and fellowships; treating patients; ongoing medical education seminars and conferences; informal discussions with other caregivers; reading journal articles; reviewing pharmaceutical data sheets; consulting treatment or referral guides and other information published by or within a caregiver's organization; etc.
The inventors have recognized significant disadvantages in the conventional ways that medical knowledge is created and disseminated to medical caregivers such as physicians and applied by them.
In particular, a staggering volume of medical knowledge, in widely-varying subject matter areas, can be beneficially applied to the treatment of many caregivers' patients. This beneficial medical knowledge is often both within the caregiver's specialty area, and in adjacent or related specialty areas. Caregivers are unable to reliably retain all of the medical knowledge they have encountered.
Also, whether consumed in advance of needing it or directly in response to needing it, medical knowledge is spread over a wide variety of sources and modalities that makes it difficult to locate pieces of medical knowledge relevant to a patient situation. Also, in many cases it is difficult to assess the accuracy of a particular piece of medical knowledge, or select the most useful of multiple sources for particular medical knowledge. There is often also a trade-off between reliability and latency of sources of medical knowledge, in light of the significant length of the authoring, review, and publication cycle of medical journal articles. Additional factors can also make medical knowledge obsolete as soon as it is made available, or shortly thereafter.
It is common for sources of medical knowledge to be difficult to apply to a caregiver's needs. For example, certain sources may be focused on theory, to the exclusion of practice, or practical aspects may be difficult to locate among content that is less practical. Some sources that seek to provide practical guidance achieve limited success based on using ill-suited language, formatting, or organization, for example.
Because of the high level of dynamism of many medical fields, caregivers often face the challenge of medical knowledge “changing out from under them”: both caregiver memories and static sources of medical knowledge can become outdated as new discoveries are made, new technologies emerge and mature, new techniques and best practices are developed, etc.
In response to recognizing these disadvantages, the inventors have conceived and reduced to practice a software and/or hardware facility for constructing and applying computer-based analytic methods representing medical knowledge (“the facility”). These analytic methods can represent a wide variety of different kinds of medical knowledge, including, for example, disorder diagnoses, referral recommendations, medical procedures or protocols, selection among condition treatment options, etc.
In some embodiments, the facility provides a creator user interface for creating and revising analytic methods, as well as one or more other user interfaces for consuming and/or visualizing analytic methods.
In some embodiments, a “creator” user—such as a domain expert, or another qualified person who is transforming a conventional source of medical knowledge into an analytic method—interacts with controls presented by the facility in order to create an analytic method for use by consumer users, such as caregivers who wish to rely on the medical knowledge embodied in the analytic method. In particular, the creator creates a set of “pages” that make up the analytic method, which can correspond to individual “blocks of knowledge.” In each page, the creator can specify questions, their possible answers, and whether it is valid for more than one of the possible answers to be selected at the same time by a consumer. For a particular question, the creator can specify routing that is to occur in response to each of the question's possible answers being given. This routing can be to destinations of various types, including (1) certain text or other content that the creator specifies within the context of the page; (2) another page generated by the facility, either part of the current analytic method or a different one, either one that already exists or that the creator will create; (3) a document created outside the facility; or (4) an action, such as against an electronic medical record (“EMR”) software system with respect to the patient who is the subject of a consumer's use of the consumer user interface. In some embodiments, the facility permits the creator to add small supplemental information icons to particular portions of a page, which can be expanded to display supplemental informational content about that portion of the page in the consumer user interface, such as by hovering over or touching or clicking on the information icon.
In some embodiments, the facility provides a “swimlane” control in which the creator can use a visual grid scheme to easily specify routing for different combinations of answers to a group of multiple questions. For example, where a page in analytic method relating to joint pain contains a first question asking how many joints are affected—whose answers include one, two, and more than two—and a second question asking whether those joints are swollen—whose answer include yes and no—the creator can use the swimlane to specify one routing target for the combination of the “one” answer to the first question and the “yes” answer to the second question; another routing target for the combination of the “one” answer to the first question and the “no” answer to the second question; etc. In some embodiments, the facility enables the creator to group multiple answer combinations together with the same routing target.
In some embodiments, as the creator uses the creator user interface to construct the analytic method, the facility concurrently displays and updates a graph diagram visualization of the analytic method in which each page is shown as a node, and each routing path to another page is shown as an edge between nodes. In some embodiments, the creator can select one of the nodes of the graph diagram to jump to the corresponding page in the creator user interface. In some embodiments, the creator can interact with one of the nodes of the graph diagram to delete or otherwise alter the corresponding page of the analytic method.
In some embodiments, as part of the creator interface, the creator can switch on an interview mode in order to preview the experience that consumers will have in using the analytic method. If the creator identifies an issue with a page in the interview mode, the creator can switch the interview mode off in order to alter the definition of the page in the creator user interface.
In some embodiments, throughout the creation of the analytic method, the facility continuously updates an internal representation of the analytic method that is stored by the facility to maintain the persistence of the analytic method, and is a basis for rendering all of the ways supported by the facility to visualize and interact with the analytic method, including the creator user interface, the graph diagram visualization, and consumer interview user interfaces. In various embodiments, this internal representation is stored locally in a browser and/or on a server.
By using the facility to represent medical knowledge as an analytic method in the ways described above, the facility renders that medical knowledge “computable”—i.e., usable in the facility's consumer user interface to directly and systematically apply to a patient.
In some embodiments, the facility provides one or more consumer user interfaces for applying analytic methods created using the facility, such as interview user interfaces in which an analytic method's questions are presented to a consumer; answers to the questions are received from the consumer; and content, additional questions, and/or actions routed to according to the received answers are presented to the consumer. In various embodiments, these interview user interfaces conduct their interviews in a variety of modalities. These can include a touch- or click-based visual user interface in which answers to questions are displayed as buttons that the consumer can select by touching them or clicking on them; a text-based visual user interface in which consumers type answers to their questions, or shorter text strings representing those answers; a voice-based audio user interface in which the facility speaks questions and their answers using speech synthesis, and consumers speak their answers; or a combination of these, e.g., a consumer speaks in response to seeing questions and their possible answers displayed in the touch- or click-based visual user interface.
In some embodiments, the consumer user interface enables a consumer to select a particular analytic method from an inventory of analytic methods contained in a repository; enables a consumer to search for or otherwise discover analytic methods of this inventory appropriate to a particular patient scenario; etc.
In some embodiments, the consumer user interface concurrently displays the graph diagram visualization of the selected analytic method, enabling the consumer to follow their progress through the analytic method, skip forward or backward among the pages of the analytic method; switch to a different route among the pages of the analytic method, jump to a different analytic method, etc.
The inventors have further noted certain errors that creators sometimes make in creating an analytic method. These include (1) creating pages in the analytic method that are unreachable from the analytic method's root page; (2) creating loops among the connections between pages in the analytic method; (3) when creating a swimlane control for specifying routing for different combinations of answers to a group of multiple questions, omitting lanes that provide routing for certain possible combinations of answers; (4) creating unreachable swimlanes; (5) linking to external documents that don't exist; (6) linking to a specific page that doesn't exist in an external document; and (7) linking to an external document in a different audience (e.g. an adult guide accidentally linking to a pediatric-only guide, without explicitly marking it as such).
In response to this recognition, in some embodiments, the facility automatically performs diagnostic assessments of created analytic methods, such as continuously during their creation, or at certain junctures, such as when each page is saved, or when the analytic method's creation is completed. In various embodiments, these diagnostic assessments include (1) whether any page of the analytic method is unreachable from the root page; (2) whether the connections between the pages of the analytic method form any loop; and/or (3) in each swimlane control, whether lanes that provide routing for any possible combinations of answers have been omitted.
By performing some or all of the ways described above, the facility makes it straightforward to embody medical knowledge in a computer-based analytic method, either medical knowledge originated by the creator of the analytic method or medical knowledge originated by one or more third-party sources. This analytic method can be quickly and easily employed by vast numbers of caregivers as part of their treatment of patients, or their ongoing medical studies. The analytic method can later be updated or otherwise improved, to the benefit of this large number of caregivers and their patients. In addition, in some embodiments the facility helps creators to identify and resolve errors in the analytic methods they create.
Additionally, the facility improves the functioning of computer or other hardware, such as by reducing the dynamic display area, processing, storage, and/or data transmission resources needed to perform a certain task, thereby enabling the task to be permitted by less capable, capacious, and/or expensive hardware devices, and/or be performed with lesser latency, and/or preserving more of the conserved resources for use in performing other tasks. For example, by concentrating easily-applied medical knowledge in a central repository of analytic methods, the facility reduces the network and processing resources that would otherwise have been used to search for, retrieve, evaluate, and seek to apply conventional sources of medical knowledge. Also, by using a compact internal representation of analytic methods, the facility reduces the amount of storage that would otherwise have been used to store less data-efficient conventional sources of medical knowledge. Further, by automatically assisting creators to identify and correct errors in creating analytic methods, the facility reduces the processing load on computing systems by (1) preventing the unsuccessful use in production of analytic methods that have these errors, which would have to later be repeated once the errors are found and corrected, and (2) obviating the user interface load imposed by creators manually searching for and resolving these errors.
In act 303, the facility updates the internal representation of the analytic method to include the new page added in act 302. In act 304, the facility applies one or more interpreters to the internal representation updated in act 303 to reflect the new page in visualizations of the analytic method that are presently being used. After act 304, the facility continues in act 302 to receive user input needed to add the next page to the analytic method. Though not shown, in some embodiments, the facility performs acts 302-303 to delete an existing page from the analytic method, revise the content of an existing page, alter routing among pages, split a page into multiple pages, etc.
Those skilled in the art will appreciate that the acts shown in
While
Table 1 below shows an internal representation generated by the facility in JSON for the example analytic method whose creation is shown in
Lines 1-90 of the internal representation provide information about the analytic method as a whole. Line 3 contains a unique identifier that can be used to distinguish the analytic method from other analytic methods. Line 4 shows the current stage of the analytic method within an analytic method production cycle. Line 5 shows the name specified for the analytic method. Lines 6-17 show tags that can be used to search for or otherwise locate this analytic method in situations where it may be needed. Lines 19-40 identify subject matter categories to which the analytic method belongs, which can be used to find the analytic method in situations in which it might be useful. Lines 41-62 identify people who have participated in creation, revision, proofreading, maintenance, etc. of the analytic method. Lines 63-66 identify a governance model for the analytic method. Lines 67-90 identify a variety of metadata for the analytic method, including creation and updating timestamps shown in lines 89-90.
Lines 91-301 specify the pages of the analytic method. In particular, lines 92-160 specify the Chronic Joint Pain page corresponding to node 2080; lines 161-248 specify the Jt pain swimlane page corresponding to node 2081; and lines 249-300 specify the No sign of inflammation page corresponding to node 2082.
Line 93 contains the unique identifier for the Chronic Joint Pain page. Line 94 indicates that this page is an active part of an analytic method, as opposed to a “guide” page constituting a plain document. Line 95 specifies that this page's node is the root of the graph, where the analytic method beings. Lines 96-99 identify the consumer type for which the analytic method is intended; lines 100-103 identify a patient care mode for which the analytic method; and lines 104-107 identify the patient type for which the analytic method is intended. Line 108 specifies the name of the page, which is shown in the display of the page and the page's graph node, and is used by other pages of the analytic method to refer to the page. Lines 109-110 specify the content of this page, shown at reference number 614 in
Line 114-156 specify the two questions in the page and their possible answers. For the first question, Line 136 specifies its text as “How many joints are involved?”. Lines 119-123 specify the first possible answer (“option”) for the first question as “1”; lines 124-129 specify as the second possible answer to the first question as “2-4”; and lines 130-134 specify the third possible answer to the first question as “more than 4.” Lines 138-155 similarly define the second question “Is the joint red, hot, swollen?” and its two possible answers, “Yes” and “No.”
For the Jt pain swimlane page defined in lines 161-248, lines 161-177 specify metadata for this page similar to the metadata discussed above in connection with the Chronic Joint Pain page. Also, line 243 identifies the type of the page as “swimlane,” i.e., one that performs differential routing based upon different combinations of answers to questions. Lines 180-189 relate to the first column 1355 of the swimlane; lines 183-185 indicate that this first column is for the combination of the answer “More than 4” to the question “How many joints are involved?” with the answer “Yes” to the question “Is the joint red, hot, swollen?”. Line 182 indicates that the swimlane does not route to a separate page corresponding to the empty next page field 1504 left by the creator in
Lines 190-199 relate to the second column 1356 of the swimlane, which lines 193-195 relate to a selection of the answer “2-4” to the question “How many joints are involved?” with the answer “Yes” to the question “Is the joint red, hot, swollen?” Like the first column, line 192 specifies that the second column does not route to a separate page of the analytic method. Line 197 contains the encoded content to be displayed when the choices for the second column are selected.
Lines 200-209 relate to the third column 1357 of the swimlane, corresponding to the combination of the answer “1” to the question “How many joints are involved?” and the answer “Yes” to the question “Is the joint red, hot, swollen?.” Line 202 specifies that the third column does not route to a different page, and line 207 contains the content displayed when the combination of answers to which this column corresponds are given.
Lines 210-219 relate to the fourth column 1358 of the swimlane, corresponding to the combination of the answer “1” to the question “How many joints are involved” and the answer “No” to the question “Is the joint red, hot, swollen?.” Line 217 specifies that no content is displayed when the combination of answers to which this column corresponds is given, but line 212 specifies that, when this combination of answers is given, the facility should route to the “No signs of inflammation” page.
Lines 220-229 relate to the fifth column 1359 of the swimlane, corresponding to the combination of the answer “2-4” to the question “How many joints are involved?” with the answer “No” to the question “Is the joint red, hot, swollen?” Line 228 specifies that the fifth column has been merged with the column to its left, the fourth column. Therefore, when the fifth column's combination of answers is given, the facility routes to the “No signs of inflammation” page in accordance with line 211 mentioned above.
Lines 230-239 relate to the sixth column of the swimlane 1360, which corresponds to a combination of the answer “more than 4” to the question “How many joints are involved?” with the answer “No” to the question “Is the joint red, hot, swollen?”. Like the fifth column, line 238 marks the sixth column as being merged with the column to the left; thus, like the fourth and fifth columns, when the combination of answers to which the sixth column corresponds, the facility routes to the “No signs of inflammation” page.
Lines 249-300 relate to the “No sign of inflammation” page—as indicated in line 265. Lines 250-264 contain metadata for this page. Line 267 contains the content of the page, shown as content 2379 and 2479 in
In various embodiments, the facility supports various kinds of questions, and various approaches to routing in response to their answers. For example, in some embodiments, the facility prompts the consumer to enter a number, such as patient body mass index, and routes based on which of two or more numerical ranges the number falls within. In some embodiments, the facility prompts the consumer to provide a medical imaging artifact captured from the patient, and routes based on an automatic interpretation of the medical image artifact. In some embodiments, the facility prompts the consumer to provide a photograph or sketch of part of the patient's body, and routes based on an automatic analysis of this image. In some embodiments, the facility displays a diagram of a human body, prompts the consumer to touch or mark an affected area of the body on the diagram, and routes based upon the body area identified by the consumer. In some embodiments, the facility prompts the consumer to provide audio containing speech by the patient, and routes based on an automatic analysis of this audio.
In various embodiments, the facility supports a variety of types of routing targets. For example, in some embodiments, the facility supports routing to programs separate from the facility—such as those for displaying or interpreting medical imaging artifacts, those for making a live connection audio, video, and/or text connection with a person such as a specialist in a certain area of medicine, those for automatically generating text satisfying a text generation specification, etc.
In acts 3204-3207, the facility loops through each permutation of answers to the questions contained by the page. In act 3205, the facility creates a new answer combination reflecting the current permutation in this loop iteration. In act 3206, the facility recursively calls the visit_page function, passing it the identity of the current page, as well as the new answer combination created in act 3205 in this iteration of the loop, and the second set of visited pages. In act 3207, if other permutations of answers remain to be processed, then the facility continues in act 3204 to process the next permutation of answers, else the facility continues in act 3208.
In act 3208, if the page is or contains a swimlane, then the facility continues in act 3209, else the visit_page function returns. In act 3209, if any lanes of the swimlane of the page match the answer combination that was the argument value in the call to the visit_page function, then the facility continues in act 3211, else the facility continues in act 3210. In act 3210, the facility logs that no lanes match the answer combination with which the visit_page function was called, identifying the combination as one for which a lane should be added to the swimlane in the analytic method. After act 3210, the call to the visit_page function returns.
In acts 3211-3214, the facility loops through each lane that matches the answer combination. In act 3212, the facility marks the lane as visited. In act 3213, the facility recursively calls the visit_page function with the argument values corresponding to the page that is linked-to from the matching swimlane that is the subject of the current iteration of the loop, and the answer combination. In act 3214, if additional matching lanes remain to be processed, then the facility continues in act 3211 to process the next matching swimlane, else the facility returns from this call to the visit_page function.
The display further includes an editing region 3310 for the swimlane control of the swimlane page. In particular, editing control shows lane 3311 corresponding to lane 3341 and lane 3316 corresponding to lane 3346. In lane 3311, it can be seen that this lane specifies the answer no fever 3312 to the fever question, and the answer headache 3313 to the headache question. This lane further includes a link 3314 to the page or other routing target that is routed-to by this lane of the swimlane, i.e., in iterations of the analytic method where the combination of answers of lane 3311 have been given.
The display also includes a compact notification 3350 that the facility's diagnostic assessment has identified errors with the analytic method in its present state. The user can activate control 3351 to expand the notification and receive details about the results of the diagnostic assessment.
The expanded notification further contains a section 3470 showing missing combinations of answers for which the facility can add lanes to the swimlane. In particular, the sections shows missing combinations of answers 3471 and 3476. The creator user can activate control 3481 to add a lane to the swimlane for missing combination 3471; activate control 3486 to add a lane for missing combination 3476; or activate control 3489 to add lanes to the swimlane for both missing combinations.
In some embodiments, the facility permits creators to specify one or more additional components of a swimlane. A first such additional component-a “supplemental content” additional swimlane component-available to creators in some embodiments is text or other content, or a reference to a page containing such content, that is always displayed to the consumer in addition to content displayed based on the matching lane of the swimlane. The presence in a swimlane of a supplemental content swimlane component does not affect the facility's checking for missing lanes in a swimlane.
A second such additional component—a “default destination” additional swimlane component—available to creators in some embodiments is a destination that the swimlane routes to in the event that no lane of the swimlane matches the combination of answers given by the consumer. The presence in a swimlane of a default destination swimlane component does affect facility's checking for missing lanes in a swimlane: once a default destination swimlane component is added to a swimlane, the swimlane can no longer have missing lanes, because the swimlane will have the effect of routing for any possible combination of answers.
In various embodiments, the facility uses various approaches in the creator user interface to enable creators to specify supplemental content and/or default destination swimlane components for a swimlane, including separate fields for specifying the destinations for these components, or additional columns for these components that specify their destinations. In various embodiments, the facility uses various approaches to identifying a column of the swimlane as an additional column representing a specify supplemental content or default destination components, such as adding additional rows to the swimlane controls for supplemental content and/or default destination, whose checking in a particular column specifies that that column has the corresponding significance.
The various embodiments described above can be combined to provide further embodiments. All of the U.S. patents, U.S. patent application publications, U.S. patent applications, foreign patents, foreign patent applications and non-patent publications referred to in this specification and/or listed in the Application Data Sheet are incorporated herein by reference, in their entirety. Aspects of the embodiments can be modified, if necessary to employ concepts of the various patents, applications and publications to provide yet further embodiments.
These and other changes can be made to the embodiments in light of the above-detailed description. In general, in the following claims, the terms used should not be construed to limit the claims to the specific embodiments disclosed in the specification and the claims, but should be construed to include all possible embodiments along with the full scope of equivalents to which such claims are entitled. Accordingly, the claims are not limited by the disclosure.
This Application is related to U.S. application Ser. No. 17/955,296, filed Sep. 28, 2022, and entitled “CONSTRUCTING AND APPLYING COMPUTER-BASED ANALYTIC METHODS REPRESENTING MEDICAL KNOWLEDGE, and U.S. application Ser. No. 17/955,298, filed Sep. 28, 2022, and entitled “CONSTRUCTING AND APPLYING COMPUTER-BASED ANALYTIC METHODS REPRESENTING MEDICAL KNOWLEDGE,” each of which is hereby incorporated by reference in its entirety. In cases where the present application conflicts with a document incorporated by reference, the present application controls.