Case Studies and White Papers NCHS ICD-10-CM

About NCHS ICD-10-CM

The Opportunity

The National Center for Health Statistics is mandated to update the International Classification for Diseases (ICD) on 1 April and 1 October of each year. These updates are made in accordance with section 1886(d)(5)(K) of the Social Security Act (the Act) clause (vii) as amended in 2003 by Public Law 108–173, the Medicare Prescription Drug, Improvement, and Modernization Act of 2003 (MMA), specifically Section 503(a).

Under the International Classification for Disease - 9 - Clinical Modification (ICD-9-CM), NCHS regularly distributed official updates and revisions to users via CD-ROM. This legacy version of the ICD was created and maintained in Folio Views.

In January of 2009 HHS adopted the ICD-10-CM, replacing ICD-9-CM. Later a 1 October 2015 compliance date was then set for the adoption of ICD-10-CM by all government, private industry, insurance companies, and researchers. Due to several competing factors, including the incompatibility of new ICD-10 files with the growing technological trends, NCHS began looking into alternative methods of distribution.

Our Approach

Because of our expertise with Folio Views, Devis has maintained ICD-9-CM for NCHS since 1997. GIven our subject matter expertise and modern web development experience, in 2013 NCHS awarded Devis a modernization contract to create a web application prototype that would replicate Folio Views search functionality on the web.

Devis personnel used our Performance-Centered Design approach to completely re-envision the application. In our prototype the user received real-time Business Intelligence as they worked, instead of the legacy product’s static encyclopedic content. We further customized the data presentation based on real-time search parameters, providing Just-In-Time Performance Support. For the first time ever users were presented with the specific guidelines for selecting each ICD-10-CM code, providing information previously relegated to separate volumes and memorized by SMEs.

The client was blown away by the large data set’s instant accessibility. The prototype’s thoughtful and responsive User Experience resulted in a new browsing model, which allowed non-SME personnel to instantly zero in on the correct ICD-10-CM code. NCHS quickly approved the prototype for replication and distribution by Devis as the new, official version of ICD-10-CM.

As Devis moved to the new web-based version of ICD-10-CM we used our DevSecOps processes for internal development and deployment. Our robust CI/CD pipeline helped ensure rapid, iterative changes.

We then integrated our DevSecOps process with the CDC CIO process for deploying systems directly into CDC’s internal production environment, and successfully achieved all the security and process gates.

Throughout our time on the project, Devis successfully moved from manual QA support to automated testing. A rich set of domain-specific rules are used by our automated tests to check for style, structure, and content of the indexes used to find ICD-10-CM codes related to diseases, neoplasms, drugs, and external disease causes, as well as validation of every single virtual link between these complex documents. The automation is designed to automatically correct certain types of QA issues, rather than report them for remediation to NCHS.


-Devis is the publisher of the ICD-10-CM data, and controls information published via the ICD-10-CM Web Tool
-As part of the official Business Process flow, Devis receives the validated dataset after official finalization, so we can run our domain-specific automated processes to identify and correct errors, validate the agency’s pre-publication addendum, and generate the ‘Gold’ version of the U.S. National Reference Data Set for use as the baseline for the next year’s updates.
-Devis has updated and maintained the ICD since 1997, and due to our work transition to a new technology, Devis was awarded a new contract to continue updating ICD-10-CM through 2023.


-Folio Views: extract, build, and validation tools
-Grep and batch scripts for QA and diff automation
-Advanced QA of Folio source data
-Conversion of Folio source files to XML
-Transformation of XML to CSV to populate graph database
Neo4j: graph database for storage/querying ICD-10-CM index and tabular data
Python: HTTP API for online access to graph database
-Flask: synchronous framework
-Quart: asynchronous framework (coming soon)
Angular: Javascript browser-based application framework
-Upgrade to React 16.x (coming soon)
Puppet: configuration management
GitLab: CI/CD

At a Glance

-Quality assurance (QA) time reduced from days to hours
-Improved client feedback from QA process
-Different files show exact changes from year to year
-All files validated for broken links and structural anomalies
-All fixes performed by QA code are logged and delivered to client
-Web application greatly improves efficiency and accuracy for medical coders and other end users in finding exactly the index entries, codes, and instructions required for accurate code choice:
-Nearly instantaneous display of results in all indexes (Disease, Neoplasms, Drugs, and External Causes) for any arbitrary search text
-In earlier paper and electronic ICD-10-CM implementations, manual scrolling through the Tabular volume was required to visually find instructions (includes, excludes, code also, etc) applicable to a given code.
-Now instructions at all levels -- from Chapter to Section to Code Category -- are aggregated and displayed together with the code itself.
-XML conversion makes possible transformation of ICD-10-CM data to a wide variety of formats: CSV, JSON, SQL, or any format that can be generated from XML.