今年4月、アジャイル開発の原点とも言えるアジャイルマニフェストの公式な日本語訳が、英語版が発表された2001年から約9年経ってついに公開された。日本では現在アジャイル開発が広まっているとは言い難いが、7月に行われたAgile Conference Tokyo 2010で情報処理推進機構(IPA)ソフトウェア・エンジニアリング・センター所長がアジャイル開発の現状と今後について発表するなど、ここにきてアジャイル開発の気運が高まりつつある。アジャイル開発の特徴として、システムに対する要求の変化に柔軟に対応すること、ドキュメントよりも動くソフトウェアを重視することなどが挙げられるが、開発者のモチベーション管理もアジャイル開発における重要な観点の一つである。今回は、開発者が生き生きと働ける環境作りにアジャイル開発手法が寄与できるかどうかについて見ていくことにしよう。
アジャイル開発における日々のモチベーション管理
アジャイル開発における有名な実践例の一つとして、朝会が挙げられる。毎朝チームメンバが集まり、15分程度立ったままで打ち合わせを行う。締め切りが遠い先のことであるとなかなか仕事にやる気が出ないこともあるが、毎朝進捗を報告することにより、モチベーションを高く保つことができる。また、個々のタスクは開発者が自ら主張して引き受ける。上司から割り当てられるのではなく、自ら選択することにより、責任感ややりがいも向上する。また、アジャイル開発においては定期的な振り返り(反省ミーティング)を実施することが多く、これは個々のメンバの教育やモチベーション向上につながっている。
日本型アジャイルの必要性
高い緊張感を維持し続けられるのがアジャイル開発におけるメリットの一つであるが、それが続くと疲労も蓄積される。チームメンバと積極的にコミュニケーションを取ることによりお互いの体調や精神状態を把握することもアジャイル開発手法では大切であるとされているが、コミュニケーション技術はアジャイル開発手法の多くが提案されているアメリカと比べ、日本人が比較的苦手であると言われている分野である。そこで、日本に合った手法が必要である。
自分の体調を可視化し、チームで共有する仕組みとして、ニコニコカレンダーが提案されている。チームメンバは自分の体調や精神状態を3段階で表現したシール(たとえば黄色・赤色・青色のシール)を毎日カレンダーに貼り付ける。カレンダーはチーム全員から見える場所に配置しておく。ことさらに主張することなく、だが、貼り付けること自体は強制されているため、チーム全員の体調を気軽に把握することができる。また、twitterを利用し、悩みや開発上の問題を気軽に共有するのも良いだろう。ただし、ニコニコカレンダーよりも負担が大きく、また詳細な情報を提供できるため、利用する人と利用しない人がはっきりと分かれるといった問題や、必要以上に不調をアピールして仕事の遅延を正当化する人が現れるといった問題が生じる可能性があるだろう。
また、朝会や振り返りにおいて議論を行うとYou vs. Meになりがちであり、一方的に断罪されるメンバが出てきてしまう可能性がある。そこで議論対象をProblem vs. Usに置き換えることにより、個人の意欲を削ぐことなく建設的な議論を可能にするという、議論が苦手な日本人に合った手法も提案されている。
アジャイル開発による負荷平準化を目指せ
大きなシステムの保守を行っている場合、1年~数年に1回のシステム更改のために一時的に開発者の負荷が増大し、連日の残業を余儀なくされることがある。アジャイル開発手法は、ユーザの要求の変化に柔軟に対応することを目指した手法であり、変更が容易な設計を行うこと、効率的なテストを行うことなどはアジャイル開発手法で特によく研究されている。ユーザの要求に日々対応することによりシステムを少しずつ更改する、ということが可能になれば、開発者への一時的な負荷増大を大幅に低減することができる。ユーザの視点では、必要だと判断した機能をすぐに実現できるというメリットがあるし、開発側としては一括で更改するよりもトータルのコストは増加するが、その分を予算に計上することができれば利益が増加するだろう。
日々のモチベーション管理やニコニコカレンダーなどは、ソフトウェア開発に限らず利用することができるため、応用範囲は広そうである。また、今回は開発者に焦点を当てたが、その他の点についても、アジャイル開発手法をそのまま受け入れるのではなく、各企業風土に合った改良を施して採用するべきであろう。
また、アジャイル開発に関する手法も日々進化している。8月に開催されたアジャイルの国際学会として有名なAgile 2010 Conferenceにおいても、チームの成熟度に応じてチームリーダはどのようにチームメンバを教育すべきかといった論文などが発表されている。また、トヨタ生産方式を参考にして提唱された「かんばん」に関する論文(英語では「kanban」と表記される)は7件も発表されており、これは日本におけるアジャイル開発の参考になるだろう。また、日本におけるアジャイルの学会としては、前述のAgile Conference Tokyoの他に、XP祭りが有名である。実際にアジャイル開発を採用する場合は、これらの情報を参考にしながら、アジャイルの難しさを見極める必要があることにも留意したい。