Amdocs Makes the Switch from ClearCase to Perforce Helix
It's been four years since customer experience systems leader Amdocs migrated its version control from IBM Rational ClearCase to Perforce Helix. They're still singing Perforce's praises. You might not expect a worldwide enterprise like Amdocs —$3 billion in revenue, 19,000 employees, and development centers in Cyprus, India, Israel, Austria and Germany — to be nimble. You wouldn't expect a huge deployment of a new hub for the company's software operations to be anything less than nightmarish. But Amdocs' experience proves that switching version control systems needn't slow you down.
Why Amdocs Made the Switch to Helix
Slashing licensing and administration costs
Coordinating distributed teams around the world
Increasing developer productivity
Enjoying peerless technical support
and I have peace of mind knowing that if I have a major blocking issue, all I have to do is pick up the phone."
Here's how Amdocs, the number-one global provider of software and services to communications service providers, moved from ClearCase to Perforce Helix— while only halting development for one day.
Conceptual differences between ClearCase and Helix can turn a detailed history import into a months-long marathon.* Migrating everything at once is not the only option, however. Another is to migrate only active branches and preserve their relationships so developers can begin working in Helix right away, while backfilling the history from ClearCase over time. Or, the history can be exported to an external storage device — which saves on license fees but hampers developer access to version history.
Ultimately, cost, procedural, and legal questions pointed Amdocs in the direction of migrating their active branches now, while retaining ClearCase for IP provenance. This ClearCase-aware baseline-and-branch import (BBI) strategy allows different teams to move to Helix on their own schedule, presents few technical risks, runs quickly, and preserves interesting history points.
"Interesting was defined as code lines we were actually supporting in our production environment," explains Bruce Painter, Software Engineering Manager for Amdocs. "We had a handful of customers with specific versions in their production or testing-and-staging environments. That's what we decided to move forward."
Strategy in hand, the team took about three weeks to capture data and script the process, with multiple dry runs to test source code changes required as part of the migration, such as updates to build scripts or makefiles. They knew that development could not stall longer than one day. Thus, any conversion would have to pass builds and automated tests before migration actually occurred.
"We probably went overboard on validation and verification," says Painter. But he can't complain about the results of that conscientious approach. On the day of migration, because all of the historical information can be preloaded into Helix, only the baselines representing the latest active development branches needed to be cut over. Also, BBI produces a negligible amount of metadata, so there's no server performance hit or need for extra hardware.
But there is one potential wrinkle in the BBI strategy: renames. ClearCase and Perforce track renames differently, so the historical link between files that were renamed or directory structures that were reorganized between releases in the past is lost in BBI migrations. The solution? Find any file renames or moved relationships among branches, and generate rename mappings that are added to the branch specs via migration scripts.
From start to finish, Amdocs completed the migration from ClearCase to Helix in just five months — with the actual migration taking only one day. From a cost perspective, the company has realized savings not only by moving from the IBM Rational floating license model to Perforce's per-user model, it has also saved in terms of full-time equivalents: A part-time administrator can oversee 1,000 or more licenses.
"We have development centers throughout the world, and trying to support that with ClearCase would have been a nightmare. With Helix, it's been a breeze using it for local development or with the Helix Proxy for remote centers," says Painter.
What's more, training those developers in Helix was easy and required no arm-twisting. "From a developer productivity perspective, there is absolutely no comparison — merge or integration tasks that would take days to complete in ClearCase, and often involve multiple people, are now done in hours," he notes.
Perforce Technical Support
While Perforce is lauded by customers for its support, the Amdocs migration did not, in fact, require any hand-holding.
But Amdocs' overall experience with Perforce support over the course of four years leads Painter to remark: "Perforce support is amazing! Email response is usually within the hour and I have peace of mind knowing that if I have a major blocking issue, all I have to do is pick up the phone." As an example, he recalls a situation where multiple hardware failures caused data corruption of primary files. Trying to restore from backup revealed that the corruption had gone on for several days.
"The last good backup was about a week old, but with the help of Perforce support, we were able to rebuild the data files. We lost only four change lists, rather than a full week of development work for 250 developers globally — and we were back up and running in less than a day."
And what of Amdocs' legacy version control system? For IP purposes, the company maintains ClearCase, but pays for only one license. In retrospect, it's clear that the care with which Amdocs made the migration to Helix has paid off.
"In the last four years, we've only had to go back to ClearCase three times and in each case it was because that particular data was not migrated to Helix."