nucleic acid amplification technologies have allowed for breakthroughs in both detection and load measurement of pathogenic viruses . wide - scale automation of these technologies  most notably quantitative real - time polymerase chain reaction  has increased the precision and throughput of clinical testing to the point that molecular diagnostics methods have become the gold standard for monitoring viral loads of multiple clinically significant infectious agents . quantitation of human immunodeficiency virus ( hiv ) , hepatitis c virus ( hcv ) , and bk virus ( bkv ) are among the most significant of these assays . as demand for these molecular tests has increased , so too has the amount of data generated by the molecular diagnostics laboratory . truly genomics - aware electronic medical records ( emr ) and laboratory information systems ( liss ) do not yet exist . the sheer amount of data generated by even a single molecular diagnostics test provides a unique challenge for proper quality analytics . one of the most important quality analytics measurements in the clinical laboratory is turnaround time ( tat ) , for both clinical and regulatory reasons . unfortunately , in many clinical laboratories , where automated tat calculating modules are not available , the process of quality assurance ( qa ) reporting on tat usually involves manual steps ( e.g. , hand cleanup and further manipulation of data in a program like microsoft excel ) , resulting in a time - consuming and often error - prone process that consumes the time of highly trained laboratory staff . lis and emr technologies  which have the stated purposes of automation , centralized data warehousing , and write - once - deploy - everywhere reporting  have paradoxically caused an explosion of manual processes , most of them are workarounds to both perceived and actual inflexibility in deployed systems . denial of appropriate database access , centralized bureaucratic control of analytics assets , and personnel shortages secondary to tightened budgets all play a part in creating a situation where qa reporting that could be automated and performed in real - time within the boundaries of the lis is often impossible . given the technical and administrative limitations that were present at our institution , we chose to develop a web - based real - time qa platform that would automate qa reporting in the molecular diagnostics laboratory . we chose to do so for several reasons : ( 1 ) reports pulled relevant data from the lis did not aggregate or perform meaningful analytics on said data ; ( 2 ) skilled laboratory personnel were wasting up to 45 min / test / month on hand manipulation of data sets to generate appropriate qa reports ; ( 3 ) the existence of pathology informatics expertise on the molecular diagnostics faculty ; ( 4 ) the suspicion that the existing manual process was susceptible to human error ; and ( 5 ) lack of financial and technical resources would make addressing our issues a low - priority item on the institutional roadmap . vmware esxi 4.1.0 ( virtual machine hypervisor software , vmware incorporated , palo alto , ca ) was installed on a dell precision 5810 ( intel xeon e5 - 1620 v3 ; 16 gb ddr3 ecc sdram ; 256 gb liteon ssd ; 1 tb western digital hdd ) server . this server was isolated within the internal hospital intranet , with no physical or network accessibility from the university intranet or internet at large . this allowed for a server that could spin up individual experimental virtual machines at will , yet did not pose a security risk . to safeguard against a physical security breach , the server was located within a locked room and password protected , with two - factor authentication through rsa securid . this rotation was an extended version of a 2-week long flipped classroom informatics boot camp that we had previously run for students of our institution 's medical scientists training program . during this rotation , the fellow received specialized instruction in the following topics : 
 virtual machine theory and practicestack - based computingunix - like operating systems and posix standardsweb servers , http , https , proxies , and reverse proxiesrelational database management systems , sql , database normalization , and denormalizationserver - side ( php ) and client - side ( javascript ) scriptinguser interfaces and human - computer interaction paradigmsdata file parsing , error correction , and fault tolerance . virtual machine theory and practice stack - based computing unix - like operating systems and posix standards web servers , http , https , proxies , and reverse proxies relational database management systems , sql , database normalization , and denormalization server - side ( php ) and client - side ( javascript ) scripting user interfaces and human - computer interaction paradigms data file parsing , error correction , and fault tolerance . on initial investigation , the fellow ascertained that qa reports were being manually pulled from the lis ( cerner millennium ) through a custom script written in cerner data explorer by a member of our institution 's it staff . these reports were : ( 1 ) extremely verbose , ( 2 ) did not directly contain the reportable data elements , ( 3 ) could not be run at arbitrary time periods , and ( 4 ) were not regular in columnar structure , with multiple irregularities detected within each report run . laboratory personnel was forced to dump all rows ( usually numbering into the thousands ) into an excel spreadsheet , regularize the data by hand , and then apply different mathematical transformations on the sanitized data to arrive at the finalized qa reports . this took an average of 4565 min per test per month  a small amount of time individually , but an untenable amount of time when the number of test types performed by our molecular diagnostics laboratory was considered . the fellow , mentored by a member of the pathology informatics faculty , performed a detailed analysis of the source data files . the following irregularities were found : 
 the presence of periodic  test  results that were generated by the upstream emr on patients that existed in the system solely for the purposes of engineering qa and were therefore not realcertain ( but not all ) test results that fell within a critical high / critical low range took up two rows , with the second row consisting solely of an all caps comment block 
 after such a row , there was a + 2 columnar  frameshift  of the next row 
 many rows were extraneous , as they were data points on tests either not truly offered by our molecular diagnostics laboratory or ( more rarely ) on tests that had been placed in error . the presence of periodic  test  results that were generated by the upstream emr on patients that existed in the system solely for the purposes of engineering qa and were therefore not real certain ( but not all ) test results that fell within a critical high / critical low range took up two rows , with the second row consisting solely of an all caps comment block 
 after such a row , there was a + 2 columnar frameshift  of the next row 
  after such a row , there was a + 2 columnar frameshift  of the next row many rows were extraneous , as they were data points on tests either not truly offered by our molecular diagnostics laboratory or ( more rarely ) on tests that had been placed in error . all of the above , perhaps save the first , could have been addressed with a cleanup of the cerner data explorer custom script . our team initially asked our institutional it for this , but due to the lack of resources and existence of a manual workaround , this request was given low priority . however , even had all of these issues been addressed , it would have been impossible to create a single script that performed the necessary calculations and transformations that we required to arrive at a finalized qa report . cerner custom language ( ccl ) is a database query language that is best understood as a reskinned superset of sql , with all of the limitations of sql . specifically , conditional branching is impossible in ccl without the implementation of recursive common table expressions ; this is not generally done for multiple reasons , not the least of which is performance . as such , we were left with a source data file from which we could derive all necessary elements , but which required a large amount of error correction to be machine useable . we chose to implement a linux , nginx , mariadb , php ( lemp ) virtual machine , utilizing the following components : 
 ubuntu linux 12.04 ltsnginx 1.5.6mariadb 5.5.34php 5.4jquery 1.11twitter bootstrap 3 . ubuntu linux 12.04 lts once the virtual machine was fully configured , we proceeded to design a web 2.0 real - time qa platform . at periodic intervals , source data autogenerated as a comma - separated value ( csv ) file from cerner data explorer would be pulled into the virtual machine utilizing http post . utilizing a 1-year long historical backlog of such csv files , we designed and implemented a robust error and duplication removal program in php to run as a first pass . the result of this php program was a clean data file that only contained rows with known good data , in a regularized format . this script inserted the rows directly into a permanent sql database , utilizing sql prepared statement constructs to lower computational and i / o overhead by an order of magnitude as compared to the standard declarative method , while also providing a final duplication check . once the rows were housed in the database , this database could be queried at will , for arbitrary tests and arbitrary time spans . we wrote a complete user interface for both file upload / parse and querying / reporting utilizing php , sql , html , css , jquery , and bootstrap [ figures 1 and 2 ] . utilizing xmlhttprequest and other asynchronous javascript as xml programming techniques , we constructed a reporting framework in which arbitrary timeframes could be defined , analyzed , and output as fully formatted college of american pathologists compliant qa reports in real - time . this real - time framework , which we code - named  alchemy ,  takes in as user inputs the test type and timeframe period [ figure 3 ] . once these are defined , alchemy generates a summary report which calculates key qa statistics in real - time , including the average tat in days , the number of tests falling outside the expected tat ranges and their corresponding percentages [ figure 4 ] . in addition , a results ranges table is generated , summarizing the number of tests for each period of time that falls into specific predefined ranges , as defined by the medical director of the molecular diagnostics laboratory [ figure 5 ] . a raw data table is also available at the end of each report ; it includes the specific accession number , specific ordering and reporting dates , tat , and actual test result . alchemy welcome page with the test menu and file upload tabs on the top menu bar dropdown test menu is accessible through the molecular diagnostics tab the selection of period of time to be analyzed is customizable by the user quality assurance report real - time autogenerated summary detailed test range information , summarized by alchemy a summary of the required activities to obtain the data and prepare the qa reports along with the amount of time invested in each activity is shown in table 1 . before implementing the alchemy platform , reporting qa for the hiv , hcv quantitation , and bkv quantitation assays took 4565 min of personnel time per test every month . as expected , report inquiry and the summary of data were the most time - consuming tasks . the summary of the data required the user to separate the pertinent information for each specific test from a file including all tests performed during the period of interest and multiple result values . summary of tasks required to prepare the quality assurance report before alchemy platform implementation with alchemy , the time spent in preparing qa reports decreased to 15 min total ( regardless of a number of tests ) per month . discrepancies in between the previous manual  gold standard  and alchemy were found only three times in the first full quarter of operation , and all three times , the discrepancy was found to be due to either human error or data duplication in the previous gold standard . perhaps , even more impressive was the fact that during the first full month of operation , there was a large discrepancy between the number of tests reported by alchemy and the number of tests counted by the official report from the lis . a bug was identified in the way that the lis report was calculating data elements , and alchemy 's numbers were proven to be correct by manual reconciliation . in all instances , alchemy was found to be superior to previous gold standard methods . alchemy allowed the user to analyze data over arbitrary periods of time . without having to shoulder the burden of manual calculations , each user could customize the period of time of interest and analyze the data accordingly . this flexibility allowed laboratory staff to perform quality improvement projects on individual tests ( e.g. , bk virus quantitation ) using data collected from alchemy in real - time , as opposed to having to wait for it to develop specific reports . viral disease testing is intended to identify and accurately diagnose the infection and establish the therapeutic and follow - up approach . these molecular technologies allow monitoring changes in viral load during treatment and predicting the response to therapy . in the era of  test and treat ,  it is of utmost importance to provide the test results in a timely manner . qa programs are developed to assess the efficacy of the laboratory in providing the test result within the expected period of time . the use of quality control tools in the molecular microbiology assays is crucial to ensure the accuracy of results , appropriate patient management , and error detection . the auditing of laboratory efficacy provides a way for the laboratory personnel to know if specimens are being handled adequately and may provide awareness into possible areas of deficiency , ideally allowing for rapid process improvement . unfortunately , as demonstrated by our experience , when the preparation of such qa reports is manual , the time expenditure becomes cost - prohibitive , and errors arise . liss are critical for high - quality healthcare service provision and the need for these systems is growing . with the advent of better computer systems , an increasing number of healthcare institutions rely on computer programs to handle the burdensome processing of data and to provide timely feedback in a manner that is easily understood and readily interpreted by the laboratory staff . laboratory process automation has greatly improved test throughput , while driving down the tat , enabling critical results to reach physicians rapidly for improved clinical outcomes . lis 's are implemented on the premise that they meet these technological and workload demands . ideally , they enable laboratory staff to monitor the analytical and quality processes while minimizing errors . automatic calculation of tat and other laboratory statistics are currently offered by several vendors , either integrated into the core lis software or as modules that can be customized to accommodate the laboratory needs . unfortunately , different barriers may limit the availability of these options to laboratories , including economical as well as infrastructural . even though it has been decades since the implementation of the first lis , the dream of real - time data analysis through the data warehoused in the lis has largely remained out of reach . lemp stacks use an open source unix - like operating system as the base for the stack components and nginx as a reverse proxy server for http , https , smtp , pop3 , and imap protocols . nginx exhibits high currency , high performance , and low memory usage as compared with its peers , making it ideal for a project like alchemy . php is a widely used scripting language which can run on various platforms and is compatible with almost all currently used servers . php supports a wide range of databases and can generate dynamic page content , create and manipulate files on the server , modify the database , control user access , and even encrypt data . php is easy to learn ; it has a basic syntax and is excellent for beginners . importantly , the contents of the lemp stack are free and easily accessible , which provides an incentive for those interested in creating an application customized for the individual needs and in an affordable fashion . we have previously reported the use of web tools not only in genomics and research but also as an excellent tool for pathology resident 's education . we not only created a powerful real - time tool for quality improvement in our molecular diagnostics laboratory but also provided a trainee with the rare opportunity to drive clinical improvement through direct design , implementation , and deployment of a clinically viable informatics - driven system . however , we rather intended to show a feasibility of process how to utilize simple informatics approach by a resident / fellow supervised by an informatician . by using alchemy , a significant decrease in the time and the human error associated with qa report generation in our molecular diagnostics laboratory has been observed . alchemy has proved to be an effective easy to use tool as well as an inexpensive , approachable , and effective teaching tool for informatics . we have used alchemy for the calculation of tat for infectious disease tests in the molecular laboratory . however , its applications are not limited to these tests . with minor programming modifications to the code , more tests can be added to the menu . we have also been able to obtain additional information from the original data with the use of alchemy , including the number of tests with different result ranges in a period of time which helps for statistical and monitoring purposes . we plan to add more tests to the platform 's menu and include tests from other laboratory divisions in future updates . this effort shows the utility of informatician - supervised resident / fellow programming projects as learning opportunities and workflow improvements in the molecular laboratory  a utility that we have managed to demonstrate many times over . alchemy is also a feasible option for organizations facing similar issues as ours and looking for a cost - effective way to improve the completion of qa reports . we hope to continue utilizing these flipped classroom , closely mentored training methodologies to drive continued success in pathology informatics at our institutions . herein , we developed a web - based real - time qa platform that automated qa reporting in the molecular laboratory . alchemy is a feasible option for organizations facing similar issues as ours and looking for a cost - effective way to improve the completion of qa reports . we hope to continue utilizing these flipped classroom , closely mentored training methodologies to drive continued success in pathology informatics at our institutions .
