レガシーシステムモダン化と、生き続けるCOBOLのリアル
技術解説
世間では、『メインフレーム』や『COBOL言語』がレガシーシステムの象徴として語られています。
しかし、古い技術で構築されたシステムであっても、そのシステムの「状態」と「ビジネスの変化への適応性」がレガシーシステムかを判断する基準です。レガシーシステムの象徴として語られるプログラミング言語『COBOL』が、現代社会においてどのような役割を果たし、そしてその実態がどうなっているのかを正しく認識しましょう。
COBOLはレガシーシステム?
近年、企業ITにおけるレガシーシステム対策やモダン化(モダナイゼーション)の機運が高まる中で、『レガシーシステム』の定義や、そのモダン化の真の目的について改めて考える必要性が生じています。そして世間では、昔は主流だった大型計算機の『メインフレーム』や、そこでよく使われたプログラミング言語の『COBOL言語』がレガシーの象徴として語られることが多くあります。
「レガシーシステムモダン化委員会」の報告書では、古い技術で構築されたシステムであっても、そのシステムの「状態」と「ビジネスの変化への適応性」が重要であるという見解を示しています。レガシーシステム対策やITモダナイゼーションでは、言語やプラットフォームを置き換える「脱〇〇」という手段が目的化されがちですが、真のゴールは「ビジネスの変化に適応できる状態」にすることです。
もし現在のメインフレーム上のCOBOLシステムがその柔軟性を失い、ビジネスの足かせとなっているのであれば、報告書で示されているモダン化戦略を検討する必要があります。その場合、「脱メインフレーム」や「脱COBOL」は、合理的な手段の一つと言えます。
このようにレガシーシステムを正しく理解した上で、その象徴として語られるプログラミング言語『COBOL』が、現代社会においてどのような役割を果たし、そしてその実態がどうなっているのかを詳しく見ていきましょう。
COBOL とは?
COBOLは60年以上前に誕生したプログラミング言語でありながら、今日も行政や金融、企業の事務処理を支えている現役の言語です。「難しい、時代遅れ、不人気、消える」などと言われ放題ですが、COBOLは人知れず黙々とたくさんの処理を日々こなし、世界の社会基盤を支えています。
数字で見るCOBOL
「COBOLはまだあるの?」というイメージをお持ちの方もいるかもしれません。プログラミング言語 COBOL が現代社会で果たしている役割を示すデータをご紹介します。
- 銀行システムの43%を構築しています。
- 個人取引の80%で使われています。
- 95%のATMが依存しています。
- 世界で2200億行のプログラムが稼働しています。
これは、通信社のロイターがまとめた「COBOL blues」に掲載されているデータです。米国だけではなく、欧州や日本においてもCOBOLはまだ広く使われています。また、IPAの「ソフトウェア開発分析データ集2022」によると、システム開発の現場で使われている言語として、1位のJava(42.4%)に次ぎCOBOLは2位(16.3%)でした。
事務処理計算に最適な言語
COBOLは、「Common Business Oriented Language」の略で、1959年に事務処理計算用に誕生したプログラミング言語です。その言語仕様は国際規格で標準化されており、ISOが2023年1月に新しい規格である ISO/IEC 1989:2023 を公開しています。
プログラム例を見てみましょう
シンプルなプログラム例を示します。下記はCOBOLによる"HELLO WORLD"のサンプルプログラムです。
英語のような自然言語で記載されているため、プログラムは長くなりがちですが、可読性が高いと言われています。
COBOLのユースケース
COBOLは、誕生当初より事務処理計算が得意な言語であり、多くの行政機関や金融機関、企業がメインフレームと呼ばれるコンピュータ上に膨大な量のCOBOLプログラムを作成してきました。例えば、給与計算、年金基金、銀行や保険会社のシステム、ホテルや交通機関の予約、工場の生産管理などです。複数のCOBOLが逐次実行される「バッチ処理」として結合され、「ジョブ」として実行されます。これが、昔から変わらないCOBOLの主要なユースケースです。
「ジョブ」を構成したCOBOLプログラムの実行イメージ
メインフレームだけではない
COBOLは、メインフレームで利用される印象が強い言語です。しかし、LinuxやWindowsなどが稼働するPCやサーバー機でも利用できます。これらで動作するCOBOL製品は、現代的な統合開発環境であるEclipseやVisual Studio Codeで開発できます。
Visual Studio Code でのCOBOL開発
脱COBOLブーム
COBOLが依然として極めて重要な役割を担っている一方で、近年ではメインフレームの製造終了やCOBOL技術者の減少といった理由から、『脱COBOL』という動きが活発です。
メディアでは企業の脱COBOLの事例が記事になることも多く、たくさんの企業が推進している印象があります。ここ最近では、次のような記事がありました。
- JAL、メインフレームのマイレージ関連システムをAWSに移行、COBOLをJavaにリライト(2025/5/23)
- JFEスチールが基幹システムを脱メインフレーム、5000万ステップをリライトで(2025/4/22)
- 北国銀行、基幹システム「脱COBOL」で 27年1月(2025/1/28)
しかし、完全な脱COBOLは簡単ではありません。数十年に一度の大規模刷新として、多額の予算や人材の確保、IT資産の整理などが必要です。それだけの予算や人手に見合うメリットがあるのかが議論され、先延ばしや断念をするケースも少なくありません。
1つの着地点としてCOBOLをJava言語に機械的に変換する「JaBOL」方式が採用されることもあります。この方式では、元のCOBOLロジックを維持したままJavaに置き換えることで、移行のリスクとコストを抑えます。一方でCOBOL風のJavaプログラムになるので、長期的な保守性に課題が残る次善策となります。ただし、「脱COBOL」という手段に追い立てられた末に不本意に選択されたJaBOLでは新たな技術的負債を生み、これを保守する現場の技術者の士気を下げることになりかねません。しかし、ビジネスへの適応というゴールを達成するために、長所と短所を理解した上で戦略的に選択されたJaBOLであれば、それは現場も納得できる合理的な選択肢となります。
このような現実的な制約があるため、多くの企業では、既存のCOBOLシステムの継続利用や、部分的なモダン化を選択するケースも少なくありません。COBOLが現在も使われ続けている背景には、完全な刷新を断念したり、JaBOLのような次善策を選んだりといった、経済的な制約に基づく判断が存在していることも多いのです。
ネガティブイメージの背景
『脱COBOL』の議論の背景には、COBOLそのものに対するネガティブなイメージも大きく影響しています。Open Mainframe Project COBOL Working Groupによると、COBOLのネガティブイメージとして次の4点が挙げられています。この様な意見は日本だけではなく世界共通のようです。
- 難しい (Hard)
- 時代遅れ (Outdated)
- 消滅しつつある (Dead)
- キャリアとして魅力がない (A bad career choice)
言われ放題なこのイメージはどこから来るのでしょうか。
COBOLは難しい?
COBOLで構築したシステムは、歴史が長く大規模であることから、増改築で複雑化していることが多くあります。本来、COBOLは平易な英語の単語や語句を使う理解しやすい言語です。COBOL自身が難しいというよりは、システムの維持管理の問題であることが多いでしょう。同じことはCOBOL以外の言語でも起こっており、COBOLに限ったことではありません。
COBOLは時代遅れ?
COBOLは止まってはいけない社会基盤や企業の基幹システムで使われています。安全、安心が求められるシステムでは、安定した技術が使われており、新しい技術や実績の少ない技術は適用し難いものです。
一方で、現在のCOBOL言語は、各ベンダーが最新技術を取り込んでいます。個々の技術の説明は省きますが、XMLやJSONが扱え、REST APIを呼んだり、Javaや.NETと相互連携したりすることもできます。コンテナやクラウドで動作し、CI/CDを構築するなど、モダンなIT基盤で動いている事例も多くあります。
COBOL自身の機能不足が理由で「時代遅れ」となっているのではなく、利用されるシステムの性質によるものであり、これも同じことはCOBOL以外の言語でも起こります。
これからのCOBOLとの関わり方
COBOL言語は進化を続けていますが、利用されるシステムの性質によっては『時代遅れ』と見られがちであることがご理解いただけたかと思います。それでは、21世紀の現代に私たちはCOBOLとどのように関わっていくことになるのでしょうか。
新しいシステムをCOBOLで構築するか?
ここまで、COBOLの肯定面を多めに書いてきました。では、これからもCOBOLで新しいシステムを作成するべきでしょうか。
これは、どちらかと言えば「いいえ」です。そのシステムの処理内容やワークロード、対応する技術者のスキルセットがCOBOL向きだというのであれば、COBOLが良いのかもしれません。しかし、現在多くの企業が直面している課題を考えると、新しくCOBOLで大規模なシステムを構築することは現実的ではありません。かつてはCOBOLが最適と言われた処理にも、その後に登場した現代的なプログラミング言語やツール(ローコードやデータ処理ツールであるETLなど)で対応できますし、最新の言語のライブラリやフレームワークの方が開発や保守がしやすい場合もあります。例えば、大きなバッチジョブで作成していた複数の帳票群が、単一のSQL文(データベースを検索・操作する標準言語)で作成できるということもあります。また、ベンダーのCOBOL製品を新しく調達する場合、他の言語やツールよりも高額になることも多くあります。
COBOLは使われ続け、新規格や新技術にも対応していく
しかしながらCOBOLは使われ続けます。元々COBOLで構築されていたためです。脱COBOLに経済的合理性がなければ、COBOLの既存システムを引き続き保守していくことになります。
COBOL製品を提供するベンダーやオープンソースのコミュニティは、今後も新しい規格や最新技術の取り込みを続けます。塩漬けにするにしても、業務に合わせて最新化を続けるにしても、COBOLの既存システムが最新のプラットフォームで実行可能になります。私の顧客には、Visual Studio CodeでCOBOL開発を行い、GitHub(プログラムを管理する代表的なクラウドサービス)に格納し、GitHub Actions(手順を自動化する機能)でCOBOLコンテナを動かしてCI(継続的インテグレーション)を実施している企業もあります。新しく作ることはないものの、既存のCOBOLを最新環境に乗せることができます。データの利活用や各システムとの相互連携が重要である現在、COBOLとそれ以外のシステムが同じ基盤で稼働できることには多くのメリットがあります。
COBOL技術者問題はどうなる?AIをうまく活用する時代へ
COBOLシステムが存在する限り、その業務処理の修正や読んで理解するスキルのニーズは続きます。しかしながら、COBOL専任の技術者は減りつつあります。
近年では、オープンソースのCOBOLやオンラインの学習教材があり、習得の敷居はだいぶ下がりました。複数の言語スキルの1つとしてCOBOLができる技術者を見かけることも多くあります。COBOLのスキルセットは専任から兼任に変わりつつあります。
また、次の事例の様に、最近はCOBOLの保守にもAIを活用する時代になりつつあります。
今後も既存のCOBOLシステムの保守は続きます。最新技術や最新環境ともうまく組み合わせ、複数の言語スキルがある技術者がAIの力を借りて効率的に対応し、適材適所で保守・運用を続けていくことになるのだと考えます。
最後に
レガシーの象徴とされるプログラミング言語「COBOL」は、60年以上にわたり、行政、金融、企業の中核システムを支え続けており、私たちの日常生活に深く関わってきました。今後もその役割や形を変えながら、社会基盤を支え続けると予測されます。
COBOLシステムの未来には、主に以下の3つの道筋が考えられます。
- 脱COBOL:コストやリスクを考慮し、足かせとなっているCOBOLを段階的に他の言語やシステムへ移行するモダン化の道筋です。これは、「ビジネスの変化に適応できる状態」を実現するための有効な手段の一つとして位置づけられます。
- 利用継続:COBOLシステム自体をモダン化した上で頻繁な変更にも対応できるようにし、引き続き中核的な役割を担い続けます。COBOLのままビジネスの変化に適応する道筋です。
- 塩漬け:安定稼働を優先し、大規模な改修を行わず、必要最低限の保守で使い続けます。ビジネス上の要求変化が少なく、現在のシステムが安定稼働しているため、多大な投資をしてまで刷新する必要がないと判断される場合に選択される道筋です。
どの道筋を選択するにしても、重要なのは、ビジネスの変化に迅速に対応できるシステムを構築することです。レガシーシステムのモダン化は、単なる技術的な刷新に留まらず、組織全体の競争力を高めるための戦略的な取り組みであるという視点が重要になります。
レガシーシステムのモダン化と、生き続ける『COBOL』のリアルについて考察しました。参考になれば幸いです。
関連リンク

長年レガシーマイグレーションに従事。COBOL資産のモダナイズや基幹系でのOSSの活用など、基幹系システムの刷新が得意。2023年8月より、COBOLコンソーシアム会長を務める。
concept『 学んで、知って、実践する 』
DX SQUAREは、デジタルトランスフォーメーションに取り組むみなさんのためのポータルサイトです。みなさんの「学びたい!」「知りたい!」「実践したい!」のために、さまざまな情報を発信しています。
DX SQUARE とは