To improve healthcare IT systems interoperability, NIST employs a comprehensive end-to-end approach which focuses on:
Figure 1 outlines the ideal process and lifecycle for successful standards development and implementation, wherein NIST contributes technical expertise and specialized tooling to each phase.
Figure 1: NIST Approach for Improving Interoperability
Improvement of Standards: Standards play a critical role in the success of information technology implementations. Standards must be comprehensive and unambiguous. In the absence of these traits, implementers may interpret the requirements differently or incorrectly, which is likely to lead to incorrect functionality and non-interoperable systems. NIST has extensive experience in the specification of requirements and uses this expertise to review and provide feedback to improve the standards definition efforts. NIST has taken the lead role in authoring the HL7 v2 Conformance Methodology ANSI standard. The outcome is better methods to define requirements in a consistent, structured, precise, interpretable, and reusable manner.
HL7 v2 Implementation Guide Development: Development of HL7 v2 data exchange interface specifications have long been problematic, plagued with ambiguous and inconsistent requirement specifications. This situation leads to potential misinterpretation by implementers, thus limiting the effectiveness of the specification and creating artificial and unnecessary barriers to interoperability. Likewise, the ability to test implementations effectively for conformance to the specifications is hindered. The current approach of specification development and test plan creation relies on word processing tools, meaning implementers and testers must read and interpret the information in these documents and then translate it into machine-computable requirements and test assertions. This approach is error prone—a better methodology is needed. NIST has developed a productivity tool (IGAMT – Implementation Guide Authoring and Management Tool, https://hl7v2.igamt.nist.gov) that allow users to define and constrain HL7 v2 specifications, resulting in machine-computable artifacts that can be used to create test cases and for validation.
The benefits of using IGAMT include a rigid and structured approach to requirement specification; machine computable access to the latest and advanced conformance constructs and methods; a single source of truth for modification and maintenance; an on-line collaborative tool base; human readable export; and machine-computable artifacts. When combined with other NIST tooling, these capabilities allow for expedited creation of test plans and automated conformance validation tools. Using IGAMT dramatically improves the quality of HL7 v2 implementation guides and reduces the time and cost to build and maintain specifications and test tools.
HL7 v2 Test Scenarios and Examples: It is important to provide users with numerous examples of the scenarios covered by the implementation guide. Such guidance gives implementers insight into how the specification is expected to be interpreted and applied. The NIST Test Case Authoring and Management Tool (TCAMT, https://tcamt.nist.gov) is a productivity tool that can be used to create use case scenarios and example messages. The foundation of TCAMT is the computable specification model created in IGAMT. Targeted test cases are critical for assessing the capabilities of the system being tested. TCAMT allows domain experts to create test cases for specific scenarios and capabilities, including functional requirements. Test cases provide context, which expands the scope of testing. Without context, a validation tool cannot test a message exhaustively for conformance to all requirements specified in the implementation guide.
Conformance Testing Tools: To better ensure seamless data exchange in the field, implementers must develop messaging capabilities as specified in the standard. Testing aids in confirming or refuting a correct implementation. NIST has developed tools that developers or testing bodies can use to determine conformance to HL7 v2 Messaging Specifications. The test tools provides both context-free testing and context-based testing. Context-based testing provides additional testing capabilities through the means of directed test cases and example messages. This kind of testing is a powerful mechanism, since it provides implementers with typical real-world scenarios and example implementations thereof. Implementations that test for and confirm conformance to the standard are much more likely to interoperate seamlessly upon installation and, thus, will save time and money.
Standards and Implementation Lift-Cyle: Working interoperability success ultimately must be demonstrated in operational systems/applications. The means to achieved this is through a life-cycle approach usually consisting of requirements analysis, design, implementation, testing, deployment and ultimately the maintenance of software. Each phase of the life cycle can inform the other in a feedback loop. The resources and tools provided by NIST support this process.
Figure 2 illustrates a realization of the NIST process for aiding in the development of standards and testing implementations. Point (1) indicates the importance for the sophisticated methods to define requirements. The conformance constructs defined in the HL7 v2 Conformance Methodology specification provides the means to define requirements in a consistent, unambiguous and structured manner. These constructs provide the underpinnings and requirements specification methods incorporated in IGAMT.
Figure 2: Workflow of the NIST Process and Tool Use
IGAMT (Point 2) enables subject matter experts (SMEs) to build specifications that document their use case requirements. This is a paradigm shift in that user can specify interface requirements and build their own conformance testing tools. IGAMT export specifications in HTML, WORD, PDF, and XML formats (Point 3). The computable XML artifacts are inputs to the downstream tooling that are used to build test cases and validation tools (Points 4 and 5). Point 6 indicates that the testing framework is used to automatically generate the tools. Access to the validation is via web applications, web services, APIs, validation jar, and source code. These provides alternatives for stakeholders for access and integrations into their implementations.