Skip to main content
評価してください: 


2007 年 11 月から 12 月にかけ、全国 5 箇所 (名古屋、大阪、札幌、福岡、東京) で .NET 3.5 によるアプリケーション開発セミナー “.NET 3.5_Technical Briefing” が、開催されました。
ネットワークの著しい発達とさまざまなデバイス機器の登場により、企業に求められるサービスニーズも多様化し複雑化しています。本セッションは、こうした時代背景やマーケット トレンドの解説、そこから生まれた .NET 3.5 のテクノロジが提供する新しいサービス コンセプトの全容、生産性の高い開発ツール群のデモンストレーションなどを用いて、マイクロソフトが提唱する Software + Services の目指すところが何であるのかをさまざまな側面から紹介しました。

※本記事は、12月12日に東京都秋葉原で開催されたセッション取材によるものです。


次世代アプリケーション開発への期待


冒頭のデベロッパー & プラットフォーム統括本部、本部長 日詰廣造氏による挨拶では、近年の IT イノベーションによる急激なコンピューティングの変化による IT 業界への期待度の高まり、また、それに応じた .NET 3.5 テクノロジを活用した次世代のアプリケーション開発への期待が語られました。



ビジネスが牽引する技術の発展


午前の最初のセッションは、萩原正義氏が「テクノロジの変遷と時代背景」と題し、マイクロソフトのプラットフォーム技術の変遷について .NET 3.5 に至るまでを段階を踏んで解説しました。1990 年代前半に発展したアプリケーション間の連携、1990 年代後半のめざましいネットワークの発達により促された分散化、そして2000 年から現在にいたる場所や端末を選ばないユビキタスという考え方。こうした要求の複雑化に対し技術も複雑化し、これを開発の立場から解決する技術がオブジェクト指向、コンポーネント指向、サービス指向への発展であり、今後の意味レベルの抽象化としての Software + Services へとつながっているといいます。萩原氏は、これらのテクノロジの歴史をひとつずつ紐解き、最後に「意味レベルの抽象化」について、概念レベルという非常にビジネスに近い仕様をそのまま実行する利点について述べ、これをビジネスが牽引する技術の発展の例としてあげ、技術の発展の背景にある必然性を理解することが重要であると語り SESSION-1 を終えました。

 

 

Software + Services が実現するこれからのコンピューティング世界



SESSION-2 では、Software + Services を実現するテクノロジの概要を平野和順氏が解説しました。まず 3 つのマーケットトレンドとして、WEB 2.0 の企業版ともいえる Enterprise 2.0 による成果物の可視化 、SaaS (Software as a Service) 利用の現状、ビジネスの側面からの SOA (Service Oriented Architecture) について語りました。

その後 Software + Services の世界を想定した ビジョンビデオが放映されました。建築現場のナレッジワーカーがオフィスから現場へ移動しながら顧客の窓デザイン変更のリクエストを受け、新しい窓をドラッグ アンド ドロップで付け替えるだけでリアルタイムに設計変更し、その設計図をデザイナに送る様子が流されました。この例では新しい窓の設計情報が WEB サービスで公開されていることが前提となっていますが、さまざまな WEB サービスが公開され連携できるようになってきた現状でこそ、このようなビジョンが現実味をおびてきたといえます。

また Software + Services の事例として KDDI、マイクロソフト、ISV ソフトのベンダーが協業して企業向けに提供している SaaS について紹介しました。ここでのキーワードは最適化のための Composition で、業務プロセスから構想されたコンポジット アーキテクチャについて説明されました。

次に、Windows Vista からよりグラフィカルになった UX (User Experience) について、エンタープライズではどう活用していくのかを、倉庫の在庫管理の具体例をあげたデモンストレーションを混じえて解説しました。3D を用いた表現で瞬時に倉庫の不労率を把握できる利点を示すことにより、 リッチな UX がもたらす新しい企業システムの新しい可能性の一端を見せました。これにより、業務内容に精通しているナレッジ ワーカーが、新しい UX の可能性をさまざまな形で実現していくであろうことが示唆されたといえるでしょう。

最後に平野 和順氏は、開発スタイルの変化として、スクラッチ開発はますます減少し、これからは案件力、提案力が求められる時代になるであろう、とまとめてマイクを置きました。


Visual Studio 2008 で可能になる多彩なアプリケーション開発


午後の最初のセッション、SESSION-3 では、佐藤直樹氏が「Visual Studio 2008 による包括的なアプリケーション開発」をテーマに、4 つのキーワード SOA、WEB 2.0 、SaaS, RIA を中心とした IT マーケット トレンドに対し、Visual Studio 2008 がどのように貢献していくのかを中心に解説しました。

