仕様書を書かず、開発途中で挙がってくるさまざまな機能要求をツールで管理しながら、プロトタイプを改良し続け、β版リリースまでこぎつける。Webアプリケーションの効率的な開発方法を事例を元に紹介する。});4月27日にサービスを開始したソニーの映像共有サービス「eyeVio」(アイビオ)の構築には、企画元のソニーのほか、実装担当のギガプライス、UI設計・デザイン担当のシンク、ディレクションおよびプロジェクト管理担当のウルシステムズが携わっている。実装3〜4人、デザイン2〜3人、ディレクション・プロジェクト管理1人が開発における実働部隊の人数だ。開発期間は仕様のディスカッション期間を含め、およそ1年。α版の開発から計算すれば7カ月強といったところ。限られた開発期間の中、独自の開発方法論で新サービス立ち上げを支援したウルシステムズに、構築の舞台裏を聞いた。定例会議で仕様を議論2006年5月のゴールデンウイークが明けたころ、ウルシステムズおよびそのほかの開発担当企業に、ソニーから新動画共有サイトのコンセプトが告げられた。この時点では、具体的な機能要求はほとんど固まっていなかった。2006年6月から毎週、ウルシステムズを中心に開発担当者たちが集まって定例会議を開くようになった。この定例会議で議論されるのは機能要求の詳細である。2カ月かけて映像共有サービスの基本機能を実装したプロトタイプ(原型)を構築した。このプロトタイプに盛り込まれた基本機能はβ版までほとんど継承された。この定例会議による機能要求の議論は、4月27日の本サービス開始直前まで行われた。プロトタイプを基に、議論した機能要求を実装し、2週間に1回のペースでリリースを行うという反復開発の手法を採用することで、要求を着実に実装に反映させる全体的な枠組みを作っていった。仕様書は存在しない紙で書かれた仕様書は存在しない。データ上でも存在しない。定例会議で提出されるさまざまな機能要求は、プロジェクト管理ツール「trac」で管理した。tracでは、機能要求の1つ1つを「Ticketを切る」ことで管理する。ある機能の実装を依頼するTicketを切ったとする。開発に携わる要員全員がtracへのアクセス権を持っており、そのTicketにコメントを付けられる。Ticketのバグ管理やタスク管理が効率的に行えるというわけである。さまざまなTicketはカテゴリ(マイルストーンと呼ばれる)にまとめられ、全体の進ちょく度合いをグラフで把握することが可能である。全体が俯瞰(ふかん)できる目に見える設計書は最初から存在せず、議論によって提出された多種多様な機能要求が、ある程度の期間で区切られたマイルストーンの中に雑多に蓄積され、それらの機能要求が次から次へと実装(あるいは修正)されて、新しいプロトタイプがリリースされていくというサイクルを反復する。ディレクションとプロジェクト管理の重要性サービスのコンセプトはそれなりに固まっていたとはいえ、詳細な機能要求は開発作業と並行して生成された。そのらめ、開発プロジェクト全体のディレクションと進ちょく管理は大変重要であった。ウルシステムズの本開発プロジェクトにおける立ち位置は、ディレクションおよびプロジェクト管理だが、より具体的には3つの役割を演じた。「アイデアに対する技術的なアドバイス」とは、ビジネスの側面から要求される条件を技術的な観点で判断し、適切な機能要求に落とし込んで、実装担当者に受け渡すということを指す。今回の開発プロジェクトでは、例えば、「Flashをどこまで活用するか」の判断基準を示すことなどが挙げられる。Flashを使う部分は必要最小限にとどめるWebブラウザのネイティブな機能だけを利用してサービスを実装するこの2つが、Flashの利用に関する技術的な方向性の基本だった。特定のベンダに依存する技術の利用をできる限り避け、同時にユーザーの負担(プラグインのダウンロードを回避する)を軽減させたいという考えで、技術的なディレクションを行った(ActionScriptよりもJavaScriptの方が技術者も多く、公開されているノウハウも多いためと同社は説明する)。結果的に、動画共有サービスという性質から、動画が表示される画面部分と操作ボタンにFlashを使ったが、それ以外の実装作業にはAjax技術を採用した。α版の開発に着手したのは2006年10月。その後、2007年1月にα版をカットオーバーし、4月27日にβ版を公開した。α版の公開からβ版の公開までのおよそ3カ月間で、公開範囲を自由に設定できる「プライベートシェアリング機能」の要求や、不適切な動画の監視体制の詳細を固めた。α版は関係者へのレビューが主な目的だが、そのレビューで吸い上げたニーズを機能として実装した。β版を公開した現在でも開発担当者による毎週の定例会議は継続して行われ、2週間ごとに機能追加をする体制を維持している。インターネット技術を活用したコンシューマ向け新サービスの立ち上げは、短い開発期間と、変わることを前提とした数多くの機能要求、限られたコストという厳しいプレッシャーに常にさらされている。その意味で今回紹介した柔軟なサービス開発の手法は、時代に要請されたものだといえる。広告に関するお問い合わせメールマガジンSpecialインデックスRSSfacebooktwitter利用規約ITmediaはアイティメディア株式会社の登録商標です。