雑誌無償購読申込み 最新号 バックナンバー 広告資料請求 EDN Japanについて お問合せ
雑誌無償購読申し込み
メールニュースレター登録
登録内容変更
アナログ IC/ディスクリート
電源/電池/コントローラー
PLD / メモリー
組み込みシステム
コンピュータ&ボード
EDA/IP/CAE/ソフトウェア
電子部品
計測器
ディスプレイ
デジタル家電
通信・ネットワーク
カーエレクトロニクス/産業機器
EDN Japan 記事検索
検索方法の詳細
雑誌無償購読申込み ニュースレター登録 この記事に対する感想/ご意見
coverstory
2003年5月号
ウエブ・サービス、
組み込み機器の大きな力に


ウエブ・サービスは、組み込み機器の能力を大幅に拡大させる技術だ。この技術を活用すれば、組み込み機器は強力なアプリケーションを手に入れられると同時に、インターネット上のさまざまな情報にアクセスすることが可能になる。ウエブ・サービスを実現可能にしたのは、XMLやSOAP、WSDL、UDDIなどのオープンな標準規格である。すでに、こうした標準規格に準拠したさまざまソフトウエア製品が市販されており、機器設計に活用できる状況にある。

ワレン・ウェブ 
Warren Webb
パーベイシブ・コンピューティング*が現実のものとなりつつある。これと共に組み込み機器は多くの役割を担うようになった。
 ユーザーは、どこでも、いつでも、どんな機器からも、さまざま情報にアクセスできることを望んでいる。ウエブ・サービスは、こうした使い方を実現する際のカギを握る技術になる。組み込み機器のユーザーに、ハードウエアやOS(オペレーティング・システム)、ディスプレイの違いを意識させることなく、遠隔地にあるアプリケーションへのアクセスを可能にする。米IBM社*米サン・マイクロシステムズ社*米マイクロソフト社*を含む多くの企業のウエブ・サービスに対する見解は一致している。すなわち「ウエブ・サービスは、インターネットの使用環境に大きな変革をもたらす」ということだ。このため、こうした企業は、将来の市場獲得の足がかりをつかむために広範囲にわたるビジネス戦略を策定している。
 エンタープライズ(企業)向けソフトウエアの開発チームは、企業間(B-to-B)の取り引きの効率を高めるためにインターネットを活用する。しかしウエブ・サービスは、これとは位置付けが異なる。そもそも組み込み機器は、リソースが限られている。ウエブ・サービスは、こうした機器の機能を増やす役目を果たす。例えば、無線通信機能を備える携帯端末でウエブ・サービスを利用すれば、交通状況や道路状況に基づいて最適な配送ルートを探し出せるようになる。さらに簡単な例としては、株の銘柄を示す記号を受け取り、その銘柄の株価を送り返すという情報サービスが考えられる。これらのサービスは、現在でも実現可能だ。しかしサーバーとクライアントの両方に、カスタム・インターフェースとカスタム・ソフトウエアを組み込む必要がある。
 最近になって、小型で安価なプロセッサーに加えて、低コストの無線通信技術が広く浸透し始めた。組み込み機器市場におけるウエブ・サービスの成長にとって、完ぺきな環境が整いつつあると言えるだろう。
 前述のように、ウエブ・サービスはリソースに制約がある組み込み機器に最適である。コンピューティング・パワーは、どこにでも存在し得るからだ。ただしウエブ・サービスは万能ではない。特にデータ転送の遅れや、一時的な通信の中断が問題となるケースでは解決策にはならない。しかしウエブ・サービスが有効な用途は数多く存在する。ウエブ・サービスを利用して、有用だが重要ではない情報を表示することで、その組み込み機器が本来果たすべき機能を向上させることができる。
 ウエブ・サービスの最大の使命は、特定のシステム上でしか動作しないソフトウエア、すなわちプロプライエタリーなソフトウエアが引き起こす問題を取り除くことにある。ほとんどの企業は何年間にもわたって、ビジネス処理や科学技術計算を行うカスタム・ソフトウエアを数多く開発してきた。しかしこれらのソフトウエアは、他社では使えない。時代遅れの言語で書かれていたり、作者が会社をすでに辞めていたり、プラットフォームが違っていたりといった多くの技術的な問題が存在するからである。ウエブ・サービス技術を使えば、こうしたソフトウエアはウエブ・サービスとして公開できる。従って企業の内外に関わらず、ユーザーは誰でもこうしたソフトウエアを機器に組み込める。ウエブ・サービス技術を利用することで組み込み機器は、言語やプラットフォーム、メーカーに依存せずに、アプリケーションの実行やデータの交換を行えるようになる。