background : the molecular diagnostics laboratory faces the challenge of improving test turnaround time ( tat ) . 
 low and consistent tats are of great clinical and regulatory importance , especially for molecular virology tests 
 . laboratory information systems ( liss ) contain all the data elements necessary to do accurate quality assurance ( qa ) reporting of tat and other measures , but these reports are in most cases still performed manually : a time - consuming and error - prone task . the aim of this study was to develop a web - based real - time qa platform that would automate qa reporting in the molecular diagnostics laboratory at our institution , and minimize the time expended in preparing these reports.methods:using a standard linux , nginx , mariadb , php stack virtual machine running atop a dell precision 5810 , we designed and built a web - based qa platform , code - named alchemy . 
 data files pulled periodically from the lis in comma - separated value format were used to autogenerate qa reports for the human immunodeficiency virus ( hiv ) quantitation , hepatitis c virus ( hcv ) quantitation , and bk virus ( bkv ) quantitation . 
 alchemy allowed the user to select a specific timeframe to be analyzed and calculated key qa statistics in real - time , including the average tat in days , tests falling outside the expected tat ranges , and test result ranges.results:before implementing alchemy , reporting qa for the hiv , hcv , and bkv quantitation assays took 4560 min of personnel time per test every month . with alchemy , 
 that time has decreased to 15 min total per month . 
 alchemy allowed the user to select specific periods of time and analyzed the tat data in - depth without the need of extensive manual calculations.conclusions:alchemy has significantly decreased the time and the human error associated with qa report generation in our molecular diagnostics laboratory . 
 other tests will be added to this web - based platform in future updates . 
 this effort shows the utility of informatician - supervised resident / fellow programming projects as learning opportunities and workflow improvements in the molecular laboratory .