連載:.NET中心会議議事録

第2回 現場開発者視点で答える「Windows Azure業務アプリ開発の実際」

デジタルアドバンテージ 一色 政彦
2010/03/26

クラウドやWindows Azureを選択する理由

新野 いままではサーバを購入して、そのサーバ環境にシステムを構築していました。ではなぜ、Windows Azure/Amazon EC2/Google App Engine/Force.comなどのクラウドにシステムを構築する必要があるのでしょうか?

橋本 現在、業界的に大きな変革が起こりつつあると感じています。例えばシステムを運用するには、これまで自社でサーバを立ち上げるのが一般的でしたが、既存のサーバやサービスを利用するように変わってきています。

 また、弊社シグマコンサルティングの主要な顧客である中小企業では、既存のパッケージ・アプリやWebサービスを活用できる開発案件ももちろんありますが、業務によっては自家製で構築しているシステムが少なくないのが現実です。そういったシステムを、今後どのように運用していくのか、業務処理をどう拡張していくのかといった点を検討した場合、そのすべてをSI(システム・インテグレータ)に預けて面倒を見てもらいたいという要望が多く出ます。そういった場面では、クラウドの活用を提案しています。

市川 クラウドであれ、オンプレミスであれ、「情報システムは顧客のビジネスを成長させるために貢献しなければならない」という大命題があります。つまり、情報システムにより、いかに利益を増やせるかということです。利益を伸ばすための主要なポイントは、「売り上げを伸ばすか」「コストを減らすか」です。いまのクラウドは、この後者、つまりコストを低減させることに活用できる技術だと考えています。ですので、まずはコスト削減を突破口として、クラウドを顧客に勧めるというケースが多いです。

 もちろん今後は、クラウドが前者のビジネス成長にも大きく貢献できるようになると考えています。例えばビジネス・アプリのオンライン・マーケットであるPinpointなどの登場により、いままで自社のみで使用していたシステムを外販する環境が整います。 従っていままでコスト・センター(=直接的に利益を生み出さない組織)でしかなかったシステム(=IT)が逆に利益を生み出すということも可能になると思っています。

砂金 「クラウド」がバズ・ワードではない証拠は、マイクロソフトがこれだけ本気になっていることです。要するにマイクロソフトは、クラウドの先に広がっていくビジネス領域に可能性を見い出しているのです。

 しかし、マイクロソフトは「何が何でも、クラウドにしよう、Windows Azureにしよう」というスタンスではありません。マイクロソフトは社是として「Your Potential, Our Passion」というキャッチ・コピーを掲げています。これをWindows Azureに当てはめると、「皆さんの覚悟と、マイクロソフトの投資で、この状況を乗り越えましょう」というメッセージになるかもしれません。

 マイクロソフトは、将来を見据えたうえで「先行者利益を取りたい」という覚悟を持つベンダを見極める必要があると考えています。「みんながやっているなら、わたしたちもやります」というスタンスの方々に、マイクロソフトが一生懸命に「クラウドを活用しましょう」と提案しても、本心から積極的にクラウドの活用を覚悟しない限りは、本当にいい仕事はしていただけないことが多いと思うからです。

新野 わたしも同じ意見です。現実的には、クラウドはまだまだ先進的な取り組みで、一部の意欲的なベンダがそこにチャレンジしている状況だと思いますね。

マイクロソフト
砂金 信一郎

砂金 ですので、そういう覚悟を決めていただいた開発ベンダには、マイクロソフトは技術支援などで手厚くサポートしたいと考えています。マイクロソフトの営業にWindows Azureのテクノロジ部隊がついていき、のべつ幕なしに「Windows Azureはどうですか?」と聞いているわけではないのです。現時点では、「こういう領域にWindows Azureが使えそうなのですが、どう思いますか? マイクロソフトとしての見解を聞かせてください」と質問してくださるお客さまに一生懸命に応えているという状況です。

 マイクロソフトの強みは、すべてをクラウドに乗せる必要はないということです。Force.comやGoogle App Engineは、クラウドをバトル領域にしないと戦うことすらできません。だから何が何でも無理してクラウドへ移行させる必要があります。しかしマイクロソフトの場合、無理して移行を促進する必要がありません。移行できない部分があるなら、その部分は残しておいて、クラウド化できる部分だけを取りあえず移行すればよいのです。また、「クラウドから始めてみたけれど、スケールアウトではなく、スケールアップが必要なことが判明した」という場合は、逆にオンプレミスに移行することも可能です。つまり自由度の高さが、マイクロソフト技術やWindows Azureを売り込む際の武器になります。

IT業界でクラウドが持つ意味/Windows Azureの価値