Advertisement
プレーン・テキストがいい

 ウエブ・サービスの考案者は、幅広い支持を取り付けるために、現在のウエブ・サーフィン技術と同様の戦略を踏襲した。ウエブ・ブラウザーは、通信のやりとりがテキスト・ベースで、さらに人間がある程度読み取れるものであったために大成功を収めた。サーバーやブラウザーは機種に依存しない。多くの言語で開発され、さらにほとんどのプラットフォームに向けて作られた。ウエブ・サービスも同じだ。異なる情報システムで情報をやり取りする場合は、通信を行う両者の能力に依存する。
 ウエブ・サービスにとって、XML*はキー・テクノロジーに位置付けられる。プラットフォームに依存しないデータ転送の手続き(プロシジャー)を作成する際に欠かせない存在だからだ。XMLのタグは、ウエブ・ブラウザーが使用するHTML*に似ている。タグでデータを挟む点も同じである。しかし大きな違いがある。
 HTMLのタグは、テキストの表現方法や表示方法を指定するものだ。一方、XMLのタグは、挟み込んだテキストのコンテンツを表現する。もう1つの大きな違いは、XMLは拡張可能であることだ。つまりユーザーがタグ自体を定義できる。HTMLは、仕様の中ですでに定義されているタグしか使えない。さらにXMLは「スキーマ(schema)*」と呼ばれる既存のファイルを参照し、データの構造も定義できる。新たなスキーマを作成し、別のタグや構造を定義することも可能である。
W3C(ワールド・ワイド・ウエブ・コンソーシアム)*は、ウエブ・サービスを以下のように定義している。すなわち「ウエブ・サービスは、XMLによって記述し、定義された公開インターフェースやバインディングを有するURI*(統一資源識別子)で識別されたソフトウエア・システムのこと」である。ただし、このソフトウエア・システム以外でも、IP(インターネット・プロトコル)で送られるXMLベースのメッセージを使ってウエブ・サービスと通信できる。

