CXO が開発者にアプリケーションをクラウドに移行できるかどうかを尋ねた場合、その質問に答える前に考慮すべき 6 つの要素は次のとおりです。
ここ数年で、アプリケーションのクラウド移行は、ごく少数の企業だけが正当化できる大きなリスクから、アプリケーションのセルフホスティングに代わる賢明な代替手段へと変化しました。ここでは、アプリケーションをクラウドに移行できる、あるいは移行すべきかどうかを判断するために考慮すべき点をいくつかご紹介します。おそらく、これらのうち1つか2つだけが障害となっているでしょう。それらの点を再設計すれば良いでしょう。
ネットワークのニーズ
アプリケーションが社内ネットワーク内のシステムに対して高帯域幅または極めて低遅延の接続を必要とする場合、他のシステムも同じエリアに移行できない限り、クラウドへの移行は適切とは言えません。一方、優れたクラウドプロバイダーであれば、社内ユーザーでない場合は、高帯域幅かつ低遅延の配信を提供できる可能性が高くなります。このようなネットワークの維持管理は面倒な作業であり、外部に任せれば安心できるかもしれません。データ転送をアプリケーションと画面の間ではなく、アプリケーション内で完結できるほど、そのアプリケーションはクラウドに適したものになります。
公開可能
アプリケーションが組織外のユーザーによって使用される場合、クラウドに移行すると2つの大きなメリットがあります。1つ目は、ネットワークニーズが社内ネットワークから切り離されることです。2つ目は、社内ネットワークとアプリケーションが完全に分離されることです。多くのIT部門は既にこの方法を採用していますが、実際には(多くの場合、正当な理由があって)採用していないIT部門も見受けられます。これはセキュリティリスクを招きます。
スケーリングのニーズ
拡張性、あるいは拡張性が必要になる可能性のあるアプリケーションは、クラウドに最適です。クラウドの優れた点の一つは、オンデマンドでリソースを提供できることです。先進的なプロバイダーは、ピーク時に追加のキャパシティをスケジュールしたり、高負荷を検知して追加のリソースをオンラインにしたりする機能を備えています。
建築
すべてのアプリケーションがクラウド内のサーバーにデプロイして実行できるわけではありません。例えば、クラウドでは利用できない、あるいはクラウド上に配置できない他のシステムに依存するアプリケーションもあります。アプリケーションが標準的なコモディティテクノロジー(OSはWindowsまたは一般的なLinuxディストリビューション、データはMySQL、Microsoft SQL Server、Mongo DB、アプリケーション言語はASP.NET、PHP、Java、Ruby on Railsなど)のみに依存している場合、クラウドへの移行は最適な選択肢となります。
ストレージ
様々なシステム管理者の仕事を経験する中で、私が最も嫌だったことの一つがストレージでした。「この大量のデータをどこに保存すればいいんだ?」という問題だけでなく、それよりももっとイライラさせられたのがバックアップでした。さらに悪いことに、システムが遅くなることがあり、その原因はI/O速度にありました。しかし、これらの問題を解決するのは、決して簡単でも安価でもありません。ストレージを大量に必要とするアプリケーションこそ、クラウドに送るのが最適なのです。
ビジネスモデル
クラウドプロバイダーは、ほぼ例外なく、ストレージ、オンラインサーバーの台数、帯域幅など、使用するリソースに基づいて料金を請求します。さらに、リソースの性能に応じた追加料金(例えば、仮想マシンあたりのRAMが多いほど料金が高くなります)も請求します。ビジネスモデルがクラウドコストに見合った方法でユーザーから収益を得ることができない場合、利益率が非常に高く、ヘビーユーザー以外は利益を生み、ヘビーユーザーをほとんど使わないようにしない限り、すぐに破綻するでしょう。クラウドリソースを月単位で支払っている場合、永久ライセンスのようなサービスは致命的です。
J.Ja
追加のクラウドリソース
このトピックの詳細については、ZDNet と TechRepublic の特集記事「クラウド: SaaS を正しく行う方法」と、ダウンロード可能な「SaaS とクラウドのベスト プラクティスに関するエグゼクティブ ガイド」をご覧ください。
毎週火曜日に配信される TechRepublic の無料ソフトウェア エンジニア ニュースレターにサインアップして、エンジニアリング スキルを最新の状態に保ってください。

ジャスティン・ジェームズ
私は万能なIT人間です。IT業界で一般的な職種があれば、おそらく一度ならず、何度も経験したことがあるでしょう。プログラマー、システム管理者、データベース管理者、PC技術者/修理担当者、ヘルプデスク、ウェブマスター、ウェブデザイナー、ウェブ開発者、アプリケーション開発者、ネットワークエンジニア。どういうわけか、どれもこれも、私の中ではたらきかけているんです!