IBM クラウド・ビジョン

先進技術を活用したクラウド・アプリケーション開発のアプローチ「モダナイゼーション」と「クラウドネイティブ開発」の勘所

記事をシェアする:

これまで利用してきたアプリケーションを最新のクラウド技術で再構築(モダナイゼーション)する際には、企業全体のビジネス戦略やIT戦略を確認したうえで、それらの戦略と整合性が取れた方針を立てることが大切です。また、クラウドネイティブ開発においてやみくもに最新技術を追い求めても、効果を生まない場合があります。今回は、モダナイゼーションの戦略/構想策定で必要となるステップと具体的な方針および手法についてご紹介した後、クラウドネイティブ開発の特徴、取り組みに際して特に留意していただきたいポイントを解説します。

渡海 浩一

渡海 浩一
日本アイ・ビー・エム
マイグレーション/モダナイゼーション戦略・サービス
アソシエイト・パートナー
マイグレーション/モダナイゼーションの戦略/計画立案とデリバリーサービスを提供する組織を担当。業界/業種を問わず、数多くのお客様へクラウドを活用したITコンサルティング支援、モダナイゼーションの実行プロジェクトを実施してきた。デジタル変革実現のためのモダナイゼーションをテーマにしてセミナーでの講演多数。

 

前田 幸一郎

前田 幸一郎
日本アイ・ビー・エム
クラウドアプリケーション開発
アソシエイト・パートナー
クラウド・アプリケーション開発にかかわるコンサルティングやデリバリーを行う組織を担当。流通/製造業を中心に、大規模なクラウド・ソリューションのアーキテクチャー策定とデリバリーの実施、クラウドネイティブ開発におけるコンサルティングなどを手掛ける。年間50件以上のクラウド案件の提案活動に携わり、成功に導いてきた経験と実績を持つ。

 

5つのステップで進めるモダナイゼーション

既存システムをそのままクラウドに移行するリフト(マイグレーション)に対して、シフト(モダナイゼーション)では既存システムをクラウドの最新技術によって最適化し、再構築します。企業が多くの既存資産を抱えていることを踏まえると、モダナイゼーションはクラウドの本格的な活用を進めるうえで中心的な取り組みだと言えます。

一般に、モダナイゼーションは以下に説明する5つのステップで進めます。

  • ステップ1:企業として策定しているビジネス戦略/施策計画、全社IT戦略、クラウド化戦略をステークホルダー間で共有して整理する
  • ステップ2:自社のIT資産の状況を把握するために現状分析を行う。自社のシステム環境を正確に把握していない企業が多いため、この調査はしっかりと行う
  • ステップ3:モダナイゼーションの方針と具体的なパターンを決定する
  • ステップ4:自社システム環境のあるべき姿としてTo Beアーキテクチャーを策定する
  • ステップ5:To Beアーキテクチャーの実現に向けた移行ロードマップと移行計画を策定する

モダナイゼーションの実行ステップ(戦略/計画フェーズ)

 

これらのステップを経て移行ロードマップを策定した後、個々のシステムのモダナイゼーションの実行フェーズに移ります。

IBMは、さまざまな業界のお客様をご支援する中で蓄積したベスト・プラクティスを基に、各業界のシステムのあるべき姿を定めた参照アーキテクチャーを提供しています。これは、お客様が上記のステップ4でTo Beアーキテクチャーを検討する際にご活用いただけます。

また、AIやIoT、マイクロサービスなどの活用に関するベスト・プラクティスをまとめたソリューション別アーキテクチャーも用意しており、先進技術を効果的に利用するためにご活用いただけます。

さまざまな業界/ソリューション向けのアーキテクチャーを提供

 

モダナイゼーションの方針策定の考え方

モダナイゼーションの5つのステップのうち、特に重要なのはモダナイゼーションの方針と適用するパターンを決めるステップ3です。このステップでは、まずモダナイゼーションの方針を決め、次にそれをどのパターンで行うかを検討します。モダナイゼーションに適用可能なパターンには、下図の中央に挙げたようなものがあります。

