COBOLからの移行は失敗しやすい?|失敗例や成功のポイントを解説
※当サイトは人材関連サービスを展開する株式会社エイジレスが運営しています。本ページは自社および提携先のPRを含む場合があります。
しーそー
「COBOLからの移行が多いのはなぜか」「COBOLからの移行のポイントは何か」
既存のCOBOLシステムを保守するには、コストがかかったりリスクがともなったりします。
この記事では、COBOL移行時の失敗例や移行を成功させるポイントについて解説しています。
COBOL移行時の注意点を理解することができるはずです!
- 【この記事を読んでわかること】
- 既存のCOBOLシステムの保守が困難になってきたため、他技術への移行が進んでいる
- 現行システムの全貌を把握できず、COBOLからの移行に失敗するケースが多い
- COBOLからの移行を成功させるためには、事前調査や段階的な移行が重要である
おすすめの転職エージェント
転職エージェントは大手1社と、特化型1~2社の活用がおすすめです!
- 大手:業界や職種にこだわらず自分に合った転職先を幅広く探る
- 特化型:希望する業界や職種への転職を専門的にサポートしてもらう
さまざまな転職エージェントがありますが、結論として以下から選んでおくと、希望に沿った求人を逃すリスクを軽減できるでしょう。
大手転職エージェント
≫リクルートエージェント
支援実績No1の総合型。年代や職種を問わずまず登録しておくべきエージェントです。
【公式】https://www.r-agent.com/
特化型エージェント
≫社内SE転職ナビ
社内SE特化。業界最大級の社内SE求人数を保有しています。
社内SEはホワイトな求人も多いためおすすめです。
【公式】https://se-navi.jp/
≫ウズカレIT
IT未経験からの転職に特化。就職/転職支援のみならずIT学習のサポートを無料で受けられます。
【公式】https://uzuz-college.jp/
≫エイジレスエージェント
年齢不問求人/ハイクラス転職に特化。SIer・コンサル・大手SESなどの求人を多数保有しています。
約80%が平均年収150万円アップの実績あり。
【公式】https://agent.ageless.co.jp
COBOLの特徴や現状
しーそー
COBOLは、「Common Business Oriented Language」の頭文字をとったもので、60年以上前から利用されているプログラミング言語です。
1959年に事務処理を目的に開発されてから長い間利用されている言語であり、金融業界を中心に航空会社の座席予約システム、大企業や政府機関の基幹業務等で利用されています。
COBOLの特徴は高い計算処理能力を持っていることで、事務処理を得意としています。COBOLは2進化10進数を使用するため、小数点の処理も誤差なく実行可能です。
近年では新規開発に利用されることはほとんどなく、汎用性の高いプログラミング言語の代替が進んでいます。COBOLと言えば、レガシーシステムの代名詞的な扱いになっているのが現状です。
ここまではCOBOLの概要や特徴について紹介してきました。次の章では、COBOLの移行が必要とされる理由について解説していきます。
COBOLの移行が必要とされる3つの理由
しーそー
COBOLは60年以上使われているプログラミング言語ですが、別のプログラミング言語への移行する動きが加速しています。
COBOLのようなレガシーシステムから、モダンな言語やプラットフォームへの移行は、マイグレーションやモダナイゼーションとも言われています。
マイグレーションが加速しているおもな理由が以下の4つです。
- COBOLエンジニアの高齢化による技術者不足
- 新規開発案件の減少
- レガシーシステムの維持・保守コストの増加
- 汎用機のハードウェアやOSの生産やサポート終了への対応
それぞれについて解説していきます。
COBOLエンジニアの高齢化による技術者不足
近年ではCOBOLのほかに汎用性の高い言語が登場しており、COBOLの需要が減っています。そのため、新しくCOBOLを学習しようというエンジニアが減少しているのが現状です。
また、COBOLは1959年から利用されている言語ですが、COBOLの利用が進んでいた全盛期に活躍していたCOBOLエンジニアの高齢化も懸念されています。
今後COBOLエンジニアの需要が拡大する見込みがなく、COBOLエンジニアも不足しているという背景からマイグレーションが進んでいます。
新規開発案件の減少
近年では、COBOLを利用した新規の開発案件が減少しているため、移行の必要性が高まっています。
COBOLのようなレガシーシステムから、PythonやJava等の言語への移行が進んでおり、COBOLを使っての新規開発案件はほとんどありません。
過去にCOBOLを使って構築したシステムの保守案件は一定ありますが、その保守案件すら減ってきているというのが現状です。
レガシーシステムの維持・保守コストの増加
COBOLOからの移行が必要とされる理由として、COBOLのようなレガシーシステムの維持・保守にかかるコストの増加も挙げられます。
DXの推進が加速している中で、約7割の企業がレガシーシステムが、DX推進の足かせになっているというデータも出ているほどです。
レガシーシステムを抱えることには、運用や保守が属人的になりがちなので、業務の継続性を担保できないリスクが潜んでいます。
また、IT人材の不足を嘆く企業が多い中で、貴重なIT人材のリソースをレガシーシステムの運用・保守に浪費してしまうリスクもあり、レガシーシステムからの脱却が進んでいます。
汎用機のハードウェアやOSの生産やサポート終了への対応
汎用機のハードウェアやOSの生産やサポートの終了にともない、レガシーシステムから移行しなくてはならない企業が増えています。
大手の富士通が2022年に大型汎用コンピューターの生産終了を発表するなど、レガシーシステムの刷新が求められている状況です。
経済産業省が発表したDXレポートによると、レガシーシステムの残存による経済損失は、2025年以降で年間最大12兆円にのぼる可能性があると発表されています。
ここまではCOBOLの移行が必要とされる理由を紹介してきました。次の章では、COBOL移行の代表的な3つのアプローチについて解説していきます。
COBOL移行の代表的な3つのアプローチ
しーそー
COBOL移行時のアプローチには、代表的な3つのアプローチがあります。
- リホスト
- リライト
- リビルド
それぞれについて解説していきます。
リホスト:COBOLのままプラットフォームを変更
リホストは情報システムを更新する方法の一つで、アプリケーションやデータには手を加えずに移行する方法です。
機器の刷新のためにハードウェアを順次入れ替えたり、部分的に置き換えたりします。COBOLのようなレガシーシステムを長い間利用すると、膨大な量のデータが蓄積されていて一気に移行することが難しいですが、リホストであれば段階的に移行を進められるというメリットがあります。
一方、レガシーシステムのソフトウェアの仕様自体は変わらないため、最新のテクノロジーへの対応が難しい場合もあります。
リライト:別のプログラミング言語に変換
リライトは古い言語で書かれたプログラムを新しい言語に変換することで移行する手法です。既存システムの仕様は変更せずに、アプリケーションを書き換えるだけで利用できるため、コストを抑えて移行できるというメリットがあります。
移行には自動で言語を変換するマイグレーションツールを利用することで、COBOLからJava等へ移行していきます。
コーディングや設計の分析に高い技術力が必要になるため、ハードルが高い手法と言えるでしょう。
リビルド:機能改善も含めてシステムを再構築
リビルドは既存のシステムを廃止し、新しいシステムを再構築する手法です。
基本的にはプログラムを一から作り直す手法ですが、現行システムの仕様をベースにしたり、データのみ移行したりするケースもあります。要件定義から開発を進めるため、カスタマイズ性の高さが特徴です。
一方、リビルドする場合は期間・コストとも大規模になることが多いというデメリットがあります。
ここまでは、COBOL移行の代表的な3つのアプローチについて解説してきました。次の章では、COBOLの移行先にJavaが多い背景をみていきましょう。
COBOLからの移行先はJavaが多い
しーそー
COBOLからほかの言語へ移行する際にJavaがよく選ばれています。
Javaは汎用性が高いアプリケーションの1つであるため、Javaへのマイグレーションを進めることで、標準化されたJavaのフレームワーク運用が可能になります。
また、Javaはオープンソースであるため、自由に開発環境を構築できる点もメリットのひとつです。
全銀システムもCOBOLからJavaへの移行を発表
全国銀行データ通信システムも、COBOLからJavaへの移行を発表しており、レガシーシステムからオープン基盤への切り替えが加速しています。
日本の決済基盤である全銀システムは、政府から資金清算機関の免許を受けて運営されるシステムです。
日本全国の金融機関を網羅している大規模なネットワークであり、より付加価値の高い機能やサービスを提供するためにJavaへ移行するという背景もふまえると、他業界含めてレガシーシステムからオープン化に移行する動きは今後加速していくことが予想されます。
COBOLの移行プロジェクトが失敗する代表的な3つの要因
しーそー
COBOLの移行プロジェクトは、「現行踏襲」という合言葉のもとで実行されて、失敗することも多くあります。
よくある失敗の要因には下記のようなものが挙げられます。
- 現行システムの全貌を把握できている技術者がいない
- 発注者が現行システムの仕様調査まで含めて丸投げ
- コミュニケーション不足によるステークホルダー間の誤解や期待値のズレ
それぞれについて解説していきます。
現行システムの全貌を把握できている技術者がいない
COBOLの移行プロジェクトが失敗する要因として、現行システムの全体像を把握している技術者がいないというものです。
COBOLのようなレガシーシステムは長い間運用されてきたため、システムの回収を繰り返しおこなっています。
長年に渡る改修によって、設計されたプログラムの全体像を把握しているエンジニアがそもそもいないため、移行に失敗するケースがよくあります。
COBOLは60年以上利用されている歴史ある言語なので、数十年前にCOBOLを利用し始めた企業が多いでしょう。開発当初の仕様や設計についての情報が残っているケースも少なく、COBOL移行時の失敗につながってしまうことも多々あります。
発注者が現行システムの仕様調査まで含めて丸投げ
COBOLの移行プロジェクトが失敗する要因として、システム移行を依頼する発注者がプロジェクトを丸投げしてしまうことも挙げられます。
現行システムの仕様調査等は発注者しかできない作業です。しかし、こういった作業を受託者に丸投げしてしまうことで、システム移行時にセキュリティ要件を満たさなかったり、発注者の要望に合わないシステムを構築してしまったりするリスクがあります。
COBOLのようなレガシーシステムは、開発当時から年数が経っているため、仕様調査を受託者に依存してしまうと正確に調査することが難しいでしょう。
現行業務を知らない受託者が調査しても、データ移行時のセキュリティの安全性を担保することは難しく、そもそものテストデータ作成ができないといった問題が発生します。
コミュニケーション不足によるステークホルダー間の誤解や期待値のズレ
COBOLの移行プロジェクトが失敗する要因の3点目は、プロジェクト推進者の権限や関係者の責任範囲が不明確である点です。
京都市がシステムの刷新に失敗した要因にも挙げられています。
「現行システムを運用する部隊の責任者がリーダーになり、プロジェクトを推進すべき。さらにその支援者にはコンバージョン作業の経験豊富な人をアサインすべき」
出典:日経XTECH|京都市がシステム刷新失敗、「悲劇を繰り返すな」とご意見番
プロジェクトを推進する管理者が、システムの実態や内容を把握していない場合、関係者に的確な指示を出すことも難しく、プロジェクトを円滑に運営することが難しいでしょう。
ここまでは、COBOLの移行プロジェクトが失敗する代表的な3つの要因について紹介してきました。次の章では、COBOLの移行を成功させるためのポイントについて解説していきます。
COBOLの移行を成功させるための3つのポイント
しーそー
前章では、COBOLの移行プロジェクトにおける失敗要因を紹介しました。
失敗要因を踏まえると、移行プロジェクトを成功に導くためには以下のポイントが重要です。
- 十分な事前調査と計画
- 本番環境でリハーサルしておく
- 一気に全体を移行せずに段階的に移行してリスクを分散する
それぞれについて解説していきます。
十分な事前調査と計画
COBOLの移行プロジェクトを成功させるポイントの1つ目は、プロジェクトが走り始める前の段階で事前調査と計画の立案をしっかりおこなうことです。
現行システムがどのように構築されたのかや、改修を経てどのような仕様になっているかを事前に調査しておく必要があります。事前の調査が不十分だと、実際にプロジェクトが走り始めた後に手戻りが発生してしまいます。
また、事前調査が不十分で作業量の見積もりが甘くなってしまうと、プロジェクトの納期に間に合わず移行時間が大幅に増えてしまうリスクも否定できません。
COBOL移行プロジェクトにはトラブルがつきものです。工程毎に作業工数をしっかり見積もり、想定外のトラブルにも余裕を持って対応できるように計画を立てておきましょう。
本番環境でリハーサルしておく
COBOLの移行プロジェクトを成功させるポイントの2つ目は、移行本番前にリハーサルをしておき、移行当日の懸念点を洗い出しておくことです。
移行本番の環境と異なるテスト環境でリハーサルをしてしまうと、移行当日に想定外のトラブルが発生するリスクが高まってしまいます。本番と同じ環境でリハーサルをしておくことで、事前に問題点や不具合に対処できます。
また、移行当日の作業は極力減らしましょう。万が一トラブルが発生した際に対応できるようにリソースを確保しておくことで、余裕を持って対応することができます。
一気に全体を移行せずに段階的に移行してリスクを分散する
COBOLの移行プロジェクトを成功させるポイントの3つ目は、COBOLからの移行を一気に行うのではなく、段階的に移行していくことです。
現行システムから一気にシステム移行を図ると、システムトラブルが発生した際に稼働が一切できなくなるリスクや、プロジェクトが頓挫した際の機会損失が大きくなってしまうリスクがあります。
一方、段階的にシステムを移行することで、システムを停止する時間も短くなりトラブル発生時の影響範囲を狭めることが可能です。
移行するシステムが全停止すると業務が回らない場合や、移行するデータ量が多い場合は、段階的に移行することでリスク分散を図ると良いでしょう。
ここまでは、COBOLの移行を成功させるための3つのポイントを紹介してきました。次の章では、COBOL技術者の転職におすすめなエイジレスを紹介していきます。
COBOL技術者の転職やフリーランス案件探しはエイジレスへ
しーそー
既存のCOBOLシステムの維持や保守には、さまざまな課題がともなうため、他言語への移行の必要性が増しています。
COBOLからの移行プロジェクトは失敗しやすい傾向があるため、リスクを低減しながらプロジェクトを推進できる人材の需要は高いと言えるでしょう。
COBOLのスキルを活かして転職やフリーランス案件を探しているのであれば、エイジレスへの相談をおすすめします。
エイジレスは、エンジニアのキャリア支援を中心に事業展開しており、COBOL案件の取り扱いも数多くあります。
また、エイジレスでは年齢不問の求人のみ取り扱っているため、あなたのキャリアプランにマッチした求人を見つけることができるでしょう。
エイジレスが提供中の転職者向けの「エイジレスエージェント」とフリーランス向けの「エイジレスフリーランス」には、それぞれ以下の特徴があります。
エイジレスエージェントのおすすめポイント
- 大手企業様と信頼関係があるから高い面談/内定率
- 年収大幅アップでの内定実績多数
エイジレスフリーランスのおすすめポイント
- 高単価案件が豊富、上流商流の案件しか取り扱っていない
- 40代以上のベテランIT人材の大幅年収アップ事例多数
COBOL技術者としての転職を考えている方や、COBOLでの豊富な実績を活かせる案件をお探しの方は、ぜひご活用ください!
まとめ|COBOL移行にはさまざまなリスクが潜んでいる
しーそー
この記事を通して、COBOL移行時の課題感について以下のことがわかりました。
- 既存のCOBOLシステムの保守が困難になってきたため、他技術への移行が進んでいる
- 現行システムの全貌を把握できず、COBOLからの移行に失敗するケースが多い
- COBOLからの移行を成功させるためには、事前調査や段階的な移行が重要である
本記事で紹介したように、COBOLの移行にはさまざまなリスクが伴います。
COBOLからの移行を成功させるためには、よくある失敗要因や成功のポイントを理解しておくことが重要です。
COBOLからの移行ニーズは高まっているため、COBOLのスキルを活かしたい人は、COBOL案件も取り揃えているエイジレスにご相談下さい!