May 20, 2009

Importing Data into Helix ALM

Application Lifecycle Management

As part of the Perforce Services team I am often asked how to import legacy data into Helix ALM. The answer for this question depends. It depends on the format of the current legacy data. Helix ALM has a couple of import features that can be used to import data. In this article I'd like to go over the import features in Helix ALM and also mention other options out there.

Text File Import

Helix ALM can import delimited files. You can access this under File > Import > Text Import.

TestTrack Text Import

The cool thing about this feature is that it allows you to map the Helix ALM fields to match the fields in your delimited file.

XML File Import

Helix ALM can also import XML files. The caveat here is that the XML file must conform to the TestTrackData.dtd file, which is located in the Helix ALM installation directory. Some apps may allow you to export data into XML and specify a dtd file.

Programmatically

Helix ALM has a SOAP-based API that can be used to import data into Helix ALM. The great thing about SOAP is that it gives a lot of flexibility. We have examples and tutorials to help you get started.

Direct Database Import

Not recommended. While we do make the Helix ALM database schema public, we strongly suggest that you do not import data directly into the database. Why? Well, it is a robust database, so there is a high risk that you may miss something and make the application behave in an unexpected manner. Oh, and it would void your support contract, which may be of importance to you.

Have us do it for you!

Our services department has performed dozens of data migrations. We have migrated from legacy systems, spreadsheets, xml files, documents, you name it.

The first thought with having a software vendor migrate your data is cost. However, when you add up the time you will be spending migrating the data, associate a dollar amount with the time, and compare against the cost of the vendor doing the migration, oftentimes it is more cost effective to have the vendor do it for you.

Also, you will probably be up and running a lot quicker!