Blog > クライアント技術 > Flex > Flex / Silverlightで実現する業務RIA(前編)
- Biz-RIAレポート、 Flex、 Silverlight、 その他、 オススメ、 クライアント技術、 初心者向け、 効果検証
2009-08-31
![]()
Flex / Silverlightで実現する業務RIA(前編)
はじめに
RIAという言葉が登場してから5年前後が経ちました。以前のリッチクライアントと呼ばれている頃に比べ社会への普及も進み一般的な言葉になってきています。しかし、RIAの業務アプリケーションへの適用はまだあまり進んでいないように見受けられます。
本記事前編では業務アプリケーション開発の昨今の状況を振り返り、今一度RIAとは何かを再確認していきたいと思います。後編ではRIA開発の主要プラットフォームの一つであるFlexとSilverlightに関して取り上げていきたいと思います。
高まるRIAへの期待
昨今RIAへの期待が非常に高まってきています。業務アプリケーション開発を取り巻く環境は不況の影響もあり刻々と変化しており、その中でRIAが大きな役割を担うようになってきました。
アーリーアダプタによる採用
従来から一般的になる前に先進技術を採用し、新規性の高い事業を他者に先行して展開しようとする企業は多く存在していました。以前はこのケースでのRIA採用が比較的多かったのですが、不況による新規事業への参入の鈍化もあり見た目にも先進的なUIでのRIAの採用は少なくなってきています。Silverlightは2009年現在ではまだこのフェーズで比較的先進的/実験的な採用がFlexなどに比べると多いでしょう。Flexはある意味「固い」プロジェクトでの採用が多くなってきています。
既存業務アプリへの不満
FlexやSilverlightを採用する際のポイントの一つに「リッチさの実現しやすさ」があります。ここ10年のHTMLベースアプリケーションではそれ以前にVB6やDelphiで実現していた「使いやすさ」程度でも実現する事がなかなか難しかった歴史が有ります。ワンポイントまたは全体の改修による既存業務のブラッシュアップもRIAの適用シーンの一つとなります。
メンテナンス技術者不足
これまでのアプリケーション開発の歴史を簡単に俯瞰すると下記の様になります:
C/S時代のアプリケーション(VB6、Delphi、Javaアプレット等)や初期のHTMLベースアプリケーションを使い続けている場合、それらのアプリケーションはすでに10年前後利用されている事になります。問題は、それらを構築していた際に利用していたツールやサーバーから言語に至るまで、開発に関わっていた技術を今用意する事が難しくなってきているという事です。特に技術者に関してはプログラマー35歳定年説が根強く残る業界という事もあり、レガシーな技術に精通した技術者をJavaや.NET技術者と同等の単価で雇用する事が難しくなってきています(単価が高いならまだしも、そもそも技術者がいない状況が多くなってきています)
技術そのものの「ライセンス切れ」問題もあり、10年前後使い続けてきたアプリケーションを「改修せざるを得ない」状況からRIAを選択するケースも多いです。この際、使い勝手から画面のヴィジュアルデザインまで今までのアプリケーションを完全に踏襲する事を依頼される事もあります。こういった、「レガシーさの再現」もリッチさの一つで、FlexやSilverlightが活躍する大きなフィールドになっています。
新しい技術の導入コスト
新しい業務アプリケーションを開発する際に、改めて開発費などが見直されており、新しい技術を導入する場合もできるだけ既存言語や技術を流用できるようにという視点が従前より厳しくなってきています。例えばSilverlightに関しては、クライアントとサーバーを共通の言語で開発できるという事でこれまでの人的資産、技術的資産を流用できる技術としても注目を浴びています。
不況の影響もありこれまで蓄積した技術を捨ててまで新しい技術を導入する体力のある企業は少なく、そういった点でFlexやSilverlightは比較的新規導入障壁の低い技術で言われています。
サーバー負荷軽減
これまでのRIAの期待とは少し毛色が違いますが、RIAへの期待の一つに「サーバー負荷軽減」があります。これまでのHTMLベーススタイルのアプリケーションでは比較的クライアントとサーバー間でやり取りをするデータの大きさが大きくなる傾向にありました。それでなくても昨今ネットワークを飛び交うデータの量は肥大化しており、少しでもサーバーが送受信するデータの量を軽減したいという思いは多くのサーバー管理者が抱いている期待です。
開発者それぞれで工夫をしてこの問題に対応してきましたが、採用する言語や技術が基本的に高速通信を想定した作りになっていれば、それぞれの開発者が皆独自に苦労をする必要が無くなります。FlexやSilverlightにはそれぞれクライアントサーバー間の通信量を軽減する技術(前者にはBlazeDSなどによるAMF通信、後者にはバイナリXML)が用意されています。これらはアプリケーションユーザーから見るとレスポンスの高速化技術になりますが、サーバー管理者から見るとサーバー負荷の軽減、さらにはサーバー運用コストの低減に繋がります。
「クラウド」採用の大きなポイントの一つもサーバー運用コストの低減であり、クラウドRIAによってクライアントからサーバーまでトータルに通信周りの無駄をそぎ落とす事が可能になります。
RIAとは
RIAとは以下の3点を満たすアプリケーションと定義する事が出来ます:
- 従来の HTML ベースのアプリケーションでは実現し辛かった操作性や視認性の実現に加え、表現力やレスポンスの向上を実現する。
- サーバ負担・ネットワーク負担の削減を実現する。
- デザイナとデベロッパが協業して開発されている
突然現れた3点目は他のポイントより重要なポイントです。この条件が満たされないと必ずRIA案件は失敗します!
RIAで必須となるデザイナという職種
RIAプロジェクトでは、要件を良く吟味しその実現に最適なユーザーインターフェースを考え出す人が重要になります。技術ドリブンではなく、あくまで要件ドリブンで画面をデザインし、顧客と対話し、最終成果物の像を描く事が出来る人をここではデザイナと呼びます。
従来のパーツクリエータではなく、時にはプロジェクトで最も先頭に立ってプロジェクトの方向性(最終成果物の像)を示せるようなデザイナがプロジェクトには必須です。アプリケーションの画面のヴィジュアルデザインのみならず操作性や生産性、学習コストから飽き難さまで、広範囲に「ユーザーの心理」を分析します。この「方向」が大きくずれている事が多く、それが実装後に発覚し大幅につくりかえたり、納品後に「使えないアプリケーション」である事が判明するというプロジェクトの話はよく聞きます。
技術が重要なのはもちろんですが、RIA採用の際にはデザイナの存在を必ず重視するようにしましょう。
業務RIA
業務にRIAは適用する事が可能なのでしょうか?今までデスクトップアプリケーションとして徹底的に作りこまれてきたアプリケーションをRIAに置き換えるようなプロジェクトは少し難しいかもしれませんが、多くのHTMLベースの業務アプリケーションをRIAに置き換える事は十分に可能であると考えています。
例えば銀行窓口の全国的RIA化が行われています:
About Adobe – Press Room – 三菱東京UFJ銀行に、国内最大級の「事務ナビゲーションシステム」を納入
金融業界は比較的先進的なIT技術を他業種に比べて早い時期に導入を開始する傾向にありますが、プロトタイプ的なプロジェクトではなく、全国展開クラスの業務システムにRIAが採用されているという事は技術に安心を与える指標の一つになるのではないでしょうか。
弊社でも様々な業種の特に「基幹システム」と呼ばれるアプリケーションを多く構築してきました。企業活動の中心を担う基幹システムにこそむしろRIAが積極的に利用されているという事を日々実感しています。
3大RIAの二翼:FlexとSilverlight
Adobe FlexとMicrosoft Silverlightは数年後にはアプリケーション開発マーケットの1/3ずつを占める技術であると予測しています(もう1/3はHTML5を含むHTMLベースアプリケーション)
特にSilverlightは3の登場以降急速に注目されており、Flexと共にブラウザ、デスクトップアプリケーション開発市場のみならず、今後携帯や組み込みアプリケーション開発にも広がっていくと考えられています。
これら2大RIA技術に関しては後編でお伝えします。










