@IT|@IT自分戦略研究所|QA@IT|イベントカレンダー+ログ | ||
Loading
|
|
@IT > FlashとColdFusion MXによるエンタープライズアプリケーション構築セミナーレポート |
企画:アットマーク・アイティ
営業企画局 制作:アットマーク・アイティ 編集局 掲載内容有効期限:2003年12月11日 |
|
|
2003年10月17日(金)、東京・渋谷マークシティのルネッサンスセンターにおいて、「FlashとColdFusion MXによるエンタープライズアプリケーション構築」セミナーが開催された(主催:マクロメディア、アットマーク・アイティ、協賛:アイ・ティ・フロンティア)。いま、Webアプリケーションには「より使いやすく、よりリッチなユーザーインターフェイスをもつ」ことが求められている。本セミナーでは、Flashを活用したリッチ・インターネット・アプリケーション(RIA)がもたらすメリット、RIAを容易に構築することができるColdFusion MXの紹介、そしてColdFusion MXを使った最新のユーザー事例を紹介した。
■なぜいまRIAへの関心が高まっているのか? 政府の「ものづくり白書」は、「技術開発が限界に達している商品は、独創的なデザインで付加価値を高める必要がある」と述べている。いまのWebアプリケーションを取り巻く状況も、この言葉と同様といえないだろうか。以前、アプリケーションにおける「快適」の意味は高性能だったが、それは昔の話だ。いま、求められている快適とは、デザイン性や操作性の高さである。もはや性能だけではアプリケーションの良し悪しを決めることはできなくなっているし、そのためにSIerは顧客への提案力の面で限界を迎えているといえるだろう。 ユーザーインターフェイスが悪いアプリケーションは、ユーザーのミスや作業の遅延を招いてしまうもののことをいう。ユーザーが操作を間違えることによって無駄になる労働力は、年間の累計でみるとかなりのものだといえるだろう。また操作方法が分からないために周りの人に「教えてほしい」が伝ぱする事態も、時間だけでは計れない無駄を生じているのではないだろうか。 結論を言えば、使い勝手のよいユーザーインターフェイスを実現するのがRIAである。そして、「UIは生産性のショートカット」だ。 ■RIAを実現するための技術要素とは FlashはRIAを実現するための有効な手段の1つである。そして、開発に最適なツールとしてFlash MXが、サーバサイドのツールとしてColdFusion
MXがある。 これらのツールを使いFlash開発を行う場合の開発者にとってのメリットは何だろうか。まずは、クライアントとサーバ間の連携が非常に容易なことだ。連携のための複雑な手順の記述は必要なく、エンジニアはユーザーインターフェイスの記述に専念できる。また、これはFlashの特徴だが、Flashはファイル全体がダウンロードされなくても、ダウンロードされた頭からFlashプレイヤーによって逐次実行される。そのため動作は非常に軽快である。「リッチなインターフェイス=動作が重い」という図式に悩む必要はない。さらに、Flashの動作はWebブラウザの種類に依存することが少ないため、Webアプリケーションの開発の際には必ず必要だった、ブラウザ依存性のテスト工数が大幅に削減できる。 ■開発の際に留意する点はなにか? RIAの開発では、ユーザーインターフェイスの設計手法が確立していないためまだコストがかかる。一方でWebブラウザの依存性テストを減らせるため、テストの工数は減る。RIAで実装する意味(ユーザーインターフェイスによる付加価値化)を考えた上で、上流の工程に時間を割かなければ、よいWebアプリケーションはできないだろう。 本来あってはならないことなのだが、いまのWebアプリケーションの開発では開発途中にユーザーインターフェイスを変更することが多い。しかし、Flashはいちど作成したものの変更はコスト的にも技術的にも難しいので、通常のWebアプリケーションの開発と同様だと甘く考えることは危険である。すなわち、ユーザーインターフェイスの設計部分に、十分な工程と予算を確保して開発に臨まなければいけない。ここをきちんと育てることが、よりよいRIAを生産し続けられる土壌となる。 また、優れたユーザーインターフェイスの設計と構築には、「使いやすさ」「工夫」「思慮深さ」「楽しさ」について考えることができるクリエイティブな能力をもった人間が必要だが、こういった人材をSIerが内部で育てることは難しいだろう。社外のクリエイティブな集団とコラボレーションするのが現実的であるし、そうすべきだと確信している。実際、われわれもデザインとユーザビリティの設計に優れたパートナーと仕事をして成功している。RIAの開発を成功するためには、自分たちが技術力をもっていることは当然だが、それに加えて、外部のデザイン系のパートナーとうまくコミュニケーションできる人間が開発をマネジメントすることが必須であると考える。 「Rich
Internet Applicationで実現する次世代Webアプリケーション」
■Rich Internet Applicationで実現する次世代Webアプリケーション われわれは、リッチ・インターネット・アプリケーション(RIA)はユーザーに「ユーザー体験」を提供すると考えている。ユーザー体験とは、使いやすさ、情報の見つけやすさ、そしてそれらから得られる満足感のことだ。モノ作りの世界で商品価値の差別化が難しくなっているように、インターネットの世界でも同様のことが起こっているとわれわれは考えている。いかに付加価値を付けるか、これがこれからは大事なポイントとなる。 スターバックスを例に考えよう。スターバックスの商品単価は高めだが、多くの人々がコーヒーを飲んでいる。それは、多くの人がスターバックスでコーヒーを飲むことに付加価値を感じているからだ。リラックスできる環境や、ミルクに豆乳を選択することもできる他のコーヒーショップにはないリッチ感が、顧客にプレミア感を与えている。 RIAは、Webサイトで商品を購入する、情報を探す、あるいはビジネスアプリケーションで仕事をするということに、ユーザー体験を提供する。HTMLの限界を超えて、クライアント・サーバやデスクトップアプリケーションのようなユーザビリティを提供するし、インターネットを介した双方向のコミュニケーションも提供する。 RIAをわれわれが語るようになって1年が経つが、その間にさまざまなユーザーがRIAを採用してきた。そのいくつかを紹介しよう。 イギリスのIOKIOは、デジタルカメラの販売サイトを提供している。多くの商品の中から自分の欲しい機種を価格、画素数、ズーム機能、重さなどの条件で絞っていくことができる。99個あったカメラの中から容易に自分が求めるカメラが選べるしくみを提供している。
また、米国MINIのサイトでは、自分の好きなMINIクーパーのカスタマイズしのシュミレーションを見ることができる。ボディの色、サスペション、ホイール、エアロパーツにいたるまで、ユーザーが5つのステップを経ることによって自分好みにカスタマイズされたMINIクーパーを作ることができる。作成した仕様は近くのディーラーにメールで送ったり、友達に見せることもできるようになっている。
この米国MINIの試みは大成功を収めた。BMWに買収された後の米国MINIの昨年の販売目標台数は2万台だったが、結果はそれを50%上回る3万台以上の実績を上げた。驚くことに、購入者の80%がこのサイトでMINIクーパーを作り、購入に至っている。RIAが大きな成果を上げた実例だ。 RIAは、ビジネスアプリケーションでも大きなメリットをもたらす。ある製品の売上に責任をもつビジネスマネージャが売上状況を見るとき、数字だけではなくビジュアルで見れたほうが状況を的確に把握できる。1つの例を紹介しよう。これは、製品のカテゴリごとにグラフを見るだけでなく、製品別、地域別といった具合にドリルダウンして分析を行うことができる。もう1つの例はグループウェアだ。最新のFlashプレイヤーでは標準でビデオコーディングが可能になっている。企業内でリアルタイムに音声、ビデオ、テキストによる双方向のコミュニケーションを実現することができる。 本来、アプリケーションそのものが作業負荷になってはいけない。しかし、いままではアプリケーションを使うことも仕事の一部という状況があった。RIAは、直感的にアプリケーションを使うことを提供し、アプリケーションを仕事をスピーディーにこなすための道具として提供することを可能にするものだ。 ■ColdFusion MXで構築するRich Internet Application J2EEはJSP、Servlet、EJBなどのさまざまな要素でできあがっている。非常にスキルが高く、ミッションクリティカルなシステムを作ってきた人たちの得意な分野だ。一方で、HTMLからユーザーインターフェイスの開発に入ってきた人たちにとっては、非常に敷居が高いはずだ。 しかし、RIAの実現、つまりはユーザー体験の実現を考えると、HTMLを得意とする人たちがプレゼンテーションレイヤを自在に作れるしくみが必要だ。マクロメディアは、ColdFusion
MX(以下CFMX)を、プレゼンテーションレイヤを作成するためのアプリケーションサーバとして提供している。CFMXは、CFML(ColdFusion
Markup Language)というスクリプト言語を開発言語として提供しているため、HTMLのようにタグベースでアプリケーションを構築できる。 しかも、CFMXは100%Javaで書かれているため、JavaのAPIを使ったアプリケーションをタグベースで自在に作れる。データベースから抽出したユーザー情報をもとに、Java
Mailを使って大量のメール配信を行うことも可能だし、簡単なタグでApache AxisのAPIを使ったWebサービスの構築も可能だ。CFMLはWebアプリケーション作成に特化した言語なのでコンソールアプリケーションを作ることはできないが、Webアプリケーションに必要な処理は一通り記述できる。さらに、CFMLは、ASP(Active
Server Pages)やPHP、JSPと比較して非常に少ないコーディング量で処理を記述できるため、非常に生産性が高く、将来のコードのメンテナンス性にも優れている。 ところで、CFMXはJ2EEサーバの上で動作している。CFMXはリクエストが来るとCFMLをJavaのクラスにコンパイルして、J2EEコンテナ上で実行する。2回目以降は、すでに生成されているクラスファイルが実行されるというしくみだ。JSPと同様と考えれば理解していただきやすいだろう。 CFMXは、Javaの敷居が高いと感じているデベロッパやデザイナが、J2EEのメリットを活用してアプリケーションを作成するためのサーバ、そしてRIAを実現するためのサーバといえる。われわれは、IBMやBEAとは協力関係にあり、特にIBMにはCFMXをOEMで提供している。CFMXはJava
Verifiedを取得しており、高いポータビリティを提供するサーバだ。すでにJavaの資産をもっているユーザーは、そのままCFMXで再利用することを可能にする。 「次世代統合Webソリューション“EnterpriseRIA”」
■アイ・ティ・フロンティアはEnterprise RIAを推進する WebユーザーインターフェイスのユーザビリティがFlashによって飛躍的に向上し、バックエンドにある基幹系システムと統合できるようになった。それによってITへの投資効果を最大化することが可能な時代だ。これをEnterprise
RIAと呼ぶことにしている。 アイ・ティ・フロンティアは、これまでColdFusion MX(以下CFMX)、JRunといったアプリケーション・サーバ、そしてFlash技術を用いたシステム構築を豊富に経験してきた。Enterprise
RIAをご提案できる基礎を築けたと考えている。 CFMXと開発環境であるStudio MX。そして、サーバとクライアント側のFlashとの通信を実現するFlash Remotingに関してノウハウを蓄積した。また、今後はFlashによるコンテンツ配信やマルチメディアコミュニケーションを実現するコミュニケーションサーバの需要も増えると見込んでいる。さらには携帯電話のリッチクライアント化も急速に進むと考えており、準備を進めている。また、一方では、弊社は負荷分散装置「BIG-IP」とCFMXを組み合わせ、高パフォーマンス、高可用性を実現するノウハウを蓄積してきている。 ■Enterprise RIAのねらい Flashムービーは、従来までインタラクティブなユーザーインターフェイス用途やエンターテイメントのためのものと考えられてきたが、業務アプリケーションのインターフェイスを実現する手段としても有効な手段となってきた。それはなぜか。 Webアプリケーションはいま大きな課題に遭遇している。例えばデータエントリー系の業務では、Webベースのインターフェイスはその業務オペレーションに合わない。サーバとたびたび通信を行う画面遷移やマウス操作による生産性の低下、オペレータが使い慣れているファンクションキーが使えないなどの問題がある。 その他の問題としては、最新情報を取得したい際にはリロードを行う必要がある。サーバからデータがPushされてリロードしなくても新しい情報を画面に出すということが難しい。ダム端末(エミュレータ)の時代には可能だったことが、Webではできなくなってしまった。しかし、Flashであれば、これらの問題をすべて解決できる。つまり、RIAはダム端末時代と同様の使いやすさ、生産性を実現する業務に適したアプリケーション形態だといえる。 ■Enterprise RIAのメリットとは Enterprise RIAは、特に既存の情報系システムとの統合にメリットがあると考えている。SIerの皆様は、お客様に対してこの分野に投資効果があると説得力あるご説明をしていただけると思う。 その理由については事例でご説明しよう。具体的な事例に触れる前に、Flashの特徴とメリットを明確にしておきたい。 それは、「使い易さ」「見易さ」「コスト削減」の3点にまとめることができる。まず、使い易さについては、以下のように整理できるだろう。
次に、見易さについては、以下のように整理できる。
最後に、コスト削減については以下のように整理できる。
以上のようなメリットが提供される。そしてさらに加えるなら、操作性の向上により、システムの利用率が向上することが期待できる。すなわち、システムへの投資効果を上げることが可能になるわけだ。 では、開発者にとってのメリットはどうだろうか。Flashによるリッチクライアント技術は、サーバ側のテクノロジを選ばない。サーバ側はJ2EEでも.NETでも構築可能なため、サーバ技術者を選ばない。また、Webブラウザごとにコーディングを切り替える必要がなく、ブラウザ依存の部分を吸収するためのテスト工数を削減することが可能だ。また、今後、さらなる普及が見込まれる携帯電話やPDA、カーナビ、ネット家電などのデバイスにもFlashは対応しており、Flash技術を習得することで、そういった新しい成長分野に参入することも可能になる。 ■事例紹介 「配船手配業 基幹システム」 基幹業務をリプレースしたもの(基幹業務にも耐えうる信頼性を持っている)。既存のお客様のシステムの操作性を変えることなく、ブラウザベースでRIA技術により再構築と新機能の追加を実現している。ファンクションキーによる操作により、基幹業務における生産性を大幅にアップし、コスト削減を実現した。
「製造業 設計ドキュメント管理システム」 UI表現(アコーディオンパネルなど)を重視した大幅な改善を行い、HTMLを利用したシステムに比べて、大幅な業務効率の向上を実現している。 「製造業 工程管理システム」 基幹システムと連携し、受注データをベースに新システムからの設計工程データと統合してRIAにより視覚化(アクティブなガントチャート/アクティブなグラフ)することにより、状況のすばやい把握・判断を促進した。
また、視覚化されたグラフを直接操作することにより、直感的で高い操作性を実現した。
|
【主催】 マクロメディア株式会社 株式会社アットマーク・アイティ 【協賛】 株式会社アイ・ティ・フロンティア
|