SOAPやWSDL、UDDIと連携

 XML以外にも、ウエブ・サービスにとって重要なインターネット関連技術がいくつか存在する。SOAP*やアプリケーションの特定に使うUDDI*フォーマット、WSDL*などである。図1は、ウエブ・サービスの検索や記述、実行に向けたソフトウエア・スタックを作成するために、上記の技術がどのように連携しているかを示したものである。IBM社やサン・マイクロシステムズ社、米オラクル社*などのほとんどの大手ソフトウエア・ベンダーは、これらの技術をウエブ・サービスの基本構成としてサポートしている。なお、ウエブ・サービスのプロトコルや技術に関する規格の最新版は、W3Cのウエブ・サイト(http://www.w3.org)で閲覧、ダウンロードできる。 SOAPは、分散型コンピューティング環境で情報を交換する際に使う、簡単な要求(リクエスト)/応答(レスポンス)プロトコルである。このプロトコルは、インターネット上で送るメッセージをカプセル化するためにXMLをベースにしている。SOAPには、メッセージ記述フレームワークとデータ型符号化(エンコーディング)規則、リモート・プロシジャーの呼び出し/応答に関する取り決めが含まれている。
 SOAPは、ほかのどのプロトコルと組み合わせてもメッセージを転送できる。しかし現在の仕様では、最も一般的なインターネット転送プロトコルであるHTTP*(ハイパー・テキスト転送プロトコル)に重点を置いている。SOAPメッセージは、ユニークな名前空間(name space)を使って、インターネット上のウエブ・サービスを識別する。名前空間は、例えば「http://ednjapan.com/subscribe」のように、ドメイン名の後ろにユニークなサービス名を付けたものでも構わない。従って名前空間の多くは、標準的なURL*に似ている。しかしインターネット上の実際のウエブ・ページを指す必要はない。
 ウエブ・サービスの内容を記述する際にはWSDLを使う。これはXML文書で、メッセージ・コンテンツやウエブの場所、通信プロトコルを規定するものだ。ウエブ・サービスをアプリケーションに統合するために必要な技術的な詳細を備えている。具体的には、ウエブ・サービスを呼び出す際に必要になる、引数のタイプや戻り値などを定義している。
 UDDIレジストリーは、ディレクトリー・システムである。いわばウエブ・サービスの電話帳といった位置付けだ。企業は、このシステムを使えば、潜在的なビジネス・パートナーや顧客に対してウエブ・サービスを公開できるようになる。ウエブ・サービスのアドレスやインターフェース情報のほか、ビジネスの名称やアドレス、連絡先なども含まれる。なお、このレジストリーに公開する情報は任意に決められる。

セキュリティーは完ぺきか

 ウエブ・サービスに関する基本的な問題の1つに、トランザクション時のセキュリティーがある。ネットワークの背後に多くのクラッカーが潜んでいる状態では、企業はビジネス上の機密をインターネットに預けられないだろう。ウエブ・サービスの開発者は当初、すでに数1000というサーバー・クライアント・アプリケーションがHTTPセキュリティー用として稼働していたため、これだけで十分だろうと考えていたようだ。しかしIBM社やマイクロソフト社、米ベリサイン社*は、異なるセキュリティー・レベルを追加するために、ウエブ・サービス・セキュリティーに関する仕様を提案した。この仕様は、セキュリティーを付加したSOAPの拡張機能で、具体的にはXML署名や暗号化、セキュリティー・トークンが含まれている。この詳細については、OASIS*(構造化情報標準促進協会)のウエブ・サイトで入手できる。
 従来ほとんどのウエブ・サービスは、エンタープライズ・コンピューター・システムを利用した企業間(BtoB)アプリケーションだった。一部の企業では、ウエブ・サービスを使って、ビジネス・アプリケーションやデータベースをインターネットを介して他社のシステムと接続し、顧客サービスやサプライ・チェーンを強化している。
 現在では、大手ソフトウエア・ベンダーなどによって、ウエブ・サービスの応用範囲は組み込み機器の世界まで拡張されている(下掲の「モバイル・マップ」参照)。ある企業の応用例を説明しよう。この企業では、小型の携帯型POS端末を使って販売を行っている最中に無線インターネット接続を介してウエブ・サービスを利用し、価格の問い合わせや、在庫の更新、出荷スケジュールのダウンロード、信用の照会を実現している。
 組み込み機器はウエブ・サービスを利用するだけでなく、サービスを提供することも可能になる。例えば、保守技術者がデスクトップ・システムから遠隔操作でウエブ・サービスを介して組み込み機器にアクセスする。そこで自己テストや診断ルーチンを起動し、修理や保守が必要な部品を特定できる。

さまざまなソフトウエアが登場

 これまでに紹介した仕様やプロトコルのほとんどは、オープンな標準規格である。しかし各社独自の製品もウエブ・サービスの開発に使える。例えば、マイクロソフト社の「.NET」やサン・マイクロシステムズ社の「Sun One」、IBM社の「WebSphere」がある。これらの開発用ソフトウエア製品は、すべて市販されており、ウエブ・サービスを構築して試験を行い運用するために必要なアーキテクチャーやプラットフォーム、ツール群を備えている。
 サン・マイクロシステム社やIBM社などのソフトウエア・ベンダーは、XMLとジャバ(Java)*をプラットフォームのベースとしている。一方、マイクロソフト社の.NETフレームワークは、XMLとVisual Basic、インターネット・プログラミングに向けて開発された新しいオブジェクト指向言語「C#*」に重点を置く。
 ウエブ・サービスの開発に使う言語は重要ではない。しかしツール・セット間に互換性が確保されていないと、さまざまな問題が発生する。例えば、.NETの開発キットを使って構築したウエブ・ベースのアプリケーションは、現在のところウインドウズ・ベースのサーバーでしか動作しない。マイクロソフト社の「パスポート(Passport)」という製品は、.NET専用のユーザー認証メカニズムである。現在、この製品は「一私企業に過ぎない同社がインターネット上におけるユーザー認証の管理者になりかねない」として論議を呼んでいる。これに対抗するために、サン・マイクロシステムズ社とリバティ・アライアンス*と呼ぶ34社からなるコンソーシアムが、ユーザー認証に関する手法を開発する活動を立ち上げた。しかしすでにマイクロソフト社は、ほとんどのデスクトップ・ユーザーを獲得してしまっている。
 マイクロソフト社の開発ツールは、「Visual Studio」を基に、.NET用に一部変更したものだ。「Professional」と「Enterprise Aechitect」、「Enterprise Developer」と呼ぶバージョンを用意している(図2)。「Visual Studio.NET」の価格は1079米ドルからである。

ジャバはどうか

 IBM社は、「WebSphere Studio」にウエブ・サービス開発ツールを含めた(図3)。ジャバ・コンポーネントとHTML、XML、ウエブ・サービスをすべて1つの開発環境に統合したサポート体制を採る。ユーザーは、これを利用することで、ジャバ2エンタープライズ・エディション(J2EE)*によってウエブ・サービス・アプリケーションを作成可能になる。ウエブ・サービス・クライアント・ウイザードを使えば、UDDIやSOAP、WSDLを活用してウエブ・サービス用アプリケーションの構築などが可能になる。「WebSphere Studio V4.0 Professional Edition」の価格は496米ドルで、IBM社のウエブ・サイトから入手できる。
 サン・マイクロシステムズ社は、まもなく発売される「Sun One Developer Platform」のプレビュー版を含むスターター・キットを提供中だ。この中には、ウエブ・サービスやオンデマンド・サービスの開発や運用に使えるミドルウエア・スタックも統合されている。スターター・キットには、総合開発環境「Sun One Studio 4」の「community」と「mobile」、「enterprise」の各エディションが含まれるほか、「Sun One certificate server」、「Sun One integration server」、「Sun One portal server」、「Sun One message queue」、「Sun One active server pages」も用意した。これらに加えて、「J2EE developer kit」と「Java Web-services developer pack」、チュートリアルも含まれる。スターター・キットの価格は29.95米ドルで、オンラインから入手できる。
 こうした大手ソフトウエア・ベンダー以外の中小ベンダーも、組み込み機器向けウエブ・サービス市場用の製品を用意している。例えば、米ソフトワイヤー・テクノロジー社*は、携帯型情報端末に向けて「SoftWire」を製品化している。この製品は、コーディングではなく、フローチャートを書くようにグラフィカルにモデル化することで、アプリケーションを作成できる(図4)。グラフィカルなインターフェースを使えるため、プログラマーでなくてもサーバー側のウエブ・サービスを構築可能だ。「SoftWire」は、マイクロソフト社の.NETフレームワーク上で動作する。価格は、接続クライアント数当たり495米ドルである。この製品を使って作成して組み込んだアプリケーションに関しては、ランタイムに基づく登録料やライセンス料は発生しない。
 市販されているハードウエア開発ツールやソフトウエア開発ツールを使えば、ウエブ・サービスのプログラミング・モデルの移行が簡単に行える。カナダのイントリンシック・ソフトウエア社*では、マイクロソフト社のOSである「ウインドウズCE.NET」をサポートする開発キットを数製品提供している。例えば、開発キット「CerfPod 250」はインテル社の400MHz動作の「XScale」プロセッサーや、タッチスクリーン機能を備える液晶パネル、ネットワーク接続機能から構成されている(図5)。さらに「ウインドウズCE.NET」がインストール済みだ。米国での価格は1495米ドル。同社のウエブから直接購入できる。
 米クエストラ社*は、小型のリモート組み込み機器をエンタープライズ・レベルの分散型コンピューティング・アーキテクチャーの一部として統合することを可能にするウエブ・サービス向けソフトウエア「Smart Service Solution」を開発した。このソフトウエアは、エンド・ユーザー側の組み込み機器にインストールして使用する。機器の中で、知的なエージェントとして機能することが特徴だ。コンフィギュレーション・エンジンを使うことで、ウエブ・サービス・プロトコルを組み込み機器の間で送受信できる。J2EEをベースにしている。この製品は、組み込み機器にダウンロードできるほどの小さなアプリケーション・ソフトウエアである。リアルタイムでデータを収集し、このデータを送信する。すなわち「インターネット・モニタリング・デバイス」を実現できる。同社では、XMLとSOAPを最低限サポートできるウエブ・サービスに必要なメモリーの容量を20Kバイトに抑えた。非常に小さい組み込み機器に向く。 
 ウエブ・サービスを活用すれば、リソースに限りがあるシステムでも強力な機能を実現できるようになる。組み込み機器の設計方法を変革させる存在になりそうだ。ネットワークを介してパラメーターをやり取りする単純だが標準化されたソフトウエア・メカニズムによって、組み込み機器は世界中のアプリケーションと接続できるようになる。XMLやSOAP、WSDL、UDDIなどの技術は、マイクロソフト社やサン・マイクロシステムズ社、IBM社などが提供する開発ツールによって利用可能になった。こうした開発ツールを活用すれば、組み込み機器にウエブ・サービスを付加できるようになる。

モバイル・マップ

 ウエブ・サービスは、組み込み機器の世界では新しい存在だ。しかしすでに利用可能なサービスが存在する。「MapPoint.NET」は、米マイクロソフト社により開発され、運用されているウエブ・サービスである。このウエブ・サービスは、配達車両などの位置情報を使ったサービスを実現するためのプラットフォームである。システム開発者は、位置情報とマッピング機能を携帯端末向けアプリケーションに統合できる。携帯端末のユーザーは、このアプリケーションから「MapPoint.NET」を呼び出す。そして経路案内や地図表示、住所や場所の検索、通りの名称などを送って目標地点の近くを検索する、といったサービスが利用できる。
 「MapPoint.NET」は、SOAP のAPI*を利用したXMLベースのウエブ・サービスである。位置の探索や、運転経路の作成、地図の表示といった3つのタスクに共通するユーティリティー機能に関するオブジェクトとメソッドを提供する。このウエブ・サービスを呼び出すには、「MapPoint.NET WSDL」を参照しなければならない。「Map Point.NET」の基本ウエブ・サービス利用者は、 プラットフォーム・アクセス料として1万5000米ドルに加えて、ユーザー当たりのライセンス料を支払う。
▲本文へ戻る



用語解説 / 会社情報
【パーベイシブ・コンピューティング】
pervasive computing
パーベイシブ(pervasive)とは広がる、普及する、浸透する、という意味である。すなわちパーベイシブ・コンピューティングとは、パソコンの中核となる機能をほかの機器に組み込むための技術を指す。
▲本文へ戻る
【米IBM社】
IBM Corp.
日本法人は日本アイ・ビー・エム。ホームページはhttp://www.ibm.com/jp/
▲本文へ戻る
【米サン・マイクロシステムズ社】
Sun Microsystems, Inc.
日本法人はサン・マイクロシステムズ。ホームページはhttp://jp.sun.com/
▲本文へ戻る
【米マイクロソフト社】
Microsoft Corp.
日本法人はマイクロソフト。ホームページはhttp://www.microsoft.com/japan/
▲本文へ戻る
【XML】
Extensible Markup Language
1998年にW3Cで勧告されたメタ・マークアップ言語である。日本語では「拡張可能なマーク付け言語」と呼ばれている。
▲本文へ戻る
【HTML】
hyper text markup language
ウエブ・ページを記述するための言語。マークアップ言語の1つ。
▲本文へ戻る
【スキーマ】
schema
XMLにおいてスキーマは、XML文書の取り得る構造を記述したもの。スキーマを記述するための言語をスキーマ言語と呼ぶ。
▲本文へ戻る
【W3C】
World Wide Web Consortium
ワールド・ワイド・ウエブ(WWW)で用いられる技術の標準化と推進を目的とした国際学術研究機関。ホームページはhttp://www.w3c.org/
▲本文へ戻る
【URI】
Uniform Resource Identifier
統一資源識別子。世界中に存在するリソースを識別するために、一意に表現するための構文。
▲本文へ戻る
【SOAP】
Simple Object Access Protocol
分散型コンピューティング環境で情報を交換する際に使うリクエスト/レスポンス用の通信プロトコル。
▲本文へ戻る
【UDDI】
Universal Description, Discovery and Integration
さまざまな企業などが提供しているウエブ・サービスに関する情報を公開し、それを検索したり、実際に取り引きを行ったりすることを実現する仕組み。
▲本文へ戻る
【WSDL】
Web Service Definition Language
ウエブ・サービスを記述するための言語。やり取りするデータや、使用するプロトコル、サービスのウエブ上での位置などを記述する。XMLをベースにしている。
▲本文へ戻る
【米オラクル社】
Oracle Corp.
日本法人は日本オラクル。ホームページはhttp://www. oracle.co.jp/
▲本文へ戻る
【HTTP】
Hyper Text Transfer Protocol
ワールド・ワイド・ウエブのサービスで、サーバーからクライアントに対してHTMLで記述した文書を送受信するための通信プロトコル。
▲本文へ戻る
【URL】
Uniform Resource Locator
インターネット上のリソースの位置を記述する形式。
▲本文へ戻る
【米ベリサイン社】
Verisign, Inc.
日本法人は日本ベリサイン。ホームページはhttp://www.verisign.co.jp/
▲本文へ戻る
【OASIS】
Organization for the Advancement of Structured Information Standards
構造化情報標準促進協会。企業間で容易に情報を交換できるように文書形式の標準化を推進する国際的な団体。ホームページはhttp://www.oasis-open.org/
▲本文へ戻る
【ジャバ】
Java
米サン・マイクロシステムズ社が提唱したオブジェクト指向のインタープリター(中間)言語。プラットフォーム(機器やOS)に依存せずに動作する。
http://www.meridian-audio.com/
▲本文へ戻る
【C#】
シーシャープと読む。米マイクロソフト社が2000年に発表したオブジェクト指向のプログラミング言語。
▲本文へ戻る
【リバティ・アライアンス】
Liberty Alliance
インターネット上でのユーザー認証サービスの提供を目指す団体。米サン・マイクロシステムズ社が米マイクロソフト社の「.NET Passport」に対抗して立ち上げた。ホームページはhttp://www.projectliberty.org/
▲本文へ戻る
【ジャバ2エンタープライズ・エディション】
Java2 Enterprise Edition(J2EE)
米サン・マイクロシステムズ社のプログラミング言語「Java 2」の機能セットの1つ。企業の業務システムや電子商取引などで使われるサーバーに必要な機能をまとめた。
▲本文へ戻る
【米ソフトワイヤー・テクノロジー社】
SoftWire Technology
米国のソフトウエア・ベンダー。ホームページはhttp://www.softwire.com/
▲本文へ戻る
【カナダのイントリンシック・ソフトウエア社】
Intrinsyc Software, Inc.
カナダのソフトウエア・ベンダー。ホームぺージはhttp://www.intrinsyc.com/。国内販売代理店は、旭テクネイオン 情報システム事業部、電話03-5363-8941。ホームページは、http://www.asahi-techneion.co.jp/system/
▲本文へ戻る
【米クエストラ社】
Questra Corp.
米国のソフトウエア・ベンダー。ホームページはhttp://www.questra.com/
▲本文へ戻る
【API】
application programming interface
▲本文へ戻る

雑誌無償購読申込み ニュースレター登録 この記事に対する感想/ご意見
Reed Electronics Group
Electronic BUSINESS Japan | Design News Japan | Semiconductor INTERNATIONAL | DETAIL JAPAN
EDN Japanについて | 広告掲載について | サイトマップ | お問合せ
 Copyright (C) 2000-2006 Reed Business Infomation Japan K.K. 
個人情報に関する方針 | 著作権・リンクについて | 会社情報