Office Of Personnel Management


The Office of Personnel Management Federal Investigative Services (FIS) is responsible for conducting a majority of Background Investigations (BIs) for the Federal Government to support national security clearances. FIS has taken great strides in reducing the amount of time needed to process BIs by a combination of process improvements and technology innovations. Over a period of several years, OPM developed and automated the functioning of the BI processes on the ADABAS mainframe system. As part of its modernization efforts, OPM created an EPIC portal with an Oracle WebCenter Portal at the center of its solution architecture. OPM engaged several contractors to migrate data, transforming mainframe applications into an open-source Java applications that can be deployed into an Oracle WebCenter platform. KP SOFT provided consultant expertise to migrate data to Oracle Database and created web applications components for data entry on the WebCenter portal.


Investigation data is stored in a mainframe record-based flat file system at OPM and over a period of time the dataset grew to several hundreds of GB in size. Data was only accessible to programs that ran on the mainframe computer and for clients that were written in Software AG Adabas mainframe languages such as NATURAL. Critical challenges that were observed by the stakeholders included:

  • Data residing on the mainframe-linked file system
  • Data structured in models that were created in record-based formats resulting in large files
  • Database relations did not adequately support business function
  • Access to the data was provided using Software AG terminal emulator software that worked in a client-server mode.


CGH Technologies Inc. (OPM prime contractor) retained KP SOFT consultants to design and implement an architecture to migrate data and transform the Natural application by addressing the aforementioned challenges. Our solution highlights includes set up of the following components:

  • Connx SQL Gateway: 3rd party database driver providing SQL access to the mainframe database.
  • Oracle DB: Highly normalized – domain data model dictionary, functional requirements and infrastructural requirements.
  • ETL: Design and implementation of scripts to Extract, Transform and Load data into Oracle DB.
  • Object Relational Database Access Layer: Hibernate Framework abstracting the database connectivity and providing an object relational view inside Java programs.
  • Java Model View Controller (MVC) layer: A framework designed to maintain a strict separation of model, view and controller layers inside Java programs. This allows for usage of multiple models, views and controller patterns without having to refactor all layers. For example, users can access data using a real time portal view and reports view without having to create a separate model for each type of view.
  • Portal view layer: Most commonly used view for entering data into the database.
  • Authentication and authorization: To provide secure access based on roles designed and implemented in the user identity and account management system.