ステップ3:モダナイゼーションの適用パターン

この図では、左側に記した現行システム(As Is)の課題を、中央のパターンを適用して解消し、To Beを目指すことを表しています。多くの企業がオンプレミスと複数ベンダーのパブリック・クラウドを組み合わせて利用している今日、To Beはハイブリッド・マルチクラウドの世界となり、開発/運用スタイルはアプリケーションを継続的に改善し続けるDevOpsが標準となります。

例えば、メインフレームで稼働する基幹システムのモダナイゼーションは、ともすれば非常に大掛かりなプロジェクトになりますが、IBMのデータ連携ツール「IBM z/OS Connect」を使うことで、基幹システムの機能をAPI化して公開し、外部のモバイル・アプリなどで活用することが可能となります。

UXモダナイゼーションもIBMが得意とする領域です。IBMはUXやUIのデザイナーを多数抱えており、お客様のさまざまなプロジェクトにおける顧客志向のUX/UIデザインをご支援しています。

また、IBMは“ハイブリッド・マルチクラウド”を推進しており、IBM CloudやRed Hatだけでなく、各社のクラウドに精通したエキスパートが多数在籍しています。お客様がどのクラウド・ベンダーを利用される場合でも、オープンでベンダー非依存な技術を駆使してお客様のアプリケーション開発をご支援します。

OpenShiftで実現する「ハイブリッド・マルチクラウド」

そのほか、IBMはエンタープライズ領域で培ったノウハウと知見、大規模プロジェクトの豊富なマネジメント経験を生かし、お客様のモダナイゼーションをご支援する各種サービスを包括的にご提供しています。

クラウドネイティブ開発の技術的な特徴と目指す世界

クラウドネイティブ開発の特徴の1つは、「開発」「機能改修」「リリース」などの面で、とにかく“スピード”を重視する点です。そのスピードを支えているのが、近年の「コンテナ技術の進歩」や「アジャイル開発の浸透と進化」、「継続的インテグレーション(CI)および継続的デリバリー(CD)の普及とツールの拡充」といった要因です。

また、経済産業省が2018年に公開した『DXレポート』では、「技術を正しく取り込んでいかなければ、それがやがて企業活動の足かせとなる“技術的負債”になってしまう」と指摘しています。これを避けるには、常に新技術を正しく活用しながら負債にならない柔軟性の高いアプリケーションを迅速に開発し、ビジネスのスピードを高めていかなければなりません。クラウドネイティブ開発とは、まさにそれを目指すものにほかなりません。

クラウドネイティブ開発を技術的なポイントに着目して図示すると、下図のようになります。

クラウドネイティブ開発の技術的ポイント

この図でポイントとなるのは、1〜4の番号を振った赤字部分です。クラウドネイティブなアプリケーションでは、コンテナ化された環境でフロントエンド側はシングルページのアプリケーション(SPA)を、バックエンド側は業務やトランザクションなどを考慮して細かな粒度に分割されたマイクロサービスの単位でアプリケーションを稼働させます。開発作業はツールをフルに活用して自動化し、アジャイルの手法により短いサイクルでアプリケーションを更新していきます。

クラウドネイティブ開発で目指す世界を、従来型のアプリケーション開発と比較するために先ほどの1〜4の番号と対応させて「ITインフラ」「アプリケーション・アーキテクチャー」「開発方法論」「ツール」の4軸で比較すると、下図のようにまとめられます。

クラウドネイティブ化で目指すレベル

従来型のアプリケーションは、物理サーバーやVMwareの仮想マシンなどの上にモノリシック(一枚岩型)なアーキテクチャーで作られ、稼働環境に強く依存していることから可搬性は高くありません。開発スタイルはウォーターフォール型が主流であり、比較的長い期間をかけて要求された機能を一括して完成させるのが一般的です。開発や運用にはさまざまなツールを使用しますが、それらは個々に独立しており、現場で工夫しながらツール間で途中成果物の受け渡しを行います。

