前回に引き続き、今回は「ReMIX Tokyo 09」(レポートはこちら)のキーノートで披露されたヤフーのSilverlightアプリケーションを開発したセカンドファクトリー(2nd FACTORY)に話を伺いました。Silverlightアプリケーション開発の実際はどうなのか、開発者とデザイナとの共同作業は上手くいったのか、RIAアプリケーション開発のための組織体制・チーム編成などについて齋藤善寛氏に聞いてみました。

セカンドファクトリー取締役副社長 シニアUXデザイナー 齋藤善寛氏(写真提供:セカンドファクトリー)

セカンドファクトリーのSilverlightアプリケーション開発体制についてはReMIX Tokyo 09のブレイクアウトセッションで詳細が説明されました。中でも、従来の開発体制と大きく異なるのはUXのデザインと、デザインをシステムと結合する専門的な役割を担当するXDとIDと呼ばれるロールです。こうした役割はSilverlightアプリケーション開発に必要であると当時に、理想的な組織体制だとは思います。しかし、前例がないだけに各ロールに対してどのような能力が求められるのか、判断が難しいでしょう。

まず初めに、UX のデザインを専門とするエクスペリエンスデザイン(XD)について質問してみました。

図01 セカンドファクトリーのチームモデル(ReMIX資料より)

――XDに相当する役割は、どのようなスキルを持った人材が担当することが望ましいですか。

齋藤 難しい質問ですね。たぶん、いろんな経験をしていることが大事だと思います。Webのディレクションとか、コンテンツ、システム開発などです。私も、元々Flashのコーディングやグラフィックデザインをやっていたんですけど、そこからUX専門となるには、もう少し人間をどうとらえるかとか、人間中心設計と呼ばれるようなプロセスを学んだりだとか、インタビューや分析など、人にフォーカスしたスキルがいるのかなと思います。

――UXのデザインを専門とする人は、どのくらい技術面でSilverlightの知識が求めらますか。デザインを専門とする人が開発に加わると、どうしても実装部分の設計や開発者とコミュニケーションが必要になると思います。

齋藤 Silverlightで何ができるのかできないのか、または簡単なのか難しいのかということは分析しました。そうした知識はUXデザイナにも求められると思います。

やはりUXにフォーカスした設計を専門的に行うには、多様な経験に加えてチームを統率する能力が求められそうです。この点においてはアーキテクトの役割に近いものでしょう。XDに相当する役割を担うには、実装レベルの基本的な仕組みを理解しており、開発者とデザイナの作業を上流から調整しなければなりません。このようなUXの専門家を育成することが重要になるでしょう。

ReMIX Tokyo 09のデモンストレーションで公開されたSilverlightアプリケーションの開発には「Expression Blend 3」で追加される目玉機能である「SketchFlow」がプロトタイプの作成に使われていました。そこで、SketchFlowやExpression Blendの使用感についてもうかがいました。

――SketchFlowを使っているのは、デザイナさんですか?

齋藤 今回は、デザイナではなく開発側が担当しました。弊社の開発体制では、コードを書くシステムデベロッパ(SD)とグラフィックデザイナ(GD)の間にインタラクションデベロッパ(ID)という存在がありまして、デザイン上の動きとコードの両方を見るのがIDになります。SketchFlowは純粋なデザイナが担当してもよかったと思いますが、今回はIDが担当しました。今後は、たぶんデザイナの領域だなと思っています。

――デザイナさんって、素直に Expression 使ってくれます?

齋藤 なんか、まぁ、壁はあると思います。Microsoft Officeのように簡単ではないけれど、今回のSketch FlowなんかはPower Pointのアニメーションぽい雰囲気で使えるんじゃないかなと思います。

――デザイナさんだと、Adobe Systems製品を使っている方が多いですよね。現時点での、予定されている「Expression Studio 3」のAdobe製品との相互運用性に関しては満足されていますか?

齋藤 今回のバージョン3でかなり改善されていると思います。これまで、純粋なグラフィックデザイナはビットマップレベルのグラフィックに対して責任を持っていればよかったんですけれど、今回のExpression Blend 3からは、Photoshop (PSD)やIllustrator (AI)を簡単にインポートできるようになったので、これからは構造にも責任を持ってほしいと思っています。

デザイナの多くは仕事で利用する多くのデジタル資産をAdobe製品のフォーマットで保有しているため、Expression Blend 3でPhotoshopやIllustratorのファイルをインポートできるようになったのは大きいでしょう。ビットマップで渡されたデザインをアプリケーションで再現する手間を省略できるようになります。

――Silverlightアプリケーションの開発は、デザイナはExpression BlendでXAMLを書いて、開発者はVisual Studioを使ってC#やVBでロジックを書くと、分業して作業を進めることで生産性を高められるよと言われていますが、実際にやってみるとXAMLの部分で問題が発生するとデバッグが難しいと思います。どうやって解決されていますか?

齋藤 それは、デザイナがXAMLを作るというのが前提の場合ですよね。弊社では、基本的にはExpression BlendでXAMLを作成するのはプログラマなのでそうした問題はありませんでした。ただ、Silverlight 2のころはドロップシャドウのようなエフェクトができなかったので、それ自体を部品のデザインに含める必要があり、構造上難しかったりレスポンスが遅くなったりするということはありました。デザイナにもXAMLで何が実現できるのかという知識は持ってもらうよう、弊社では取り組んでいます。

Silverlightや.NET Frameworkの技術的な背景を理解していないデザイナが作成したXAMLを利用するということに抵抗を覚える開発者は少なくないでしょう。どんなにExpression Blendが便利でも、ロジックとの結合を意識しなければ問題が発生したときに対処できません。現時点では、セカンドファクトリーのようにXAMLの記述は開発者(またはIDのように開発者とデザイナの中間的な役職)が担当したほうが無難かもしれません。

Microsoftが掲げる理想ではExpression Studioをデザイナが使い、Visual Studioを使う開発者とプロジェクトを共有して分業できるというものでした。もちろん、Silverlightの開発経験を積み重ねた成熟した組織であれば実現できますが、そこに至るまでには計画的にチームモデルを移行させる必要があります。

開発者にとってVisual Studioで開発やデバッグができるという点はSilverlightの大きな魅力です。Windowsプラットフォームで多くの実績を持つVisual Studioは、設計、コーディング、テスト、チーム連携など、さまざまな支援機能を備えています。これにExpression Studioによる高品質なデザインを加えれば、生産性とUX の向上を同時に実現する理想的な環境になります。誰がデザインに責任を持ってExpression Studioを使うのかについては試行錯誤が必要だと思いますが、その時はセカンドファクトリーのチームモデルが参考になるでしょう。

著者プロフィール:赤坂玲音

フリーランスのテクニカルライタ兼アプリケーション開発者。主にクライアント技術、プレゼンテーション技術が専門。2005年から現在まで「Microsoft MVP Visual C++」受賞。技術解説書を中心に著書多数。近著に『Silverlight入門』(翔泳社)などがある。