間もなく新CEOが発表されるという情報が海外メディアから流れ始めたMicrosoft。以前からFord Motorのプレジデント&CEOのAlan Mulally氏や、元Nokia CEOで現在はMicrosoftに戻ったStephen Elop氏らの名前が挙がっていたが、1月30日早朝時点では、同社クラウド責任者であるSatya Nadella(サトヤ・ナデラ)氏で決まりそうだ。さて今週は、Microsoftの新たな開発スタイルについてあらためてレポートする。

時代に即した開発スタイルを選択

Mach(マーク)カーネルの開発などコンピューターの進歩に大きく携わったRichard Rashid氏が設立したMicrosoft Research。2013年の組織改編により、同氏はOSの開発部門へ。研究所所長の席には、元Microsoft Research USAのトップ兼コーポレートバイスプレジデントのPeter Lee氏が就いた。

同研究所の公式ブログ「Microsoft Research Connections Blog」は定期的に更新されており、1月も気になる記事をリリースしている。たとえば、ジェスチャーや音声認識を備えるセンサーデバイス「Kinect」が、手術現場などで利用されるようになり、NUIが浸透しつつあるという記事や、脳卒中の回復を目指し、Kinectのジェスチャー機能をリハビリに活用するという記事がある。このように同研究所は常に新しい試みを試している(図01)。

図01 Kinectのジェスチャー機能をリハビリに

他方でMicrosoftは昨年から、"デバイス&サービスカンパニー"というキーワードを掲げ、開発体制や方針を変更してきた。日本マイクロソフトは現在の状況やMicrosoft Researchにおける最新研究をアピールするため、同社最高技術責任者 兼 マイクロソフトディベロップメント代表取締役社長の加治佐俊一氏が記者説明会を行った。

同氏が入社して25年目にあたることから、20年前の1994年を振り返るところから説明は始まった。同年はWindows NT 3.1日本語版の開発が完了し、リリースされた年だが、加治佐氏は四半世紀を通じた「自社変革の波」として、Microsoftのキーマンの発言を引用。1995年にはBill Gates氏の社内メモ「The Internet Tidal Wave」から、当時の社内は社内LANとインターネットどちらに比重を置くか意見が分かれていたという(図02)。

図02 Microsoftのキーマンによる発言と同社変革のタイミングを図に示したもの。Lotus Notes開発者の1人、Ray Ozzieの名も並んでいる

その10年後にあたる2005年は、元Lotus Notes開発メンバーであり、後にMicrosoftのCSA(チーフ・ソフトウェア・アーキテクト)の席に着いたRay Ozzie氏の「The Internet Services Disruption」。当時は自社運営サーバーやクラウドといった変革の波が訪れていたという。なお、Ozzie氏は2010年に退社している。そして、2012年にはSteve Ballmer氏が株主&社員向けに発した「The Devices and Services」を取り上げた。加治佐氏によれば、このようにMicrosoftおよび日本マイクロソフトは変革を繰り返してきたという。

さらに以前のMicrosoftでは9グループに分かれていた開発部門を5つのグループに再統合。「Operating Systems」はWindows OSだけでなく、Xbox OneといったコンソールシステムのOS開発も担うことになる。加治佐氏はこの再統合をBallmer氏が掲げた「One Microsoft」に沿った構成であり、今まで以上に各部門での情報共有や意思疎通を強化すると紹介した(図03~04)。

図03 新たに再統合した開発部門。Operating Systems部門を筆頭に5部門に分類された

図04 研究部門の位置付け。Technology & Researchという部門の下に位置するという

開発モデルの変更に関しても説明が行われた。従来は約3年単位の開発サイクルを採用し、大規模かつ複雑なプロジェクト管理で開発を進めていたという。この方法は機能要件を明確にできるといったメリットはあるものの、3年前に設計した内容をリリースすることになるため、時代遅れとなることもある。そのため、Windows OSとインターネット向けアプリケーションをWindows Liveとして開発部隊が分かれた経緯を思い出す(図05)。

