レガシー モダナイゼーションとは

多くの老舗企業では、中核となる事業運営が、実績はあるものの老朽化したソフトウェア システムによって支えられています。これらのレガシー アプリケーションは、かつては信頼性が高かったものの、急速に変化する現在のデジタル環境では、イノベーション、アジリティ、成長の大きな障壁となる可能性があります。

レガシー モダナイゼーションの定義

レガシー モダナイゼーションは、古くなったソフトウェア システム、アーキテクチャ、インフラストラクチャを更新または置き換えて、現在および将来のビジネス目標により適切に適合させるための戦略的プロセスです。

これは単に新しいテクノロジーを導入するだけでなく、基盤となるシステムをよりアジャイルで、スケーラブルで、安全で、費用対効果の高いものに変革することです。

レガシー モダナイゼーションについて

レガシー モダナイゼーションは、アプリケーションのモダナイゼーションの一種で、レガシー システムを新しい最新プラットフォームに移行するものです。これには、多くの場合、アプリケーション アーキテクチャ、インフラストラクチャ、機能の更新が伴います。この変革の主な推進要因は、企業が市場の新たな需要に適応し、ユーザー エクスペリエンスを向上させ、クラウド コンピューティング、データ分析、AI などの最新テクノロジーを活用する必要があることです。

レガシー モダナイゼーション ソフトウェア プロジェクトを実施するには、既存のアプリケーション ポートフォリオを包括的に評価して、モダナイゼーションの候補を特定する必要があります。そこから、組織はアプリケーションを最新のインフラストラクチャに移行するだけの戦略から、クラウドネイティブの原則に従って完全に再構築する戦略まで、さまざまな戦略の中から選択できます。目標は、重要なシステムを進化させ、ビジネスの長期的な戦略目標の達成を妨げるのではなく、サポートできるようにすることです。

レガシー システムをモダナイズする理由

レガシー システムを置き換えるか、レガシー アプリケーションをモダナイズすることを選択すると、新しいテクノロジーの導入だけに留まらない明白なビジネス上のメリットが得られます。

アジリティとイノベーションの向上

モダナイズされたアプリケーションは更新が容易なため、開発チームは新機能をより迅速にリリースし、変化する市場の状況に迅速に対応できます。このアジリティは、競争上の優位性につながります。

運用コストの削減

多くの場合、レガシー システムの維持には費用がかかり、専門的なスキルや旧式のハードウェアが必要になります。最新のクラウドベースのプラットフォームに移行すると、費用が資本的支出(CapEx)から運用支出(OpEx)に変わり、オーバーヘッドが削減されます。

セキュリティとコンプライアンスの強化

古いソフトウェアには、パッチが適用されていない脆弱性がある可能性があり、現在のコンプライアンス基準を満たしていないことがあります。レガシー ソフトウェアのモダナイゼーションは、堅牢で最新のセキュリティ管理を組み込み、規制要件を確実に遵守する機会となります。

スケーラビリティとパフォーマンスの向上

レガシー アプリケーションでは、最新のトラフィック負荷の処理が困難になることがよくあります。レガシー アプリケーションをクラウドに移行すると、需要に合わせて自動的にスケーリングできる弾力性のあるインフラストラクチャにアクセスできるようになり、信頼性の高いユーザー エクスペリエンスが確保されます。

最新テクノロジーへのアクセス

最新のプラットフォームでは、データ分析、ML、AI の高度なサービスにネイティブにアクセスできます。これにより、企業は古いシステムではアクセスできなかったデータから新しい分析情報や機能を引き出すことができます。

よくある質問

デジタル トランスフォーメーションは、デジタル テクノロジーを使用して組織の運営方法を変え、顧客に価値を提供するという、幅広いビジネス戦略です。レガシー モダナイゼーションは、デジタル トランスフォーメーションに不可欠な要素です。というのは、このような新しいビジネスモデルやプロセスをサポートするために必要な基盤となる技術システムを更新する必要があるからです。

レガシー アプリケーションの典型的な例として、1990 年代に構築され、オンプレミスのメインフレームで実行されている大規模なモノリシック顧客管理(CRM)システムがあります。COBOL などの古い言語で記述されている場合があり、更新が難しく、最新の販売およびマーケティング ツールに接続するために必要なウェブベースの API が不足している可能性があります。

