特集:変貌するリッチクライアント(3)
企業のWeb2.0活用はSOAとの融合から
野村総合研究所
技術調査室
田中 達雄
2006/8/4
「広義のSOA」はWeb 2.0も包含する。広義のSOAの中でWeb 2.0的な特徴や技術が適用可能で、効果的なUIが力を発揮する分野はどこだろう。Web2.0の企業活用を考えてみよう |
リッチクライアントによるリッチなユーザーインターフェイスやユーザーエクスペリエンス(ユーザー体験)の重要性が再認識されている。そんな中、技術面でリッチクライアントの普及を後押ししているのが、SOA(サービス指向アーキテクチャ)とWeb2.0のWebAPI提供によるSaaS(Software as a Service:参照用語解説)である。
どちらもクライアントの独立性を高め、アプリケーションに依存しないユーザーインターフェイス/ユーザーエクスペリエンスの提供を可能にする。
SOA環境におけるユーザーインターフェイス |
多くのメディアでSOAの定義がされているので、細かな解説は省くが、本編では「サイロ化された(一枚岩的な)アプリケーション・システムを個別のサービス単位に分解し、再構築することでシステムに柔軟性を与えるアーキテクチャ」をSOAの特徴の1つとする。
図1 SOA(サービス指向アーキテクチャ)の概念「野村総合研究所」 |
図1を見てほしい。ここでは分解される要素にユーザーインターフェイスも含まれている。
通常、分解される前のユーザーインターフェイスは、アプリケーション・システムごとに提供される固有のユーザーインターフェイスを利用せざるを得なかった(Visual Basicで書かれたものもあれば、HTMLで書かれたWebページもある)。この場合、利用者から見たユーザーインターフェイスやユーザーエクスペリエンスに統一感はなく、使い勝手がバラバラなものとなる。
それに対し、再構築した後のアークテクチャを見ると、アプリケーション・システム固有のユーザーインターフェイスをあえて使用する必要はなく、利用者の使い勝手(ユーザーエクスペリエンス)を第一に考え、統一したユーザーインターフェイスを利用することが可能となる。
SOAの思想によって分解されたユーザーインターフェイスは、アプリケーションのサービスに対し、その独立性を高め、アプリケーションの事情に左右されない利用者に合ったユーザーエクスペリエンスの提供が可能になる。これはWeb2.0におけるWeb APIを使ったSaaSの世界でも同じことがいえる。
そんな中、リッチクライアントは、ユーザーインターフェイスの統一ならびに高度なユーザーエクスペリエンスの提供を両立する最も有力な技術である。
SOAの課題 :ビジネスプロセス変更へのUI変更は手作業 |
先に述べたとおり、SOAは変更に対し柔軟性の高いシステムを構築する概念であり、今後進むべきアプリケーション・システムのアーキテクチャの1つの方向性を示したものであるが、現在のSOA実装製品や技術の多くはサーバ側に偏っている。
本来、柔軟性の高いシステムを実現するためには、サーバ側だけでなくクライアント側の柔軟性も必要となる。しかし、多くのSOA実装製品や技術を見る限り、サーバ側に偏り、クライアント側に柔軟性を与える製品や技術はほとんど存在しない。
仮に業務プロセスに何らかの変更要求が発生した場合、サーバ側はBPM(Business Process Management:参照用語解説)製品等でビジネスプロセスをビジュアルに変更し対応することが可能であるが、そのビジネスプロセス変更に伴うユーザーインターフェイス(画面レイアウトや画面遷移、入力条件など)の変更は手作業でプログラムを変更する必要がある。このクライアント側の非柔軟性は、残念ながらいまのリッチクライアントにも当てはまる(図2参照)。
図2 SOAの課題とリッチクライアントに必要とされる機能「出所:野村総合研究所」 |
1/2 |
INDEX |
||
企業のWeb2.0活用はSOAとの融合から | ||
Page1<SOA環境におけるユーザーインターフェイス> SOAの課題:ビジネスプロセス変更へのUI変更は手作業 |
||
Page2<解決策の1つ:ビジネスプロセス&ビジネスルールの連動>
「サービス」という言葉で共通、そして融合するSOAとWeb2.0/Web2.0の企業活用 |
- 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データの選択、挿入、削除、コピー、移動、ソートに使うメソッドの使い方などを解説する
|
|