TOP設計・移行・活用> はじめに
IdbA
IdbAで構築する生産性が高いリッチクライアント

第3回:コンポーネントの開発事例
著者:日立システムアンドサービス  田中 一義   2005/10/25
1   2  3  次のページ
はじめに

   近年のシステム開発では、配布や運用の容易さからWebアプリケーションをよく採用します。既存の業務システムに対して、Web対応の端末インターフェースを追加する開発もよく行います。その傾向にあわせて、アプリケーションパッケージの多くがここ何年かの間にWebアプリケーション化しました。

   そうして様々なWebアプリケーション開発を経験するなかで、Webアプリケーションの特徴的な課題である操作性やクライアント機能の向上の必要性にしばしば行き当たることになりました。

   しかしWebブラウザの基本的な機能だけを用いるような、シンプルな画面や機能・操作性でアプリケーションを構成することにもメリットがあります。それは、動作が軽く、理解しやすく、多くの環境で動作するあつかいやすいWebアプリケーションを作れることです。

   しかし多様な業務手順をインプリメントするうえで、どうしてもより高度な画面や機能・操作性が必要となることが実際には少なくありません。そのため、リッチクライアントの採用を主要な選択肢にいれるようになったのです。
リッチクライアントを選ぶ

   リッチクライアントは特定の技術をあらわす言葉ではなく、上記のようなWebアプリケーションの中でも特にWebブラウザを用いたHTMLクライアントが抱える特徴的な課題を解決しようとするアプローチのことをさします。

   実際のリッチクライアントの技術には異なる種類があり、それぞれ違った特徴を持っています。リッチクライアントのメリットを享受するためには、それぞれの特徴に合わせた使い分けが重要であり、用途によって使い分けることが大切だと考えられます。


フレームワーク型

   Webアプリケーションの基盤自体と同様に、HTTPやXMLといった標準技術に基づきながらリッチクライアントとしての用途を拡張するためのフレームワークを提供するものがあります。ここでは、これをフレームワーク型といい、プッシュ型通信や差分・圧縮通信、アプリケーションの対話ステート管理、リッチクライアントの記述に適した開発言語などを備えています。

   上記は、Webアプリケーションにおける課題を標準的なWebの技術の延長に位置づけられるような自然な拡張によって解決する方向性です。このようなタイプの技術は、Webアプリケーションからのステップアップとして広く一般的に適用しやすいものではないかと思います。


クライアント/サーバ型

   内部にクライアント/サーバ型のアプリケーションに非常に近い構造を持っていて、それをアプレットなどでWebの基盤のうえに提供するものがあります。そこではリッチクライアントとして見える画面まわりだけでなく、サーバ側のデータベースやロジック、クライアント/サーバ間の通信などがすべて1つの独自の枠組みの中で完結しています。

   ここでは、これをクライアント/サーバ型といい、これらの製品ではテーブル・帳票ベースの業務画面をビジュアルに開発できる開発環境を備えるものも多く、クライアント/サーバ型で培われてきた生産性などのメリットが期待できます。


コンポーネント型

   クライアント/サーバ型とは少し違った流れとして、いくつものWebサービスのフロントエンド機能をクライアントアプリケーションに取り込んで提供する枠組みがあります。これは、様々な業務サービスを提供するWebサービスや既存のWebアプリケーションを使ったサイトを組織の内外に配置し、それらを利用するリクエスタコンポーネントをクライアントアプリケーションに集約する構成をとります。

   クライアントアプリケーション側は、これらリクエスタの入出力を適切に組み合わせて機能を構成します。こうして作成したクライアントアプリケーションは、既存のデスクトップアプリケーションである場合もあるし、こうしたコンポーネント集約のために作られた専用のプラットフォームである場合もあります。ここでは、これをコンポーネント型といいます。

   今回紹介する「一括!コマース『速販』」はこのようなプラットフォームであるIdbA上に構築された、コンポーネントベースのリッチクライアントアプリケーションです。

1   2  3  次のページ


株式会社日立システムアンドサービス 田中 一義
著者プロフィール
株式会社日立システムアンドサービス  田中 一義
株式会社 日立システムアンドサービス 研究開発センタ 主任技師
J2EE、Web多階層アプリケーションに関わる技術開発と社内普及活動をきっかけとして、自社フレームワークおよびコンポーネント開発に従事。オブジェクト指向/サービス指向モデリングの適用、エンタープライズアーキテクチャへの取り組みなどをテーマとして、要素技術の研究開発プロジェクトを推進。


INDEX
第3回:コンポーネントの開発事例
はじめに
  コンポーネントベース開発の実際
  ユーザインターフェースの開発