一色 新野さんもクラウドには非常に詳しいと思いますので、逆に質問させてください。先日、バルマー氏が「マイクロソフト社員の90%は将来的にクラウド関連業務に従事することになる」と宣言したと聞いていますが、これからのIT業界やソフトウェア産業でクラウドが本流となっていくのでしょうか? また、その中でWindows Azureはどうなっていくと予想されていますか?

新野 通常、モデレータは意見を述べませんが(笑)、この後の進行にかかわる部分もありますので、手短にお話します。

 クラウドはよく電力会社になぞらえられます。エジソンが電気を発明した当時は、現在のように中央発電所があるわけではなく、会社ごとに小さな発電機を所有していました。しかしその後、これを効率よくするために、中央に巨大な発電所が生まれ、そこで発電して各社/各家庭に送電するように変わってきました。この変遷はオンプレミスからクラウドへの流れに似ています。つまり、オンプレミスのサーバ群を会社ごとの発電機に見立て、クラウドを中央発電所と見立てているわけです。この比ゆはニコラス・カー氏がよく用いています。

 わたしもこれに同意で、クラウド化して中央に集めて共通化することで、システムの開発/運用を効率化できます。つまり、IT(=情報技術)も大量生産の時代に入ってきているということです。

 自動車業界を考えてみると、2000年代に入り、特にトヨタなどは大量生産と同じぐらいの効率性で、個別の車を生産できるようになってきています。例えば、ヴィッツが来て、プリウスが来て、という形で、さまざまな車種を同じ生産ライン上で個別にカスタマイズして生産できます。このように、大量生産が進むと、その中で個別の最適化も行えるようになります。

 つまりクラウドは、個別生産→大量生産→(大量生産における)個別最適化、という長期トレンドの中の1つのトレンドに過ぎないと考えています。これが、わたしのクラウド観です。

 では、その中でWindows Azureはどうなのかというと、率直にいって「難しいところがある」と思います。

 Amazon EC2の狙いは「低コスト」だと考えています。従って、アマゾンが「クラウド・プラットフォームに付加価値を付けて性能を上げていこう」という戦略は恐らく取っていません。付加価値の部分は、RightScale(=Amazon EC2のサーバなどを管理、運用するためのサービス)やHeroku(=Ruby用のクラウド・プラットフォーム)などの外部ベンダによるエコシステムをAmazon EC2の回りに構築することを目指しているでしょう。

 一方、Windows Azureはほとんどのエコシステムをマイクロソフト1社が築いて、アプリの部分のみを開発者に開発してもらおうという戦略です。

 わたし自身は、アマゾンとマイクロソフトのどちらの戦略がよりよいのかという意見は持っていません。あくまで観客として、これからの両社の戦いを楽しみたいと思っています。

クラウドやWindows Azureが適用できる領域/使われ方

新野 わたしの意見はここまでにして、次の質問に移ります。クラウドやWindows Azureが適用できる業務領域はどのあたりにあると考えていますか?

市川 この質問は、わたしも多く受けます。そこで、クラウド特性×業務特性で構成するマトリックスの表を作ったことがあります。縦軸のクラウド特性には、次の6つを掲げました。

  • スケーラビリティ/柔軟性
  • 世界中からアクセス可能か
  • 高いセキュリティ
  • 海外にデータを保存することへの抵抗感
  • ベスト・エフォート(=リアルタイム性に欠ける)
  • 一定の高い可用性

 横軸の業務特性には、次の5つを掲げました。

  • コミュニケーション系(例えばSharePointなどの業務)
  • 情報分析系(意思決定支援に当たるような業務)
  • E-コマース系(商品売買の業務)
  • 一般業務系(コール・センターなどのBPO:ビジネス・プロセス・アウトソーシング、給与計算など)
  • 基幹業務系(生産管理、販売管理など、リアルタイム性が要求されるもの)

 このマトリックスで最も特性が適合するのが、コミュニケーション系です。例えばマイクロソフトのBPOS(=SharePointやExchangeをオンラインで提供するサービス)などがあります。情報分析系もクラウドに適合する業務分野です。情報分析だけであれば、万が一クラウド側のデータが消失してしまっても、データを再構築可能なので、リスクが比較的小さいからです。あとはE-コマース系。データを海外に置くという課題はありますが、世界中どこからでもアクセスでき、例えばマスコミに取り上げられて急にアクセスが増えたとしても、スケーラビリティを確保しやすいなどの利点があります。

 一般業務系や基幹業務系はあまり向いていないかもしれません。もちろん一般業務系でBPR:ビジネス・プロセス・リエンジニアリング向けのアプリはクラウドに利用可能かもしれませんが、基幹業務系で特にリアルタイム性が必要なものは、クラウドがベスト・エフォートなので、あまり向いていません。また、データを企業の外に置くことによる法令的な問題もありますし、顧客のセキュリティ・ポリシーで「自社内にデータを保有すること」のように決められている場合もあります。

 さらに、顧客企業が国内企業であるか、グローバル企業であるかもクラウドを採用できるかの検討材料になります。グローバル企業であれば情報分析系やコミュニケーション系の業務アプリをクラウド上に構築することは、製品自体の訴求力を高めることになります。

 こういった内容をわたしは分析しました。マトリックス自体は社内資料であるため、配布できないので、簡単に口頭で説明しました。なお、当然ながら、これはマイクロソフトの見解ではありません。

