見出し画像

クラウドネイティブ: ビジネス・DXの新しい基盤。そしてその先へ

 クラウドネイティブの記事です。

 デジタルネイティブという言葉があります。教育コンサルタントのMarc Prensky 氏が2001年に自著「Digital Natives, Digital Immigrants」の中で定義した言葉です。現代のデジタルテクノロジーの普及による情報処理能力の拡張に伴い、それらを前提として、むしろそれら新しいデジタルテクノロジーやサービスを最大限活用することを可能とする物事の考え方、進め方を体得した世代のことを指します。特にインターネット誕生後に生まれた世代は、情報処理の手法だけではなく、様々な価値観も、誕生前に生まれた世代と異にしていると言われることもあります。

 以前書いた以下の記事で、AIをツールとして考え、モジュール型アーキテクチャや、ビルディングブロックの発想でアプローチするとうまくいかず、新しい価値を引き出せる若い世代の活躍が必要だと述べました。AI ネイティブという世代です。

 また以下の記事で、このような世代の彼らが生きてきている現代は、技術が凄まじいスピードで発展し、新しいツールややり方が次々と生み出され、イノベーションがすべてをドライブし、常に変化し続けてきたという時代だと述べました。企業も先進のアプローチの整備に取り組まないことには、彼らのパフォーマンスを最大限に引き出せないかもしれません。

 それらもまた背景にしながら、企業は今、デジタルトランスフォーメーション(DX)を達成していくことが求められています。それを実現するための、先進のサービス展開、ビジネス展開を支えるアプローチとして、クラウドネイティブというキーワードが注目されています。

画像1

 上にも書きましたが現代というのは技術による変化が激しい時代です。そのような中、ビジネスをよりアジャイルなものにして、今の顧客をリテンションしつつ、新しい顧客も常に惹きつける。これらは企業にとっては非常に重要なテーマになりました。今日、ビジネスを継続していくためには、柔軟なITに支えられた事業展開が肝要です。若々しいスタートアップと同様のスピードでサービスを作り、大企業としての規模感で展開する、というような、まるで「蝶のように舞い、蜂のように刺す」かのような、ある種の相反する要素を体現した経営が求められたりします。

 ここで、出てくるキーワードが「クラウドネイティブ」です。ご存知の通り、クラウドはこれまで、企業におけるシステム開発のためのIT投資や人件費の増大を回避し、オンデマンドかつ制約のないコンピューティングリソースで代替することで、事実上すべての産業におけるITのありようを再定義してきました。ITコストの低減は参入障壁が低くなることを意味し、顧客に新しい価値をいかに迅速にもたらすかが、生き残りと繁栄の鍵を握っています。
 近年、各種AI 技術やブロックチェーン等の技術の進化が著しく、それらはクラウド上で安価なテクノロジーとして提供され、多くの企業はそれらと自社のサービスをシームレスにつなぎ、イノベーションを実現しています。「クラウドネイティブ」とは、このような現代におけるテクノロジーのありようを最大限に活用して、デジタル時代における競争力を生み出すための基盤となります。

 さて、そもそも「クラウドネイティブ」とは何か、に関して、CNCF(Cloud Native Computing Foundation)の定義が以下URLにあります。

 この定義では、クラウドネイティブの技術にフォーカスされていますが、昨今の議論においては、技術やその構造たるアーキテクチャだけにフォーカスされているわけではなく、広がりを見せています。例えば、システム開発、サービス開発においてどのように複数のチームが一緒にコラボレーションをしていくかという問いに対する答えも求められています。DevOpsの実現も含まれます。私自身も今現在、クラウドネイティブの実践には、以下の5つのポイントがあると考えています。それは、マイクロサービス・アーキテクチャ、コンテナ、継続的デリバリー、DevOps カルチャー、そしてそれらを統合するプラットフォームです。

画像2

 マイクロサービス・アーキテクチャは、(アジャイル開発がウォーターフォール型開発に対するアンチテーゼとしてそのマニフェストが宣言されたように、)従来のモノリス型アプリケーション開発に対するアンチテーゼです。それは、機能の拡張性とスケーラビリティの高いアプリケーション開発の基礎であり、組織の観点で見るとシナジーの基盤でもあります。
