NMQual: A Tool to Automate Installation and Facilitate Qualification of NONMEM
B. Knebel (1), T. Bergsma (2), L. Gibiansky (1), J.T. Hane (1), M.R. Gastonguay (1)
(1)Metrum Research Group, Connecticut, USA; (2)Empidonax Consulting, Connecticut, USA
Objectives: Keeping NONMEM installations up to date with known bugfixes can be challenging due to the nature of the procedure (e.g. manually modifying and compiling code according to bug-fix documents), and the lack of an automated method to update the source files with the bugfixes prior to compilation. In addition, presentations at recent industry meetings have indicated that a “validated” install of NONMEM is likely to be required by regulatory authorities in the future. The goal of this work was to develop a tool (NMQual) to facilitate the automated installation and qualification of NONMEM on a PC running MS Windows or Linux.
Methods: NMQual was developed according to modern software life-cycle practices. User requirements for NMQual included the ability to update the NONMEM source code with all bugfixes at the time of installation, implement any user or site specific changes, install NONMEM with minimal user intervention, maintain an electronic trail of all changes made during the installation, qualify the NONMEM installation, and allow a NONMEM run to be linked to an installation and any related code changes. Requirements also included the automated implementation of several NONMEM test cases, which were compared to reference results.The Perl programming language was ideally suited for the development of NMQual, due to its cross-platform compatibility, scripting capabilities, and ease of use.
Results: NMQual validation tests indicated successful implementation of all user requirements on both Linux and WindowsXP. Bugfixes and user requested changes are implemented via XML-formatted files read by Perl. All source code changes are tracked within the source files via inserted comments and externally using an installation log. NONMEM runs can be started from any directory on the computer using an installation-generated Perl script. Prior to the execution of NONMEM a checksum is run against the install directories to ensure that source code has not been modified since the last qualified installation. Each NONMEM output file includes the complete installation log appended after the standard output.
Conclusion: NMQual, a validated tool for the automated installation and qualification of NONMEM, provides a simple mechanism to improve the quality control of NONMEM installations.