Javaで書き直しても消えない“COBOLの呪縛”とは?それでも「COBOL」は生き残る【第2回】

「COBOL」プログラムを「Java」で書き直す際の課題として、レガシーなプログラムが抱える構造上の問題を複数の専門家が指摘する。どのような問題につながる可能性があるのか。

2022年10月05日 10時00分 公開
[Stephanie GlenTechTarget]

 経験豊富な開発者でも、「COBOL」から「Java」といった互換性のないプログラミング言語間でソースコードを書き換えることは骨が折れる。このことが「COBOLプログラムのモダナイゼーション(最新化)を困難にしている」と、ソフトウェアベンダーTrussWorksのアプリケーションエンジニアリング担当シニアディレクターであるニック・トワイマン氏は指摘する。

Javaに書き換えても残り続ける“COBOLの呪縛”

 ソフトウェア開発者のトム・タウリ氏は、COBOLからJavaへの書き換えが難しいことに同意する。タウリ氏は、メインフレーム用プログラムのモダナイゼーション方法を解説した書籍『Modern Mainframe Development: COBOL, Databases, and Next-Generation Approaches』の著者だ。

 「古いプログラミング言語で書かれたソースコードにはしばしば、『goto』(GO TO)といった思いがけない結果を生む恐れのある指示がある」とタウリ氏は言う。gotoは、ソースコードの特定の位置に無条件でジャンプする構文だ。

 トワイマン氏によれば、現代の開発者にはレガシーなCOBOLプログラムのソースコードの意図が伝わりにくい。結果として開発者は、ちぐはぐなJavaプログラムのソースコードを作り出してしまう。そうして生まれたソースコードは概して保守性が低く、不明瞭になる。

 「開発者が直面する別の問題は、レガシープログラムの機能を説明したドキュメントがないことだ」と、Webマーケティング企業Gravywareのプレジデントを務めるデビット・ガルテ氏は話す。「さまざまな開発者が修正を加えてきたレガシーなCOBOLプログラムは、機能がばらばらに実装されており、ソースコードが肥大化している可能性がある」とガルテ氏は指摘する。

 ガルテ氏は「たいていの企業は、プログラムのどの機能をよく使うのかは分かっていても、全機能について必要かどうかを判断できない」と語る。そのせいで開発者は、エンドユーザーがほとんど使わない機能の移植に取り組まなければならない場合がある。その結果「ほとんどのモダナイゼーションプロジェクトが問題を抱える羽目に陥っている」(同氏)という。

TechTarget発 エンジニア虎の巻

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

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

news148.png

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

news091.jpg

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

news083.jpg

生成AIで美容業界の未来を創造 エスティ ローダーとマイクロソフトがAIイノベーションラボを設立
両社は消費者とのつながりを強化し、より迅速かつ効果的な市場投入を実現することを目的...