Microsoftは今年、Windowsベースのビジネスソフトウェアの構築・利用方法を簡素化するツールをリリースし、Java陣営の競合他社を引き離す作戦に出る。
Microsoftは、今年半ば頃に「Whitehorse」(開発コード名)という新ツールのテスト版をリリースする。Whitehorseは、プログラマが現行ツールを使う場合よりもより短時間で、信頼性の高いWindowsアプリケーションを設計・構築できるようにするツールだ、とMicrosoft開発部門の主任プロダクトマネージャーPrashant Sridharanが、CNET News.comに語った。
Whitehorseは、Microsoftが今年発売予定のVisual Studio.Net開発ツールパッケージの次期製品「Whidbey」(開発コード名)の一部となる。
Sridharanによると、Whitehorseは、ソフトウェア構築の「青写真」に相当するものを提供し、これによってプログラマは作業を視覚的に確認しながら進められるという。こうした「モデリング」ツールは目新しいものではないが、今までWindowsプログラマにはあまり利用されていなかった。Whitehorseでは「複数のサービスをフォームにドロップしたり、互いに結合したり、トランザクションやセキュリティなどのプロトコルを適用したりできる」(Sridharan)
このツールは耳慣れないものに聞こえるかもしれない。だが、実はこのツールがMicrosoftのソフトウェア開発戦略で重要な基礎となっている。Whitehorseは、開発者がWebサービスを利用してアプリケーション全体を構築できるようにするツールで、次期Windows「Longhorn」を補うものとなる。Webサービスは、Microsoftの各製品の基盤となる重要な技術だ。
Whitehorseでは、Webサービスを使ってより高度なソフトウェアを設計・構築できるようになる。そのため、これがMicrosoftにとっていっそう規模の大きなソフトウェア供給契約を獲得するのに役立つ可能性がある。同社は、この開発ツールを使って、IBMやSun Microsystems、OracleのようなJava陣営の競合企業に伍しながら、最も要求の厳しい顧客へソフトウェアを供給するために、激しく競い合うことになれるかもしれない。
また、それに劣らず重要なのは、Microsoftが数々のセキュリティや品質の問題を抱える自社製品の信頼性を向上するため、Whitehorseを社内で利用する計画があることだ。
「これは大規模な企てで、さまざまなチームをこのように調和させる計画は、Microsoftでは前例がない」とMeta GroupのアナリストThomas Murphyは述べている。
Microsoftは、Whitehorseのようなモデリングツールの利用により、開発者が構築したプログラムが企業ユーザーのニーズに合致しやすくなるだろうと述べている。Microsoft幹部によると、IT部門のプログラマと事業部門の幹部との間のコミュニケーションはうまくいかないことが多く、それが開発の遅れや、意図したものとは異なるアプリケーションになってしまうといった問題を引き起こしているという。
「開発部門と事業部門が設計段階で意思疎通しなかったために、アイデアとしては素晴らしいソフトウェアが実際の生産段階まで進まなかったという例が、一体どれほど存在するだろうか」というのはTim Huckabyで、InterKnowledgyというコンサルティング会社のCEOだ。なお、同氏の会社ではMicrosoftのソフトウェアを利用している。
Huckabyは、ソフトウェアの開発者や設計者らが、Whitehorseを実際に手にした際には「大喜び」するだろうと述べた。しかし、ソフトウェア開発のハイエンドを占めているのはUnixやJavaであることから、Microsoftにとっては「(ソフトウェア)インフラの世界で認知度を獲得し、採用されること」が大きなチャレンジとなると同氏は指摘し、この領域ではMicrosoftが開発者との間であまり良好な関係を築いていない点をその理由に挙げた。
Whitehorseプロジェクトの持つスコープの大きさや、その複雑さ、そして影響を受ける数百万の開発者の存在を考え合わせると、WhitehorseにはWindowsソフトウェアの開発に大変革をもたらす可能性があるとアナリストは指摘している。また、それと背中合わせに、人々の記憶に残るほどの大失敗に終わる可能性もある。「この製品は、Microsoftにとって新たなクオリティのレベルをもたらすか、あるいは大失敗に終わるかの、どちらかだろう」(Murphy)
ソフトウェア開発の簡素化・時間短縮が狙い
企業顧客が、ますます複雑になるコンピューティングシステムの構築と格闘するようになっていることから、モデリングや設計への関心は高まりを見せている。IBMやBorlandなどのMicrosoftのライバル企業も、モデリングツールの開発にかなりの投資を行なっている。Microsoftは、Javaソフトウェア企業との競争が激化するなか、モデリングという数十年来の技術で独自の戦略を進めようとしている。
Whitehorseでは、あらかじめ組み立てられた「サービス」と呼ばれるアプリケーションコンポーネントを組み合わせて、1つのビジネスプロセスを完成できるようになり、これを通じてアプリケーション開発プロセスの簡素化が図られている。
通常モデリングツールは、開発プロジェクトをあらかじめ分析することで、開発時間の短縮に役立つとされている。ソフトウェア設計者がまずアプリケーションの構造や要求仕様を記述し、次にこれがプログラマーに回されて、実際のコードが書かれる。いったん書かれたコードは、検査を受けるが、それが済んだアプリケーションは、企業のデータセンターに送られる。データセンターには、ビジネスアプリケーションを稼動させるバックエンドツールが保存されている。データベースおよびネットワーク管理者などの専門技術者は、アプリケーションが実際に稼動する物理的なインフラの運営や管理にあたっている。
Microsoftは、Whitehorseで、アプリケーションの導入段階の簡素化も図ろうとしている。Whitehorseでは、System Definition Modelとよばれる共通のXMLベースの言語を提供し、アプリケーションのハードウェア要求仕様や、ネットワーク設計者が物理的インフラに設けた制約条件などの情報を共有できるようにしている。これにより、たとえば設計者は、ネットワーク管理者が指定したあるサーバのセキュリティ要求仕様に、開発中のアプリケーションのセキュリティ設定が合致するかどうかをテストすることが可能となる。
アプリケーションの「ライフサイクル」における、この導入段階の簡素化は、Microsoftにとって重要な目標であり、複数年にわたる同社計画「Dynamic Systems Initiative」(DSI)の一部となっている。同社では長年、プログラマーの生産性向上のためのツールを開発してきたが、DSIでは運営コスト--つまり、ビジネスアプリケーションを稼動し続ける上で必要な労働の削減に焦点をあてている。
IBMやBorland、Compuware、Computer Associates Internationalなどの大手サプライヤーはここ2年ほど、開発をスピードアップさせ、高品質なコードが生成できるよう、モデリング機能の導入による開発ツール強化を図っている。Microsoftがモデリングツールへの取り組みを拡大したことで、同社はこうした企業との競争に直面することになるだろう。
IBMは2002年後半に、モデリングツール開発の先駆けであり、設計ツールでよく使われるUnified Modeling Language(UML)の開発で中心的役割を担った、Rational Softwareを買収した。また昨年には、Rational Rapid Developerというツールを発売したが、これは Java 2 Enterprise Edition (J2EE) アプリケーションの開発に要する時間を短縮するために、モデルや自動コード生成機能を多用したものである。
現在、IBMのRational部門では、アプリケーションの設計者やテスターといった従来のユーザーだけでなく、システム管理者までも取り込もうとしている。同社は、ビジネスプロセス分析ツールやシステム管理用ツールを含む自社のソフトウェア製品全体に、Rationalのモデリング技術を盛り込むことを計画している。
Rationalは、IBMのTivoliシステム管理製品部門と共同で、ある開発プロジェクトを進めているところだ。このプロジェクトでは、アプリケーションの導入を円滑に行い、またそのパフォーマンスを確実に期待に応えるものとするために、Rationalのモデリングツールを使おうとしていると、 IBM Rational部門のAlan Brownというエンジニアは説明している。
だが、「こうした大がかりな開発作業は、一気にすべてを行えるといったものではない。顧客がこうしたことを賢明なやり方で行えるようになるまでには、もうしばらく時間がかかる」とBrownは付け加えた。次の目標は「SOA」
サービスオリエンテッド・アーキテクチャ(Service-Oriented Architecture:SOA)に対して顧客が対応できるようにすることは、開発ツールメーカーにとって差し迫った関心事のひとつだが、SOAは結果的に、より柔軟で費用対効果の高いソフトウェア構築の実現につながると、アナリストやベンダー各社は述べている。Microsoft、IBMや他のベンダーは企業内のソフトウェア開発者にモデリングツールを提供し、生産性を高め、またこの新しい技術アーキテクチャへ企業が移行することに役立てようとしている。
Webサービスは、XMLベースのプロトコルを利用したメッセージの送信によってデータを共有するアプリケーションコンポーネントを指すが、モダンなSOAはWebサービスにもとづいたものだ。たとえば、電子コマースサイトは、あるSOAを使って、さまざまな提携企業が関連する複雑な取引を処理できるが、この場合いくつかのWebサービスをリンクするだけでよく、提携企業間に専用回線を引く必要はない。
Microsoftは、一般にオブジェクト指向の開発ツールで使われているUMLを敬遠し、代わりに予めつくられたWebサービスを素早くつないでいく独自のアプローチを好んでいる。Whitehorseでは、同社のVisual Basic開発ツールで普及した「ドラッグアンドドロップ(drag and drop)」のメタファーを拡張し、「ドラッグ、ドロップ、コネクト(drag, drop and connect)」にするとSridharanは述べている。同社は提携企業と協力し、WhitehorseでプログラマーがUMLで作業できるようなアドオンをつくると見られている。Sridharanによると、同社はまた、たとえば航空機業界のような特定の業界向けに考えられたモデリング言語が登場すると予想しているという。
この記事は海外CNET Networks発のニュースをCNET Japanが日本向けに編集したものです。
CNET Japanの記事を毎朝メールでまとめ読み(無料)
ものづくりの革新と社会課題の解決
ニコンが描く「人と機械が共創する社会」
ZDNET×マイクロソフトが贈る特別企画
今、必要な戦略的セキュリティとガバナンス
地味ながら負荷の高い議事録作成作業に衝撃
使って納得「自動議事録作成マシン」の実力