レガシー モダナイゼーション プロジェクトを成功させるには、まず既存のアプリケーションを徹底的に評価して、ビジネス価値と技術的な健全性を判断します。この評価に基づいて、リホストから置き換えまで、各アプリケーションに最適なモダナイゼーション戦略を決定できます。

レガシー モダナイゼーションの主なアプローチ

レガシー システムのモダナイゼーションに万能なアプローチはありません。適切な戦略は、アプリケーション、ビジネス目標、予算、リスク許容度によってそれぞれ異なります。最も一般的なアプローチは、「モダナイゼーションの R」とも呼ばれます。

リホスト(リフト&シフト)

これは、アプリケーションのアーキテクチャに対する変更を最小限に抑えて、オンプレミス サーバーからクラウドの仮想マシンなどの最新のインフラストラクチャにアプリケーションを移行するプロセスです。これは、レガシー アプリケーションをクラウドに移行する最も迅速なアプローチですが、通常はクラウドネイティブのメリットが最も少なくなります。

再プラットフォーム化

「リフト&リシェイプ」とも呼ばれるこの戦略では、クラウド機能を活用するために、リホスト プロセス中にアプリケーションに対していくつかの小さな最適化を行います。たとえば、アプリケーションをクラウドに移行すると同時に、そのバックエンド データベースをマネージド データベース サービスに移行するといった処理を行います。

リファクタリング / 再設計

これは、クラウドネイティブのモデルにより適合するようにアプリケーションのコードとアーキテクチャを大幅に変更する、より徹底したアプローチです。多くの場合、このアプローチでは、大規模なモノリシック アプリケーションを、より小規模で独立したマイクロサービスのコレクションに分割します。

再作成中

既存のコードベースがリファクタリングに適していない場合もあります。再構築では、アプリケーションの元のスコープと仕様を維持しながら、アプリケーションを最初から書き直します。これにより、最新の開発言語、フレームワーク、アーキテクチャ パターンを使用できます。

置換中

この戦略では、レガシー アプリケーションを完全に廃止し、サードパーティのソリューション(通常は Software-as-a-Service(SaaS)アプリケーション)に置き換えます。ビジネスのニーズを満たす適切な市販の既製品が存在する場合は、これが一般的な選択肢です。

コンテナ化によるレガシー モダナイゼーション

コンテナ化は、従来のアプリのモダナイゼーションを加速する強力なテクノロジーとして登場しました。アプリケーションとその依存関係をコンテナにパッケージ化することで、軽量でポータブルな、一貫性のあるソフトウェア ユニットが作成されます。これは、さまざまなモダナイゼーション戦略においてメリットがあります。「リホスト」または「リプラットフォーム」プロジェクトの場合、以前のアプリケーションをコンテナ化することで、移行プロセスが簡素化され、また新しいクラウド環境でアプリケーションを確実に実行できるようになります。「リファクタリング」プロジェクトの場合、コンテナは、元のモノリスから切り出される新しいマイクロサービスに理想的なデプロイモデルです。

コンテナ化により、レガシー アプリケーションとその依存関係を、あらゆる環境で一貫して実行できる、標準化されたポータブル ユニットであるコンテナにパッケージ化できます。このアプローチでは、基盤となる以前のハードウェアやオペレーティング システムからアプリケーションを効果的に切り離し、最新のクラウド プラットフォームに直接橋渡しします。

レガシー アプリケーションをコンテナ化すると、Google Kubernetes Engine(GKE)Cloud Run などの Google Cloud のマネージド サービスに簡単にデプロイできる一貫したアーティファクトが作成されます。この最初のステップは、アプリケーションのソースコードをすぐに大規模に変更することなく実行できるため、レガシー アプリケーションを低リスクでクラウドに移行する方法となります。最新の環境で実行されると、アプリケーションを繰り返し改善し、マネージド クラウド サービスに接続して、時間をかけて徐々にリファクタリングできます。

Google Cloud でのコンテナ化によるレガシー モダナイゼーションのガイド

このプロセスでは、コンテナ化をコアテクノロジーとして使用し、モダナイゼーションの取り組みを管理可能な一連のステップに分解します。