マイクロサービスのアプローチでは、小さなサービスの集まりとしてアプリケーションを開発します。各サービスはビジネス機能を実装し、必要なプロセスに従って呼び出され、マイクロサービス間もAPIを介して通信し、疎結合されます。必然的に分散アプリケーションの構成になり、負荷に対して強い運用となります。
 新しい開発者やチームも、(理想的には)マイクロサービスとそれがハンドルするデータベースにフォーカスをするだけでよく、全体そのものを知らなければならないということはありません。他のサービスに依存せずにデプロイ、更新、規模の変更、再起動が可能であるため、稼働中のアップデートも通常のオペレーションになります。それぞれの独立したチームがそれぞれの開発に集中し、機能の拡充もスケールさせることもとても容易になり、システム全体はよりよいものへと導くことができます。

 Dockerに代表されるコンテナは、仮想化という試みのある種の到達点です。OSの上に提供されたコンテナは、固有の書き込み可能ファイルシステムとリソースクオータを持ち、ユーザーがアプリケーションを実行するための、ひと揃いのリソースが提供される空間です。従来の仮想サーバは1つのOSの上に1つのユーザー空間が提供されるのみですが、コンテナを用いたアプローチの場合、1つのOSの上で仮想的なユーザー空間であるコンテナを複数提供できます。このアプローチではコンテナが切り出されて利用可能になるまでの待ち時間は秒単位です。つまり、個々のマイクロサービスのデプロイにとって理想的なコンピューティング手段と言えます。

 継続的デリバリー(CD)は、明確に自動化されたベルトコンベアのようなものです。開発者はコンテナの特性を活かしながら、継続的デリバリーにより迅速に機能を本番環境へと配置することができるようになります。
 継続的デリバリーでは、準備ができ次第リリースをします。他の変更が生じてから1つのリリースにまとめたり、次のメンテナンス期間といったイベントを待つということはなくなります。低リスクでクイックかつ頻繁にデリバリを行えるようになることで、より積極的なサービス開発、プロダクト開発を進めることができるようになり、エンドユーザーからのフィードバックをより速く得て、常に顧客目線を意識した開発を続けることができるようになります。速さだけではなく、顧客への価値にフォーカスできるというところは大事な観点です。

 そして、DevOps カルチャーは、開発チームと運用チームを共に顧客目線で協力し合って働くことを可能にさせます。これにより、ソフトウェアの構築、テスト、リリースが効率的なサイクルで、かつ確実に行われる文化と環境が作られ、維持されます。

 企業がこれらのポイントを実践し、更にそれを統合したプラットフォームを持つことで、クラウドネイティブの俊敏さ、柔軟性と拡張性、そして顧客と常に向き合う対話型のサービス展開、ビジネス展開を行っていくことに近づけます。これらは現代の複雑なニーズや社会の問題により真摯に対応していくための勇気を与えてくれることでしょう。多くの企業を悩ましている組織防衛的、保守的、現状維持的な企業文化から脱するきっかけを見いだせるかもしれません。

■その先へ

 そして、まだ続きがあります。この先が見え始めています。
 この統合されたプラットフォームをバックエンドに基盤としてもつことではじめて、企業はデジタル時代、AI時代において出現しつつある新しいビジネスモデルを、戦略をとることが可能となります。成功しているスタートアップのいくつかはそれを体現し、まるで当たり前のように実践しています。それはデジタルネイティブ、AIネイティブがクラウドネイティブの基礎の上で活躍しているからこそ、かもしれません。そのビジネスモデルは、時々AI Agency モデルという名前で呼ばれることがありますが、現在はまだ一般に使われる名前がありません。私は、Exploration & Exploitation モデル(「探索と活用」モデル)と名付けています。これは、進化し続け、その影響力を増し続ける AI に対してどう人間がリーダーシップをとっていくかということに対する答えでもあります。
 それに関する記事は、近いうちに書きたいと思います。

おまけ

以下に、Exploration & Exploitation モデル(「探索と活用」モデル)の解説記事を書きました。こちらも御覧ください。


この記事が気に入ったらサポートをしてみませんか?