那須です
最近リーン開発に興味を持って「リーンソフトウェア開発」を読んでいるのですが
- 要望をすべて言葉にできる人はいない
- 要望は常に変化する
という2点に強く惹きつけられました。これらは私自身、感覚的には理解していて、当然のことであるという意識はあるのですが、だから何をしなければいけないのか、何をすべきなのかは試行錯誤の状態です。
リーン開発は、これらに対応できる手法として実践に使えるのではないかと考えています。
ということを考えているのですが、まだ全部読みきっていないので、今頭にある実践として使えそうなキーワードだけメモしておきます。
- エンジニアへの認知
- バリューストリームマップ
- 決定をできるだけ遅らせる
- イテレーション開発
- 要望変化に耐えられるコード
- 機能レビュー
- テスト駆動
当然プロジェクトの管理者だけが、要望が常に変化することを意識するだけではダメで、プロジェクトに参加する人(特に成果物を作成するエンジニア)も同じ認識を持ち、開発をすることが重要です。確かにその通りだと思います。
ただ、(個人的な経験によるかもしれませんが)これまでシステム開発がウォーターフォールを前提として行われていたことで、要望は変化するものだということをなかなか受け入れられません。既に開発が半ばまで進んだものに対して修正を加えるのは、私が開発をしている場合でも、それを好みませんし、モチベーションも下がります。
それでも、変化を受け入れる体制を作る方法として、上述のキーワードが役に立つのではないかと思います。
読み終えたら、またまとめを書きたいと思います