Visual Studio 2008 の強化点は、「最新プラットフォーム テクノロジの活用」、「開発生産性の向上」、「チーム コラボレーション強化」の 3 つにまとめられるといいます。佐藤氏はチーム コラボレーションについて「今後の開発スタイルは、従来のプロジェクト マネージャ率いるチームといったウォーター フォール型だけではなく、小規模なチームでメンバー各々の視点からなる意見を取り入れるコラボレーション スタイルが求められる」と語りました。

高度な UX を実現するために提供された Expression Blend ツールのデモンストレーションでは、Visual Studio 2008 と同じソリューション ファイルを利用して、開発者とデザイナが同じ画面を見ながら開発できる利便性を説きました。

Web アプリケーション開発強化の一番のハイライトは ASP.NET AJAX が組み込まれたことだといえます。JavaScript 対応のインテリセンス、デバッガ機能強化のデモンストレーションには、参加者の多くが食い入るように見入っていました。

次に、それぞれの機能を有機的に活用したサンプルアプリケーション DinnerNow.NET の構造を解説しながら、UX、WCF、WF、LINQ の利用について踏み込んで話しました。

最後に佐藤氏は、「1 度に .NET3.5 に乗り換えることが無理であっても、段階的にとりくみ、強化された機能を活用して多彩なアプリケーションを開発していただきたい。これまでできなかったことを実現することで、エンドユーザーの利益向上に役立ててもらえると思う。」と締めくくりました。


WPF による高いユーザビリティと開発生産性の向上


続いて SESSION-4 は「.NET テクノロジによる次世代リッチ クライアント アプリケーション開発」 と題して、高橋忍氏が、WPF (Windows Presentation Foundation) についてデモを中心に紹介しました。

高橋氏は、参加者に開発経験の有無について挙手を求め、予想を上まわる .NET 開発経験者の多さに手ごたえを感じる面持ちでセッションを開始しました。このセッションでは、WPF を用いてどんなことができるのかに主眼を置き、具体例を指し示しながら進められました。

3D のアニメーションの表現を、既存の Windows Form で実現しようとすると大量のコードを書く必要があります。WPF の大きな利点は 3D が扱えるようになったことです。2D を扱うときに、x,y で座標を設定していたのと同様に、x,y,z で物を配置することができます。この x,y,z に加えて時間を設定し、一定時間で座標から座標へ移動させることによってアニメーション表現も可能になりました。また、テキストに対しても、従来、画像ソフトでなければできなかったような、ふちどりやグラデーションなどの装飾をつけることがプログラミングレベルでできるようになりました。

こうした表現を用いることによってもたらされるものは何なのか。データを 3D のグラフにすることによって 1 度に多くの情報が瞬時に把握できるようになり、またスムーズなアニメーションの動きは移り変わる状況の連続性を明示的に表現することができる、これらがもたらす高いユーザビリティがエンド ユーザーに提供されることになります。また開発者にとっては、WPFを活用することによって、これらのメリットを備えたアプリケーション開発が効率よく行えます。

セッション後半では、Expression Blend によるデモンストレーションが紹介され、UI とプログラムロジックを分離し、デザイナと開発者の成果物を最後に統合させるその合理性について触れました。

高橋氏は、「WPF はVisual Studio 2008 で初めて提供されましたが、β版よりも格段に向上していますので、ぜひ製品版を体験していただきたい。」と力説しました。


.NET を基盤とした真の RIA (Rich Interactive Application) を実現する


SESSION-5 は、「ASP.NET AJAX / Silverlight と最新の .NET テクノロジによる次世代 Web アプリケーション開発」をテーマに、鈴木章太郎氏が ASP.NET AJAX と Silverlight の仕組みについて解説しました。

AJAX は、非同期の JavaScript と XML を連携させたものですが、JavaScript、CSS、XMLHttpRequest という既存の Web アプリケーション開発技術で実現されているためプラグインなどが不要で Web ブラウザを選ぶことなく動作するということが一番の特徴です。

サンプル プログラムを用いて、LINQ to SQL でのデータ取得、WCF での Web サービス化、WCF でのバインディングの変更の容易な例として JSON を使った手法、そして ASP.NET AJAX (Script Manager) からの Web サービス呼び出し、についてソース コードを追いながら説明しました。鈴木氏は、AJAX のまとめで、現在、ASP.NET と Silverlight との連係を可能にする ASP.NET Future が開発中で、サンプルが公開されていることに触れました。

