arclamp

ITアーキテクト 鈴木雄介のブログ

ウォーターフォールとアジャイルを考える

初めて単独主催の勉強会をしました。ワークショップなので後半の1時間はディスカッションにしたのですが40人のわりには、それなりに面白い話ができた気がしています。資料とワークの結果、あとTogetterは以下から。

togetter.com

 

今回のプレゼンは純粋な「プロジェクトマネジメント論としてのウォーターフォールアジャイルの違い」に絞った話をしたので、後半のワークが現実的な話になって面白かったです。話をしたのは以下のようなことです(資料の後半に細かいメモ書きがあります)。

  • そもそもウォータフォールは必要なのか?
  • とはいえ、ウォータフォールを採用しなくてはならない状況は?
  • なぜ、アジャイルを採用できないのか?
  • チームは重要だけど、どういうメンバーがいいのか?
  • アジャイルとはいえPM的な人が必要になることってあるよね?
  • アジャイルの立ち上げってどうするのがいいの?

偶然、牛尾さんの 私は間違っていた。ごめん。ウォーターフォールは何のメリットも無い - メソッド屋のブログ とタイミングがあったので、この話もできてよかったです。で、この勉強会をした上で、記事へのコメントをしたいと思います。

 

まず、「ウォーターフォールは何のメリットも無い」は嘘です。何のメリットもないものが存在するわけないので。よって「現在のシステム開発においてウォーターフォールを採用するメリットはあるのか?」という問いだと思います。これは正しい問いかけです。

単純な議論としては「スコープが確定しているならウォーターフォールでいい」となりますが、ワークの中で「スコープを可能な限り確定するというのはプロジェクトマネジメントの基本だ」という意見はその通りだなと思いました。アジャイルでも可能な限り予測して確定することは大事ですね。ですので、確定できるだけは確定したうえで、プロジェクト進行中のリスクや変化をどの程度見込むのかに合わせてマネジメントスタイルを選択する、というのが基本的な考え方なのでしょう。

(そもそも、きちんと事前確定と変化が読めるチームであれば、何をしてもうまくいくだろうという身も蓋もない話もあるんですけど、それは置いておいて)

僕は現在のシステム開発においては「アジャイルをベースに、どこまでフェーズ切りやプロジェクトマネージャーという役割を導入すべきか」というような考え方が現実的だと思っています。

資料に書きましたが、僕はウォーターフォールアジャイルの大きな違いは以下の2点だと思っています。

  • チーム:PMという個人が中心、ではなく顧客も含めたチームでマネジメントを行う
  • 定期的判断:フェーズが終わるまでやる、ではなく定期的に判断をする

 で、この2つが重要ではないプロジェクトはありません。その理由は明確です。

  • これだけビジネスも技術も複雑化している中で全てを理解できる個人なんて存在しない。どうやってもビジネス側と開発側がチームとして力を合わせる必要がある
  • もはや「顧客からの依頼でシステムを作るのが仕事」のではなく「顧客と一緒にITを使ってビジネスをするのが仕事」という時代なので「システムができるまで待ってくれ」ではなく「出来る限りビジネスをするにはどうするか」を考える必要があり、そのために定期的に時間で区切って判断するのは大事

1つ目については、あまり議論の余地はないと思います。ただ、これは「プロジェクトマネージャー(という役割)が不要」ということではないです。チームを活かすためにはファシリテーターやコーチやメンターやお世話係や叱ってくれる人が絶対に必要です。それをPOがやるのか、スクラムマスターがやるのか、あるいはPMがやるのかは「ロール名」の問題であって、誰でもいいです。ただ、どんなチームにも、そういう人が必要です。逆に「PMだから○○をやる」「POだから○○をやる」で思考停止するほうが問題です。

2つ目は難しい問題です。日本においては「SIerという外部企業に依頼する」や「稟議決裁というすり合わせ型の判断プロセス」が制約条件となります。ただ、これは「制約」であって「制限」ではありません。顧客と開発者の間に信頼感が醸成されれば「なんとかルールの範囲でやる」ということになります(経験的に)。

なので、最大の課題は「顧客と開発者の間に信頼感が醸成できるのか?」でしょう。これはお互いの努力が必要だと思います。顧客はITのことを学び、開発者は顧客のことを学ばないといけない。ITがこれだけ重要な世の中ですから、これができるようになった企業から成長の波に乗っていけば自然に淘汰が進むはずです(というか、進んでくれないと困ります)。

よって、ウォーターフォールアジャイルかという議論は、マネジメント論としては「計画駆動か変化駆動かで使い分ければいい」というだけですし、ビジネスにおけるIT活用という側面であれば「アジャイル的な考え方(チームと定期的な判断)って重要」ということになるのでしょう。

僕個人は日本的な稟議決裁という事前すり合わせシステムがあるからビジネスが円滑に進む面もあると思っています。それはそれで日本の意思決定判断の良さ。もともとチーム主義って日本の得意技なはずなのですから(それが行き過ぎるとよくない、というのはありつつ)

 

今回、ウォーターフォールアジャイルかという議論をしてみて「マネジメント論としては偏見を持たずウォーターフォールアジャイル勉強すべき」ということと「結局、マネジメントの本質は人だよね(方法論は適切なものを選べばいい)」ということに立ち返りました。

ワークショップは次を企画したいと思います。「このネタがいい!」というのがあればTwitterで教えてくださいませ。→ 鈴木雄介/Yusuke SUZUKI (@yusuke_arclamp) | Twitter