2008年5月7日水曜日

[RIA][memo]RIAのメリットというかを殴り書き

青いこと書いてたなー。。。。。。


以下、本文



ビジネス視点のRIA活用

①RIAによるビジネスメリット
②RIAに取り組むには?
 ~コンサルタント選びのポイント~
③RIAプロジェクトの進め方
 ~現物主義~
④RIAの保守・運用
 ~攻めの保守・運用~


全体を通じて
・ユーザー視点のアプローチ
・テクノロジー中心のアプローチ
の両方が必要であることをテーマとする

①RIAによるビジネスメリット

ユーザー視点と管理者の視点で考えること
ユーザーは使いやすい、楽しい、仕事がはかどる
管理者は管理が楽になる
これらはシステムを使うための目に見えづらい負担からの解放
システムを使うための苦労が減る分、ユーザーは一件でも多くの仕事をこなすし、あるいは高品質なサービスにつながる。
管理者は次の改善策、運用策を考えることができる。
繰り返すがRIAはかかわる人間に対し、システム利用時にまつわる「使うための負担」を下げ、より本来の業務に注力
できるようにする技術である。またそれを強く意識して活用されるものである。

②RIAに取り組むには?
 ~コンサルタント選びのポイント~

RIAのプラットフォームベンダ(AdobeやMicrosoftなど)に相談をすると「開発経験のあるベンダーのサポートをえてください」となることがおおい。
その言葉に従いキックオフ。でも何故かプロジェクトの進捗が芳しくない。
もしかしたらそのベンダーの経験領域の外の仕事をしている可能性がいあります。
たとえば一口にFlashといっても、エンジニアのタイプには下記があります。

Flashデザイナー/アニメーター
→Web上のコンテンツなどを制作する人。使用ツールはFlash CS3
Flashデベロッパー
→ActionScriptを記述してプログラムを構築する人。エンジニアの数は非常に少ない。
Flexプログラマ
→FlexBuilderを使ってプログラムを構築する人。じつはFlexプログラマの中にも
・Mxmlに強い人
・ActionScriptに強い人
・サーバー側との通信部分に強い人
などの種類がある。
UIデザイナー
→アプリケーションのユーザーインターフェースデザインについて設計、構築する人。Flexプロジェクトだとmxmlを書くことも多々あり。
 またUIデザインから要件を詰められる人はいなくもないが希少人種
サーバーサイドのエンジニア
Java、PHP、.NET、等々のLogicを作る技術があってさらにデータベースとの連携。。。。。。

FlashやAIRが実行環境となっている場合、構築技術としては広い範囲をカバーする必要があるため、Flashができれば即OKとはなりません。
他にもOOP理解していますか? OOPの理解が拡張性、変更容易性の高い設計に結びついていますか?
生産性と品質を確保するためのフレームワークを熟知してますか?
フレームワークの相性を理解していますか?
中~大規模プロジェクトの経験はありますか? などなど。プロジェクトマネジメントのスキルと実装スキルは別物です。
まとめるとRIAはこれらの様々なスキルを統合して進めるスキルが必要です。それがないとシステムの「全体最適」は図れません。
そしてFlex/Flash/AIRの独特なところ、深いところをどうにかできるスキル。
ユーザーからみた要望とテクノロジーからの検証を両面で進められるスキル。
これだけ必要です。
どれか欠けるなら代替え策が必要です。

③RIAプロジェクトの進め方
 ~現物主義~

アジャイル型開発に対する誤解。
変化の激しい市場に適用させるためにあるプロセスであること。
RIA開発におけるIIDのメリットは→現物主義であること。
設計と実装で見積もりを二回とること。これ重要。
「やっぱりできないんですけど」のリスクは避けたい
ベンダーがきついと品質にも悪影響。
win-winであることが重要

④RIAの保守・運用
 ~攻めの保守・運用~

Flex/AIRであればユーザーごとにカスタマイズも可能(一部ですが)
アカウント管理によって権限を設定して使える機能と使えない機能をもたせる。
動的CSSで見た目を変える。
これらは開発が上手くできていれば変更拡張は簡単
よって
管理者は業務に集中できる
ユーザーは改善要望をだしやすくなる。
より強力にシステムを使い倒すことができる
そして開発ベンダーをキープしましょう。またキープできるベンダーを探しましょう。
保守体制を切り分けましょう

ユーザー → 一時対応(あなた)→対策(ベンダー)

「もちはもちやに」
結構、大切なんですよ♪

逆説的に言うと
ユーザーが使いづらいのに改善されないシステムとの決別