リッチクライアントベンダ・インタビュー 第6回:株式会社サイオ 宮下知起 2005/9/7 |
今回紹介する株式会社サイオ(以下サイオ)は、数あるリッチクライアントの中でも非常にユニークな技術をもっている。同社は「Rimless Computing」というコンセプトの中で、クライアントにプログラムを配布する形態でのリッチクライアントを提供し、その基盤として「IdbA」と呼ばれるソフトウェア・フレームワークを用意している。
クライアントにプログラムを配布する形態のリッチクライアントは、ほかに、マイクロソフトのスマートクライアントやJava Web Startなどがある。アプリケーションをクライアント側で動作させるという点で従来のスタンドアロン型アプリケーションやクライアント・サーバと同様だが、ソフトウェアをサーバ側から提供し、バージョン管理を自動化する仕組みを備えることで、クライアント側での運用管理が不用になるのが特長だ。
サイオのリッチクライアントは、クライアントへのプログラムの配布とバージョン管理という技術に、Rimlessという概念が加わっている。では、Rimlessとは何だろうか?
■真のエンドユーザ・コンピューティングを目指す
サイオ 代表取締役社長 安田知弘氏 |
サイオ 代表取締役社長 安田知弘氏は「旧来のアプリケーションはすべてRimed(リムド)でした。すなわち枠(=Rim)がある状態だったのです。これからのアプリケーションはRimless(リムレス)であるべきです」と語る。Rimedな状態とは、端的にいえばエンドユーザが利用しているソフトウェアが(それぞれが単独ルールで作られているため)連携できない状態であったり、ソフトウェアをバージョンアップする際に、その都度再インストールやアップデートインストールを行わなければならない状態を指しているという。それぞれのアプリケーションは、超えることができない「枠」で仕切られているというわけだ。
しかしここで、従来からソフトウェアの部品化によるソフトウェアの連携や、差分ファイルによるアップデートといったことが行われてきたではないか? という疑問が残るだろう。安田氏は「Rimedの限界は提供者が異なるソフトウェア部品同士が動的に連携したり、ソフトウェアの機能追加を異なるベンダが提供することができないところにある」と指摘する。すなわちサイオが目指すRimless Computingとは、エンドユーザ自身が、さまざまなベンダのコンポーネント製品を取捨選択し、それらを組み合わせて機能やサービスを利用する形態を指す。ユーザーはコンポーネント製品の相性(連携できるか否か)を考える必要はなく、自在に機能を差し替えたり、追加したりできるというのだ。
同社でマーケティングを担当する営業・マーケティング担当 副社長 吉政忠志氏は「ユーザー主体の環境を提供できるRimless Computingは、真の“エンドユーザ・コンピューティング”だ」と語る。
■Rimless Computingを支えるのは「IdbA」
ところで、Rimlessな“コンポーネント間の自在な連携”を可能にするのが、前述の「IdbA」である。IdbAのルールに従ってコンポーネントを作ることで、コンポーネント間の連携、コンポーネント単位でのソフトウェアの配信と更新が可能になる。IdbAはJavaをベースとしているため、サーバプラットフォームにおけるポータビリティは高い。
サイオ 営業・マーケティング担当 副社長 吉政忠志氏 |
サイオのリッチクライアントソリューションの胆となる「IdbA」は、たとえばアカウントアグリゲーションの実現に適しているという。従来のオンラインバンキングやネット証券取引では、顧客IDやパスワードを預かることになり、個人情報の漏えいの可能性を作ってしまう。IdbAをベースにしたオンラインバンキングアプリケーションでは、複数口座のアカウント情報をクライアント側で持つことにより、この問題が解決されるという。
IdbA対応のオンラインバンキングアプリケーションでは、残高を取得するエージェント、一覧を表示するエージェント、資産分析をするエージェントなどが提供される。顧客IDやパスワード、口座の情報はすべてエージェントが管理することになり、ユーザーはサーバにIDやパスワードを開示する必要がなくなる。さらに、取引先のオンラインバンキングやネット証券がIdbAに対応していれば、エージェントを追加するだけで別の口座に対応できる(アグリゲート先の追加が容易)。さらには、複数口座に対応するエージェントを追加すれば、複数口座に預けた資産の一元管理も容易になる。ただ、このメリットが出てくるのはIdbAがあらゆる金融機関のサービスに普及した場合であり、サイオは現在そのためのプロモーション活動をさまざまに行っているところだという。
次に、リッチクライアントにおけるIdbAのメリットは何だろうか。1つには、HTMLクライアントからの移行がスムーズである点だという。HTMLクライアントをIdbAで作成するためのコンポーネントを用意しているため、サーバ側に大きな変更を加えることなくリッチクライアントに移行することができる。
IdbAに対応したコンポーネントベースでリッチクライアントを構築することにより、自在に機能の追加や更新を行ったり、ダイナミックにコンポーネント間の連携を行うことが可能になる |
さらにもう1つ、IdbAの強みとしてサイオが強調するのが「クライアント側SOA」だ。吉政氏はクライアント側SOAについて「従来のSOAの考え方は、サーバ側でサービスを統合するという形でした。我々はこれをクライアント側でやろうと考えています。IdbAをベースに、クライアント側でさまざまなWebサービスを統合するモデルを実現することで、既存のサーバ環境に手を加えることなく、クライアント上で社内外のWebサービスを組み合わせた活用が可能になるのです」と語る。
クライアント側でWebサービスを束ねるモデルを実現するサイオのIdbAベースのSOAモデル。IdbAベースのコンポーネント単位でWebサービスと連携し、Webサービスをフレキシブルに取捨選択することが可能になる |
社内のアプリケーションと外部のWebサービスを連携させ、社内の業務アプリケーションとして利用することが、IdbAベースのコンポーネントを追加することで実現してしまう。このように、Webサービスをクライアント側で容易に束ねていけるのが、IdbAベースのクライアント側SOAのメリットである。
■リッチクライアントマーケットはこれからの市場
吉政氏は「リッチクライアントマーケットはまだ動き始めていないと考えています。いまはまだユーザーのニーズ1つ1つに、SIerやデベロッパが対応している状況です。今後は、SIerやデベロッパ側が、リッチクライアントを積極的に仕掛けていくようになるはずです」と語る。サイオは、今後のリッチクラアントマーケットの伸びを見越し、積極的なアライアンスに取り組んでいる。
その1つが「TAZAWA LAKE」と呼ばれる、サイオが株式会社クレオ、株式会社セールスフォース・ドットコム、株式会社ネオジャパンの支援を得て行う、混在環境下における経営支援ツール開発プロジェクトだ。このプロジェクトは、企業経営をサポートする一連アプリケーションをIdbAベースで構築し、ニーズの変化に応じたシステムのスピーディーな改変、メンテナンス性の向上などを睨み、実験的プロジェクトとして推進しているものだ。
また、ターボリナックスとは、ECショッピングサイト向けのコンポーネント配信型ASPサービス提供において包括的な契約を締結した。現在、年間に1万点以上のECストアが開店する中、開店当初の収益性の悪さがシステム化の遅れをもたらし、さらにそれが収益源をもたらすという悪循環が起きるケースが多いという。これを解決するソリューションとして、リッチクライアント型のECサイトをASPで提供するサービス「Bailal E(コードネーム)」を共同で行っていくというものだ。これは自ら行うのではなく、ECサイトモールに対してOEMを行っていくというものだ。
IdbAが多くのクライアントPCに実装されることによって、ユーザーが必要なコンポーネントを取捨選択し、従来以上の利便性を享受できるRimless Computingを実現するには、IdbAそのものの普及が重要な鍵を握る。そのためには「IdbAの技術者への啓蒙も重要だ」と吉政氏は語る。同氏が副会長を務めるLinuxコンソーシアムでの啓蒙活動のほか、自社サイトでの評価キットの配布、チュートリアルの提供などを行うほか、さまざまなメディアを通じての技術情報の提供も積極的に行っていくという。また、IdbA自身も発展を続ける。「今後は.NETへの対応や、開発環境をEclipseプラグインとして提供することも視野に入れています」(吉政氏)
サイオの推し進めるRimless Computingは、利用者と提供者の両者に、従来よりも低コストで、かつスピーディーにさまざまなサービスの提供と導入を可能にするモデルだ。日本発の新しいコンピューティングモデルの普及に向け、サイオの挑戦が始まっている。
- GASで棒、円、折れ線など各種グラフを作成、変更、削除するための基本 (2017/7/12)
資料を作る際に、「グラフ」は必要不可欠な存在だ。今回は、「グラフの新規作成」「グラフの変更」「グラフの削除」について解説する - GET/POSTでフォームから送信された値をPHPで受け取る「定義済みの変数」【更新】 (2017/7/10)
HTMLのフォーム機能についておさらいし、get/postメソッドなどの内容を連想配列で格納するPHPの「定義済みの変数」の中身や、フォーム送信値の取り扱いにおける注意点について解説します【PHP 7.1含め2017年の情報に合うように更新】 - PHPのfor文&ループ脱出のbreak/スキップのcontinue【更新】 (2017/6/26)
素数判定のロジックからbreak文やcontinue文の利点と使い方を解説。for文を使ったループ処理の基本とwhile文との違い、無限ループなども併せて紹介します【PHP 7.1含め2017年の情報に合うように更新】 - Spreadsheetデータの選択、削除、挿入、コピー、移動、ソート (2017/6/12)
Spreadsheetデータの選択、挿入、削除、コピー、移動、ソートに使うメソッドの使い方などを解説する
|
|