図05 OSやアプリケーションなどの開発モデルも変化。開発期間を短縮した「Rapid Release」やアジャイル開発に注力するという

そして、現在はBallmer氏の発言で何度か取り上げてきた「Rapid Release」に切り替わっている。四半期や年といった任意の開発サイクルでタイムリーかつユーザーニーズに即時対応できる補完的なアップデートを実現する。また、開発ターゲットをアプリケーションやクラウドサービスに重点を置き、迅速かつ適応的なアジャイル開発にシフト。小規模な機能開発を繰り返しているという。

"Rapid"な勢いでOSやクラウドサービスの改良を目指す

筆者はこの話を聞きながら、Microsoft製のWindowsストアアプリを思い出していたが、デモンストレーションで説明されたのも、ちょうどWindowsストアアプリ版One Noteだった。説明によれば、同アプリケーションが備えるカメラキャプチャー機能は、東京の開発チームやRedmond本社の開発チームが連携し、さらに英国のMicrosoft Redmond CambridgeやMicrosoft Redmond Asiaも関わって実現したものだそうだ(図06)。

本誌にも何度かアップデート記事を寄稿したように、小規模なアップデートを繰り返し、確実に機能を強化している。これが加治佐氏の説明にあるアジャイル開発の結果だ。さらに同社は「クラウドファースト」というキーワードも取り上げた。同氏によれば、Exchange Serverのようなオンプレミスなサーバーではなく、Exchange Onlineなどクラウドサーバーに注力するという。

図06 会場で行われた「One Notes」のデモンストレーション。この機能もアジャイル開発の一環から生まれたものだ

さらに新旧開発モデルに共通するポイントとして、TwC(信頼できるコンピューティング)を引き続き重要視することを強調していた。そもそもTwCはWindows XP以降に提唱されたセキュリティを強化する開発スタンスのひとつであり、その結果はWindows XP Service Pack 2に大きく反映され、「Service Pack 2セキュリティ強化機能搭載」というサブタイトルが付けられたこと記憶している方も少なくないだろう(図07)。

新たな開発モデルでは「Next TwC」を提唱し、クラウドコンピューティング社会におけるサイバー犯罪を想定した強化を図るという。Next TwCの詳細は別の機会に詳しく述べるとしよう(図08)。

図07 2002年に公開されたTwCのホワイトペーパー

図08 さらなるセキュリティ強化を図る「TwC Next」のポスター。2012年からスタートしている

この他にも同氏は、以前から行っているテレメトリーデータの収集やユーザーフィードバックを重視すると述べている。前者は遠隔測定法と呼ばれるデータ取得方法の一種。Windows OSを例に挙げると、デバイスドライバーが正しく動作しなかった際は、テレメトリーデータを元にソフトウェアが正常動作するように設計を変更するか、ベンダーに対して修正依頼を出しているそうだ。

この開発スタイルが今後のOSやアプリケーションに対して、どのような影響を及ぼすのか。直近に登場するといわれているWindows 8.1 Update 1(仮称)が具体例にあたるだろう。本レポートでも何度か触れているように、Windows 8.1 Update 1は、Windowsストアアプリのデスクトップ利用が可能になり、電源ボタンがスタート画面に加わるといった情報が聞き伝えられている。

多くのシェアを確保しつつも、タブレットなど新興デバイスの台頭により新たなアプローチが求められる同社にとって、この改革は必然だ。また、SkyDrive改めOneDriveのように、エンドユーザー向けクラウドサービスの1つであるOffice Web Appsなどもブランド名変更や機能改善が常に加わるようになる。

"Rapid"な勢いを実現するため、開発体制を大きく変更したMicrosoft。後はユーザーニーズを正しく認識し、必要な機能を適切に提供できれば、一強時代を呼び戻せるのではないだろうか。

阿久津良和(Cactus)