« Tomcatのオートリロード | メイン | Free Changes Evertything »

2008年4 月24日 (木)

リーン開発の本質

トヨタ生産方式(TPS)をソフトウェア開発に適用する

■原則
 原則1:ムダをなくす
  ムダとは価値を生まないあらゆるもの。
  ならば、ムダを無くすには、まず顧客にとっての価値を理解しなければならない。
  次にムダを見抜く能力を身につける。

 原則2:品質を作り込む
  テスト駆動開発や継続的インテグレーションで最初から欠陥が入り込まないようにする。
  新たな機能を追加する前に、リファクタリングを行い、コードをシンプルに保つ。

 原則3: 知識を作り出す
  プロセスを継続的に改善する。
  どのような異常であれ、元凶を見つけ出し、再発防止のためにプロセスを変更する。

 原則4: 決定を遅らせる。
   システムの初期機能を開発している時点で、重要な決定をしてしまい、
  将来の変更を妨げてはならない。
  難しい決断はなるべく遅らせ、選択可能な状態を保つ。

  原則5: 速く提供する
   ムダがなくなれば、スピードが上がる。
  スピードと品質は共存する。
   サイクルタイムを重視し、重要なところから改善する。

 原則6: 人を尊重する
  リーダーシップを発揮させる。専門知識を備えた人を育成する。
  やるべきことややり方を指図するのではなく、人が頭を使い、
  自らそれを見つけ出すことのできる、自律した組織を作る。

  原則7: 全体を最適化する
  注文を受けた時点から、ニーズ解決されるまでの、バリューストリーム全体を解決する。
  部分最適に陥ってはならない。
  バリューストリームの中で、ボトルネックとなっている箇所を見つけ出し、
 本当に重要な一つだけを最適化する。

■7つのムダ

 1. 未完成の作業のムダ
  ・コード化されていないドキュメント
  ・コミットされていないコード
  ・開発したがリリース待ちのコード

 2. 余分な機能のムダ
  ・必要性に疑問があるものを作ってはならない

 3. 再学習のムダ
  ・一度覚えたことは、次に必ず引き出せるようにする。
  ・同じ失敗を繰り返してはならない

 4. 引き継ぎのムダ
  ・引き継ぎの回数を減らす
  ・暗黙知が共有されるよう、コミュニケーションを増やす

 5. タスク切り替えのムダ
  ・マルチタスクではなくシングルタスク
  ・開発チームが保守も行う

 6. 遅れのムダ
  ・全ての待ち時間を無くす

 7. 欠陥のムダ
  ・できるだけ早期に欠陥を見つける

■待ち行列理論
 バリューストリームマップの各プロセスで、平均サイクルタイムを測定する。

 サイクルタイム =  やるべきことの数/平均完成率

 待ち行列を最小にするには、
 ・作業を特定のプロセスに集中させない。
 ・やるべきことを減らす
 ・やるべきことのリリースサイクルを小さくする
 ・イテレーションを一定にする
 ・許容能力を超えた仕事をしない
 ・プル型のスケジューリング

トラックバック

この記事のトラックバックURL:
http://www.typepad.com/services/trackback/6a01287585694c970c0120a68392f2970b

リーン開発の本質を参照しているブログ:

コメント

この記事へのコメントは終了しました。