Why should I learn about the DIL?

Test Early and Test Often

Programs and projects are continuously being challenged to deliver higher quality software on a shorter timeline. The DIL supports the adage of “test early, test often” by providing testing tools which can be deployed directly to developers. By providing comprehensive testing tools early in the development lifecycle, the developers quickly learn the necessity of adhering to the standards and requirements that are being tested. By setting high quality standards early in the testing process, the developers are incentivized to develop quality code early and ensure potential gaps are covered prior to repeat testing failures. Testing early and testing often is a methodology for quality-infused best practice.

Testing for Readiness

The DIL was developed based on the experience gained from designing and operating an interoperability test lab for a number of years. The DIL team recognized early that significant risks were being “accepted” by participants due to the complexity of installing and configuring their own gateways. This complexity hampered their ability to configure and establish testing environments necessary to test gateway-to-gateway, bi-directional testing. By accepting this risk, participants fully acknowledged they came to the formal onboarding process having never completed true integrated system-to-system testing. The participants were then depending upon the experience of the exchange’s onboarding team to help with integration and system level testing, often times testing for the first time as part of the onboarding process. The DIL seeks to mitigate this risk by providing an environment for organizations to practice and test their compliance to interoperability testing earlier in the process, while development is still underway. Testing prior to the onboarding process is analogous to taking the PSAT prior to taking the SAT. In addition, the participant establishes readiness with organizations who maintain communities of interested groups. The participants can monitor their community to see which members are adhering to the specification and are ready for onboarding versus those organizations which require more help. The DIL provides community administrators an opportunity to monitor partner organizations within their community.

Mitigation of Program and Project Risks

The DIL seeks to provide developers with the tools and techniques to tackle many of the more technical challenges faced by interoperability solutions today. The most comfortable area for a development team to code is core components. While avoiding developing interfaces and exchanging information with other systems focusing entirely on the core components results in prolonging program-level risks associated with implementing and demonstrating integration and interoperable exchange of information. An alternative supported by the architecture of the DIL is to develop segments of the core components necessary to support the development of interfaces and integration points between systems, thereby mitigating the risk of discovering interoperability issues late in project lifecycles. Extensive focus on core functionality without verifying integration and interoperable exchanges could lead to additional complexities and re-work of the core components as a result of not understanding integration requirements. By leveraging the DIL and testing integration and interoperability throughout the lifecycle of the project, significant program risk can be mitigated.

Learning Exercise

Technical review of specifications and requirements is often more thoroughly understood by implementing an RI (Reference Implementation). An exercise in translating a requirement into an RI offers an opportunity to technically vet out a requirement to its lowest atomic layer. Early identification of interoperability or integration issues provides the necessary time to reconvene the requirements group to evaluate the defect or discrepancy in favor of a jointly acceptable solution or clarification. Delaying implementing difficult requirements or specifications increases the program-level risk and potential for schedule delays. By interpreting and developing specifications and standards through these Reference Implementations and testing against other similarly implemented solutions, specifications and standards can be validated and deemed mature. This process of testing an implementation ensures standards can be implemented correctly the first time.

Creation of Baselines for Comparison

The DIL provides an opportunity to create and maintain a comparative system. The purpose served by a comparative system is to allow a Reference Implementation to be tested by numerous third parties who evaluate the common result and, as a community, confirm the reference system going forward. When a documented reference system changes, enhancements and modifications can be created and baselined against the authoritative reference system. Errors, omissions, and exceptions can be documented and reviewed against the reference system’s prior testing history. The DIL offers all participants the ability to maintain their individual testing history which can be reviewed as systems are upgraded and enhanced.

Supporting a Common Environment for Testing

The DIL maintains extended value options, including the opportunity for participants to maintain a community of interest. Participant organizations are able to contract with the DIL to establish a community of interest and appointing a community administrator responsible for distributing invitations and controlling admittance to the community. These communities can maintain private testing capabilities including gateways, certificates, test cases, test patients, and reporting capabilities. These communities provide a common environment for collaborative team members.

Regression Testing Suite

The DIL maintains extended value options for participants, including the ability to test as their system is still under development. Participant organizations are able to contract with the DIL to establish a regression testing suite. The regression suite can support web service triggers to launch nightly regression testing against a continuous integration build and deployment server.

Performance Testing Suite

The DIL has or maintains extended value options for participants, including the ability to subject their gateway or test system to a focused set of performance tests. Participant organizations are able to contract with the DIL to establish a performance testing suite. The DIL currently supports testing upwards of 10,000 messages per minute over 3 100MB pipes.