これに対して、クラウドネイティブなアプリケーションはコンテナ上で実行します。それによる可搬性の高さが特徴の1つであり、コンテナに対応した各社のクラウドやオンプレミスの環境で修正することなく動作させられます。マイクロサービスを多数組み合わせたアプリケーション・アーキテクチャーを取り入れ、アジャイル/DevOpsの手法でスピーディーに開発/更新していきます。そして、開発や運用の中ではさまざまなCI/CDツールを連携させて作業を自動化するといった具合です。

なお、クラウドネイティブ開発が従来のアプリケーション開発と比べて場当たり的かと言うと決してそうではなく、企業全体としてのクラウドネイティブに対応したシステム全体像(To Beアーキテクチャー)を定義した上で、その枠組みの中で作っていくのが一般的です。

 

マイクロサービス化やアジャイルでは事業部門も含めた組織的な対応が不可欠

クラウドネイティブ開発では、多くのお客様がアプリケーションをマイクロサービス・アーキテクチャーにすることを検討されます。ただし、マイクロサービス化は最終目的ではなく、「それによって何ができるようになるのか、ビジネス上の成果は何か」ということが非常に重要です。

典型的な例として挙げられるのが、「マイクロサービス化に合わせて新機能を2週間に一度リリースする開発体制を整えたが、事業部門はそれほど頻繁に要件を出してくれず、受け入れテストもやる余裕がないため、せっかくの仕組みがうまく回らない」というケースです。単にアーキテクチャーや開発体制を変えるだけでなく、事業部門も含めた組織全体としてアジャイル開発に対応しなければ、求めるビジネス成果は得られないのです。

IBMは、クラウドネイティブ開発を支えるさまざまなソリューションをご提供しています。例えば、業界標準のコンテナ管理ツール「Red Hat OpenShift」をベースにしたアプリケーション開発環境「IBM Cloud Pak for Applications」を使うことで、クラウドネイティブなアプリケーションやDevOpsの開発環境を短期間で作り、アプリケーションを素早く更新していくことができます。

ハイブリッド・クラウドの実現を加速する IBM Cloud Paks

また、お客様のビジネス目標に応じたクラウドネイティブ開発の体制構築から個別の開発プロジェクトまで、高い技術力を有するエキスパートが一貫してご支援します。「クラウドネイティブ開発の経験はないが、DX推進の一環としてぜひ取り入れたい」といったご要望がございましたら、ぜひお気軽にご相談ください。


特集の続きを読む

 


関連情報

More IBM クラウド・ビジョン stories

IBM watsonx Code AssistantによるIT自動化の再構築

IBM Consulting, IBM Watson Blog, ITの最適化とスマートな運用管理...

今日のデジタル化された世界では、ビジネスリーダーやITリーダーは、業務効率を改善し、従業員の生産性を向上させ、最終的には業績を向上させるために、自動化に目を向けています。 IBMでは、開発者が生産性を向上させるまでの時間 ...続きを読む


COBOLプログラマー不足に取り組むIBMのコード・ライティングAI

Data Science and AI, IBM Cloud Blog, IBM Data and AI...

IBMの新しいモダナイゼーション・ソリューション、 watsonx Code Assistantにより、開発者は COBOL アプリケーションを IBM Z およびハイブリッド・クラウド向けに最適化された高品質の Jav ...続きを読む


生成AIでアプリケーション・モダナイゼーションとIT自動化を次の段階へ

Data Science and AI, IBM Consulting, IBM Data and AI...

多くの組織は、商品やサービスの市場展開を加速するために柔軟性、拡張性、収容能力を備えたハイブリッドクラウドを採用しています。ハイブリッドクラウドは、世界中の企業がさまざまなプロジェクトや分析のためにデータのセキュリティー ...続きを読む