最近の開発スタイル
現在の私が所属する部署は開発体制が完全なウォーターフォール型ではなく、アジャイル的な開発です。
ただ、アジャイルな開発について体系的に学ばなかったので、アジャイル開発で名著と言われている『アジャイルサムライ』を読んでみて考えたことをまとめます。
開発の前提
- プロジェクト開始時点に全ての要求を集めることはできない
- 集めたところで、要求はいつでも変わる
- 完璧に要求を叶えるためには、時間もリソースも足りない
改めて「そうだよな」と思いました。
繰り返してやる仕事であれば、いつまでに・どれぐらいできるかが重要になってきます。
ただ、新たなことにチャレンジする不確実性の高い開発などの仕事では、
最初っから完璧な要求はないし、要求は変わるし、そもそも完璧に作ろうと思えば時間もリソースもないというところから始まります。
この前提を関係者・ステークホルダーと認識を合わせずに、期待値を合わせ間違えて痛い目に遭った記憶がいくつかあります。
アジャイル開発の心構え
- 不確実性があることを自分が認識しておく
- 不確実性があることを開発メンバーと認識を合わせておく
- 不確実性があることを開発外のステークホルダーと認識を合わせておく
そのために、不確実性を可視化することが重要です。
可視化の方法は以下ブログで書いた方法や
他にも、バーンダウンチャートがあるようです。
バーンダウンチャートはまだ実践したことないので、プロジェクトで試してみたいと思います。