セッション後半では、Silverlight について、多種のブラウザやプラットフォームに対応する Web ブラウザのプラグインであることを述べた後、「Silverlight は同じようなことができる他のソフトウェアと比較されることが多いが、これはまったく異なるもので、.NET との統合に最も注力して開発された真の RIA (Rich Interactive Application) を実現するものです。」と .NET Framework との親和性を強調しました。

その後、Silverlight の関数の記述例や XAML コントロールオブジェクトの記述例を参照しながら、具体的に実装例を示しました。XAML は WPF 用のマークアップ言語として導入された XML ベースの言語です。直接記述することもできますが、Expression ツールを使用して XAML コードを生成することも可能です。ここでも Expression Blend を使用したデザイナと開発者の作業切り分けの合理性に話がおよびました。鈴木氏は、「ただし、開発者も Expression Blend を使えるようにしておくことが重要です」と述べ、開発者が Blend を理解することによって成り立つ分業体制であると語りました。

デモンストレーションで使用したサンプルプログラム は、DinnerNow.NET のシナリオを簡略化したもので、こちらより、ダウンロードして試用していただくことが可能となっています。このイベントを貫くテーマである .NET 3.5 サンプルアプリケーションの DinnerNow.net は、ASP.NET、ASP.NET AJAX、JSON、LINQ to SQL、WCF 等の構成要素からなっています。その中で、LINQ to SQL による DB への接続、WCF Web サービスの構築、JSON Web サービスの構築、Web サイトの AJAX 化などの手法が使われており、マイクロソフトの新しいテクノロジを理解するには最適なサンプル プログラムといえます。


※DinnerNow.netは、CodePlex のサイトからダウンロードできます。
http://www.codeplex.com/DinnerNow


サービス指向を具体化する Visual Studio 2008 の新機能


SESSION-6 は、中原幹雄氏が「Visual Studio 2008 によるサービスアプリケーション」をテーマに主に WCF (Windows Communication Foundation)、WF (Windows Workflow Foundation)、CardSpace (Windows CardSpace) について解説しました。

まずサービス指向の考え方について、これをオブジェクト指向からコンポーネント指向へ、そしてサービス指向へと進化したものであると定義した後、コンポーネントとの違いについて話しました。コンポーネントが静的な再利用であるのに対し、サービスは動的なモジュール、つまり実行済みのアプリケーションの再利用であり、すでに動作が確認されたものを利用するため、呼び出しが正しければ正常に動作するという確実性があると、その利点を語りました。

WCF は、.NET 2.0 まで分散されていた複数の通信要件に対応するテクノロジとしてひとつに統合されたものです。.NET 2.0 までは、例えば Web サービスで作成したもののパフォーマンスをあげるために Remorting に切り替えてバイナリの高速通信に変更したい、といった場合、利用する API が異なるため、通信部分をすべて差し替えなければなりませんでしたが、WCF はプロトコルの違いが API やサービスの部分に依存しないため柔軟な変更が可能になる、と活用メリットの一例をあげました。

WF はモデル駆動型のワークフロー ツールです。通常、ビジネス プロセスやロジックを作っていく場合には、C# や VB でクラス、メソッドを作ってロジックを実装していくが、承認プロセスのようにビジネス プロセスに時間を要する場合には、単純なクラスのメソッド呼び出しの実装では対応しきれません。WF はこうした長時間にわたって継続可能なプロセスに対応する強力な基盤をもっていると説明。デモンストレーションでは、ワークフローというキャンパスの中にアクティビティというコントロールを貼りつけていく、その実装方法の簡便さを見せました。

最後にデジタル ID の課題として、セキュリティ、法令遵守、煩雑な ID パスワード管理をあげ、それを解決する ID ソリューションとして、CardSpace を紹介しました。CardSpace は、「ユーザー」、「ID 発行・管理者」、「ID を利用するサービス」の 3 者の連携により成り立っているシステムで、多種多様なセキュリティ トークンに対応します。デモンストレーションでは、ユーザーが、ひとめで区別可能なカードを画面から選ぶだけで、セキュアなサービスにすぐにログインできる様子を披露し、ID やパスワードを記憶する必要のないユーザビリティの高さを見せました。


Software + Services というマイクロソフトが提唱する次世代戦略を、歴史的背景から生まれた現代のテクニカル トレンドという縦軸に、次世代のアプリケーション開発を実現するための個々の新技術がもつ可能性という横軸をつむぎ、その全容を語る 1day セッションは幕を閉じました。

午前 9 時から午後 6 時におよぶ長時間のセッションにもかかわらず、途中退席者も少なく、参加者の .NET 3.5 アプリケーション開発への関心の高さと熱意がうかがえました。


ページのトップへ