Success­ful BS2000 migration
at Amadeus Germany GmbH

The Amadeus Germany GmbH is a provi­der for IT soluti­ons for the travel indus­try. The company provi­des services for the sale of tourist services for e.g. tour opera­ti­ons, travel agencies, airlines and airports, call centers or the internet.

It really worked: at 11.55 pm on 30 April 2008, the last BS2000 system was switched off at Amadeus Germany.

This was prece­ded by a migration project surely unique in its comple­xity. During the three-year project term, thousands of SPL programs and SDF proce­du­res with several million lines of code (LOC) were automa­ti­cally conver­ted to C++ or Perl on UNIX. Amadeus migra­ted the high-perfor­­mance file-handling system on the BS2000 to Oracle relatio­nal databa­ses, and they repla­ced the DCAM monitor with openUTM on UNIX. The target systems run in a nearly 24/7 opera­tion cycle and process around 500 user transac­tions per second (TA/s) during peak periods, corre­spon­ding to around 1,000 techni­cal TA/s.

The extent of this project becomes clear in the following figures: Amadeus Germany GmbH is Germany’s leading provi­der of IT soluti­ons for the travel indus­try. In Germany, 85 % of all travel agencies work with the Amadeus system with about 45,000 PCs. Amadeus Germany’s list of custo­mers inclu­des but is not limited to 75,000 hotels, 500 airlines and about 200 travel and bus operators.

The project team managed logisti­cal challen­ges, because opera­tion had to be conti­nued without problems during the entire multi­an­nual project term. In addition, a monthly release of new program versi­ons was requi­red to meet custo­mers’ requests.

We develo­ped the migration tools. Further­more, several employees of us were integra­ted into the project and added their experi­ence and know-how in the fields of migration and reengi­nee­ring. The following tools were develo­ped especially for this project:

  • “SPL → C++“ trans­la­tor (S2C): automa­ted conver­sion of programs of the programming language SPL in maintainable and perfor­mant C++ code.
  • “JCL (SDF) → Perl“ conver­ter (J2P): conver­sion of job control proce­du­res into Perl scripts.
  • “(BS2000-)Files-to-Oracle“ migration tool (F2O): conver­sion of the BS2000 file system into relatio­nal Oracle databa­ses taking the EBCDIC-ASCII conver­sion into consideration.

During the develo­p­ment we benefi­ted from the know-how of compi­ler develo­p­ment and the decade­long experi­ence in success­ful execu­tion of software migration projects. For the develo­p­ment of tools, we used our own meta tools such as the in-house develo­ped parser genera­tor BTRACC (Backtracking Compi­ler Compi­ler). The tools can be used for other migration projects as well.

The success of the project leads to the following conclusions:

  • A migration project using conver­sion tools is achiev­a­ble and offers a real alter­na­tive to the intro­duc­tion of standard software and redeve­lo­p­ment, especially consi­de­ring project durati­ons and budgets
  • Conver­sion tools allow for flawless migration with a high degree of automa­tion. A decisive factor is the quality of the migration tools, which must be based on theories of compi­ler technology.
  • The project requi­red itera­ti­ons during the conver­sion, for example, if an already impro­ved source needed to be conver­ted again. This can be accurately accom­plis­hed in arbitrary itera­ti­ons with the help of a conver­sion tool, but it is a clear rejec­tion of manual trans­la­tion by a large amount of inexpen­sive programm­ers and an “offsho­ring” of migration projects.
  • It proves yet again that the conver­sion of antiqua­ted programming languages to modern languages (in the present case, SPL to C++) is practi­ca­ble if an adequate tool (trans­la­tor) is avail­able. The translator’s conver­sion is accurate, in arbitrary itera­ti­ons and automa­ted. The genera­ted target code is maintainable.