COBOLの呪縛を解いて「Java」に書き直すことに意味はあるのか?それでも「COBOL」は生き残る【第4回】

「COBOL」プログラムのモダナイゼーションのために、ソースコードを1行ずつ書き換えるのは「根本的に間違い」だと専門家は指摘する。解決策はあるのか。そもそもCOBOLプログラムをなくすことに意味はあるのか。

2022年10月19日 08時15分 公開
[Stephanie GlenTechTarget]

 プログラミング言語「COBOL」で開発されたレガシーなプログラムのモダナイゼーション(最新化)方法として挙げられるのが、COBOLプログラムのソースコードをプログラミング言語「Java」で書き直すことだ。だがこの移植にはさまざまな課題がある。

そもそもCOBOLをなくす意味はあるのか

 Webマーケティング企業Gravywareのプレジデントであるデビット・ガルテ氏は、オンプレミスシステムからクラウドサービスへの豊富な移行経験を持つ。そうしたガルテ氏も、レガシープログラムのソースコードを1行ずつ、モダンなプログラミング言語に書き換えることができたことは「一度もない」と言う。

 ソフトウェアベンダーTrussWorksのアプリケーションエンジニアリング担当シニアディレクターであるニック・トワイマン氏も、同様の問題に直面したことがある。トワイマン氏は「COBOLプログラムのソースコードを書き換える上で、単純に1行ごと書き換えるアプローチはあまり成功しない」と述べる。

 トワイマン氏が望ましいと考えるのは、もともとの開発者の意図を酌んだ上で、一般的に普及した記述方法を使って、元のソースコードの動作を再現する書き換え手法だ。同氏の考えは「開発者は元のソースコードの背後にある、根本的な業務プロセスや意図を理解してモデル化すべきだ」ということではない。むしろ、そのような作業を開発者が担当すべきではないと同氏は考えている。「開発者ができるのは、書き換える対象のソースコードを抽出するための大まかな出発点として、行単位の翻訳作業をする程度だ」(同氏)

 たとえ企業がCOBOLからJavaへの書き換えに成功したとしても、結果としてCOBOLプログラムのソースコードを無理やりJavaで表現した「JOBOL」が生まれてしまう。「この事実は、企業がCOBOL開発者を訓練し続けなければならないことを意味する」と、調査会社Intellyxの創設者兼プレジデントであるジェイソン・ブルームバーグ氏は言う。「企業がCOBOL開発者を継続的に必要とするなら、メインフレームのプログラムをクラウドサービスに移行せず、そのままにするという選択肢もある」(ブルームバーグ氏)

TechTarget発 エンジニア虎の巻

米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。

ITmedia マーケティング新着記事

news084.jpg

Instagramがまとめアカウント排除へフィードアルゴリズムを刷新
Instagramはフィードアルゴリズムを刷新し、コンテンツレコメンドの方針を変更することを...

news148.png

「三菱UFJ銀行」と「メルカリ」のフィッシング詐欺が増加――BBソフトサービス調査
BBソフトサービスが、詐欺サイト専用セキュリティソフトで検知・収集したデータを基に、...

news091.jpg

AI生成コンテンツの大増殖で「ソーシャルメディア」が「ソーシャル」ではなくなる日
AIが生み出すコンテンツをAIが学習しさらなるコンテンツを生成する未来は、私たちが望む...