全4989文字
PR

アジャイル開発の普及に伴い、開発するシステムの大規模化が進んでいる。複数のチーム体制で1つのシステムを開発するプロジェクトも増えてきた。その際には、1チームでの開発とは異なるプロジェクト運営が必要になる。ミクシィとKDDIの事例を基に、大規模アジャイルの勘所を説明する。

 複数のアジャイルチームを編成し、1つのシステムを開発する。そんな「大規模アジャイル」のプロジェクトが増えてきた。プロジェクトを進行中の企業はミクシィやKDDI、NTTデータ、日立製作所など枚挙にいとまがない。

表 大規模アジャイルの主な事例
複数チームでアジャイル開発
表 大規模アジャイルの主な事例
[画像のクリックで拡大表示]

 複数のチームで開発をすると、チーム間でのコミュニケーションや調整に手間がかかったり、スキル差が拡大したりする問題が生じがちだ。そのため1チームでの開発とは異なる体制や運営が必要になる。

 アジャイル開発の規模を拡大する手法には「Scaled Agile Framework(SAFe)」「Large Scale Scrum(LeSS)」「Scrum of Scrums」などがある。これらはいずれも複数チームによる開発、または全社をアジャイルで変革する際に開発者や経営層が行う業務を定めており、大規模開発に有効だ。

 ミクシィとKDDIの取り組みを通じて、複数チームによるアジャイルの勘所を見ていこう。

ミクシィ
リリースマネジャーを配置 チーム間の調整を図る

 ミクシィは子どもの写真や動画を共有するスマートフォンアプリ「みてね」の開発プロジェクトで、複数チームによる開発を進めている。同プロジェクトの体制はスマホアプリを開発するネーティブアプリチーム(以下アプリチーム)、人工知能(AI)などを使ったコンテンツを開発するData Engineeringチーム、開発の効率化や自動化、インフラ周りを整備するSREチームから成る。このうちアプリチームがアジャイル開発を採用しているが、当初は数人の単一チームだった。

 2019年秋に転機が訪れる。みてねの利用者数の増加に伴い、新機能や機能改変の要求が増えた。そこでアプリチームの開発者を10人に増員した。

 しかしそれによって「コミュニケーションが取りづらくなった」とプロジェクトリーダーを務める酒井篤みてね事業部開発グループマネージャーは振り返る。チーム全員が参加する日々の情報共有会議「デイリースクラム」や要件の検討などで時間が顕著にかかるようになった。

 そこで酒井マネージャーはアプリチームを、5人ずつに分割し2チーム体制を敷いた。同時に、大規模アジャイル開発の手法、LeSSを採用した。

図 みてねプロジェクトの組織体制
図 みてねプロジェクトの組織体制
生産性向上のためチームを分割
[画像のクリックで拡大表示]
ミクシィの酒井篤みてね事業部開発グループマネージャー
ミクシィの酒井篤みてね事業部開発グループマネージャー
[画像のクリックで拡大表示]

決まり事の少ないLeSSを採用

 LeSSは複数のチームで1つのプロダクトを開発する。要求に基づいて優先順位を付けたタスクリストの「プロダクトバックログ」は全チーム共通のものを1つだけ運用する。各チームのリーダーは交代しながら務める。開発、評価、改善という一連のプロセスを行うスプリントの期間は、全チームが同じ日に開始・終了する。こうした決まり事やルールがあるが、大規模アジャイル手法の中では比較的少ない方だ。

 酒井マネージャーがLeSSを採用した理由の1つは、決まり事が少ないことだという。アプリチームは2015年のリリース以来、メンバーの入れ替えはあったものの技術を蓄積し、メンバー同士でコミュニケーションを取る文化を醸成してきた。

 新たに導入する手法に決まり事が多ければ、一から開発体制をつくり直さなければならず、効率的ではない。そこで決まり事が少ないLeSSを採用し、「これまでに培ったチームのノウハウを最大限に生かした」(酒井マネージャー)。

 LeSSは、開発するシステムの責任を負う「プロダクトオーナー」を1人と定めている。この点も採用の理由になった。大規模アジャイルの手法の中には複数のプロダクトオーナーを設けるものもある。しかし酒井マネージャーは「みてねはリリース当初から(会長の)笠原健治がプロダクトオーナーを務めている。一貫したプロダクトを提供するためにも複数のプロダクトオーナーは必要ないと考えた」と説明する。