ステップ 1: モダナイゼーションの候補を評価して選択する。

まず、レガシー アプリケーションのポートフォリオを分析します。コンテナ化の最初の候補として適しているのは、多くの場合、ステートレス アプリケーションや、外部依存関係が最小限で、よく理解されているサービスです。これにより、初期の複雑さが軽減され、チームはプロセスに対する経験と自信を深めることができます。

ステップ 2: コンテナ イメージを作成する。

次のステップでは、アプリケーションをコンテナとしてパッケージ化する方法を定義します。これを行うには、Dockerfile などの一連の指示を含むシンプルなテキスト ファイルを作成します。このファイルは、ベース オペレーティング システムを指定し、アプリケーションのソースコードをイメージにコピーし、必要なすべてのランタイム、ライブラリ、その他の依存関係をインストールするために必要なコマンドをリストします。

ステップ 3: イメージをビルドして Artifact Registry に保存する。

このファイルを使用して、コンテナ イメージをビルドします。これは、デベロッパーのローカルマシンで行うことも、より堅牢なワークフローにするために、Cloud Build などの CI / CD サービスを使用して自動化することもできます。その結果として得られるイメージ(静的なポータブル ファイル)は、Google Cloud の Artifact Registry などの安全な限定公開の Container Registry に push する必要があります。これは、アプリケーション イメージを保存および管理する一元的な場所として機能します。

ステップ 4: コンテナをマネージド プラットフォームにデプロイする。

コンテナ化されたレガシー アプリケーションが Artifact Registry に保存されたので、これを Google Cloud の最新のマネージド プラットフォームにデプロイできます。

  • より多くの構成制御が必要なアプリケーションや、より大きなシステムの一部であるアプリケーションには、Google Kubernetes Engine(GKE)が理想的なターゲットです
  • よりシンプルなステートレスのウェブ アプリケーションや API の場合、Cloud Run は、すべてのインフラストラクチャ管理を担う、完全にサーバーレスな環境を提供します。

ステップ 5: マネージド クラウド サービスに接続する。

アプリケーションが Google Cloud のコンテナで実行されるようになったら、依存関係を段階的にモダナイズできます。古いオンプレミス データベースに接続する代わりに、Cloud SQL などのマネージド サービスに接続するようにアプリケーションを構成できます。これにより、データベース管理の負担が軽減され、信頼性が向上します。

ステップ 6: モニタリング、最適化、イテレーション。

アプリケーションがクラウドで実行されるようになったので、Google Cloud のオペレーション スイート(Cloud MonitoringCloud Logging)を使用して、パフォーマンスに関する詳細な分析情報を取得できます。このデータは、ボトルネックを特定し、モダナイゼーションの次のフェーズを計画するのに役立ちます。次のフェーズでは、アプリケーションの特定の部分を個別のマイクロサービスにリファクタリングし、パフォーマンスとアジリティをさらに最適化するといった処理が考えられます。

Google Cloud でビジネスの課題を解決する

新規のお客様には、Google Cloud で使用できる無料クレジット $300 分を差し上げます。
解決したい問題は何ですか?
What you'll get:
手順ガイド
リファレンス アーキテクチャ
利用可能な事前構築済みソリューション
このサービスは Vertex AI を使用して構築されました。ご利用いただけるのは 18 歳以上のユーザーのみです。機密情報や個人情報は入力しないでください。

参考情報

  • この Google Cloud のブログ投稿では、段階的に価値を提供する方法に焦点を当てながら、レガシー アプリケーションをモダナイズするための無駄のない反復的なアプローチについて説明します。
  • Google Cloud Skills Boost の「アプリケーションのモダナイゼーション」コースでは、モダナイゼーション プロジェクトに関する実践的なスキルを身につけるのに役立つハンズオンラボと学習資料を提供しています。

次のステップ

$300 分の無料クレジットと 20 以上の Always Free プロダクトを活用して、Google Cloud で構築を開始しましょう。

  • Google Cloud プロダクト
  • 100 種類を超えるプロダクトをご用意しています。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。また、すべてのお客様に 25 以上のプロダクトを無料でご利用いただけます(毎月の使用量上限があります)。
Google Cloud