一色 わたしがクラウドで注目しているのは、よくいわれることですが、新しい使い方を模索していくことです。クラウド・コンピューティングから、まったく新しい形態のアプリが生まれてくるのではないかと期待しています。例えば、新種のWeb 2.0アプリなどです。

 また、現在のIT技術の進化の流れの中で、特に注目しているのは、マルチデバイス化がより進んできていることです。例えばiPhoneなど、PC以外のデバイスが本格的に使われるようになってきており、利用する端末のバラエティが非常に増えてきています。その各端末にソフトウェアをインストールして、サービスはWindows Azureなどのクラウドで提供するという、「ソフトウェア+サービス」というマイクロソフトが推奨・推進しているような使われ方が、やはり増えてくるのではないかと考えています。

砂金 わたしからはもう少し現実的な使われ方の話をします。例えばパッケージ・ソフトウェアを開発して、ライセンス収入を得ているISV(=独立系ソフトウェア・ベンダ)にとって、Windows Azureはすごく現実的な選択肢になっています。「今後、手持ちのアプリをSaaS化しなければならない」と考えているISVは多いと思います。SaaS化するからといって、パッケージ・アプリの販売をやめるわけにはいきません。つまり、その両方をやっていかなければいけないわけです。

 しかしそうすると、パッケージ版とSaaS版の両方のソースをメンテナンスしていくコストが発生します。現在の厳しい経済環境下で開発チームも縮小している状況で、SaaS対応は難しいと判断するISVも少なくないでしょう。そういったときにWindows Azureは役立ちます。Windows Azureとオンプレミスで、ほとんどのソース・コードを共通化する作り方ができます。そうしておけば、SaaS版のビジネスが伸びていれば、SaaSに経営リソースを集中させることもできるし、「いやいやSaaS版はにぎやかしで、収益の柱はパッケージ版のライセンス料ですよ」という場合には、これまでどおりパッケージ版を軸にしていけばよい。こういう活用方法が、ISVの皆さんがWindows Azureをいち早く採用するメリットだと思います。

 SIにとっては、現時点でのWindows Azureは脇が甘いので、Windows Azureの回りでいろいろなビジネスを展開できるチャンスがあると思います。例えばWindows Azureが提示するSLAや課金がエンド・ユーザーに受け入れられないのであれば、そのうえに付加価値を提供してエンド・ユーザーが納得する形で再販していただくという方法もあるかもしれません。付加価値とは、例えば先ほどのベスト・エフォートの応答時間に対しては、中間にキャッシュ・サーバを挟んでWindows Azureの欠点を吸収できるようにして応答速度を独自に速めるなどです。このように、SIにとってもWindows Azureのビジネス・チャンスはいろいろとあるのではないかと思います。

 IT業界全体でなかなか停滞感から抜けきれないという話はありますが、唯一「右肩上がりで伸びていきそうだ」とうわさされているのがクラウド関連です。グーグルにしろ、アマゾンにしろ、マイクロソフトにしろ、まだ始まったばかりです。だから、埋めるべき穴はまだたくさん残っています。どの穴を誰が取って、デファクト・スタンダードにしていくのかというチャンスが大きく広がっています。できるだけ多くの開発者の方々に、国内やグローバルでデファクト・スタンダードを取っていただきたい。Windows Azureがダメな部分を「これを使えば、その問題を解消できるよ」というサービスが、日本国内からいくつか生まれれば非常にうれしいです。


 INDEX
  [連載] .NET中心会議議事録
  第2回 現場開発者視点で答える「Windows Azure業務アプリ開発の実際」
    1.各社のクラウド・プラットフォームの比較
  2.なぜWindows Azureを使うのか?
    3.Windows Azureのセキュリティ・障害補償とサポート
    4.ライセンス形態や課金
    5.Windows Azureに関する性能

インデックス・ページヘ  「.NET中心会議議事録」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

注目のテーマ

業務アプリInsider 記事ランキング

本日 月間
ソリューションFLASH