全2287文字
PR

立ちはだかる2つの壁

 COBOL資産のマイグレーションには2つの「壁」がある。システム開発当時の仕様書が少ないまたは存在しないことと、テストシナリオとテストデータの作成が難しいことである。

 長寿命のCOBOLアプリケーションは当初の仕様書が存在しなかったり、機能追加した部分の仕様書がなかったりする。マイグレーション時に仕様書がなければ、COBOLプログラムを1行ずつ読み解き、新たな仕様書を作成しなければならない。

 当然難解だ。意味の分からない変数を多用しているプログラムや構造化前のgoto文ばかりのプログラムなどはざらにある。既に使っていない機能をコメントアウトしていないケースもあるだろう。

 ここで当時を知るエンジニアがいれば記憶をたどってもらうこともできるが、それは過度の期待だ。開発当初に在籍していたエンジニアが既にいないケースがほとんどだろう。

 「アセンブラ言語などを呼び出していればそもそも読める人が限られてしまう」(NTTデータの岡田譲二技術革新統括本部システム技術本部デジタル技術部インテグレーション技術担当課長代理)。仕様書を再作成するのに手作業では膨大な時間が必要だ。

 2つ目の壁も悩ましい。COBOLプログラムをオープン系COBOLやJavaにツールなどで変換した後は、現行システムと新システムで処理結果が一致することを確認するテストが欠かせない。

 ただCOBOL資産が古過ぎて当時のテストケースがなかったり、テストデータが使えなかったりする場合が多い。今でこそ「テストファースト」や「CI(継続的インテグレーション)」などでテストケースを残しておく開発現場が増えているが、資産が古ければそうしたテスト資産は期待できない。

 COBOL資産はバッチ処理を中心としたアプリケーションが多く、Webアプリケーションのように画面遷移からテストケースを自動生成することも難しい。日本IBMのシステムズ事業本部システムズ・ラボサービスに所属する竹村直氏は「COBOL資産向けの単体テストツールはあるが、ユーザー企業から大量の本番データを提供してもらう必要がある」とする。

 手作業で挑もうとするとマイグレーションの壁は依然として高い。ただDX向けのシステム変革は待ったなしである。次回は壁を克服すべく、続々と登場するマイグレーションの新技術や新たな開発体制を紹介する。