昨日、リーンカンファレンス2014にいってきた。その中の講演の1つ「派生開発をリーンにするXDDP」をメモメモ
XDDPとUSDMの清水吉男氏ともう一人(だれだったっけ?)のかけあいの形で講演してました。
派生開発をリーンにするXDDP
■派生開発推進協議会(AFFORDD:あふぉーど)の紹介
2010年2月
・派生開発カンファレンス(次回6/6)
・10テーマほどの研究会
・調整の克服方法
・USDMの入門
・XDDPの入門など
・研究会主催の「フォーラム」
・XDDPやUSDMに関する勉強会
■派生開発とは
・組み込みの現場では使われていた言葉
→改造(保守という言葉はつかわれなかった)
→既存のソースコードをベース
機能追加が入る
→背景:競争=予想できない→くずれていく
・派生どれくらい?
組み込みの90%以上は派生開発
・派生開発の課題とは?
新規開発だと、工数と予算がつく
でも、派生開発だと→変更=納期がシビア
→変更行数で見積もられたら大変!
要求仕様を書いて・・・
派生開発はそういううパターンではない
機能追加と変更がまじっている
変更のところで大きく
→プロセスが合わない
新規開発くずし
変更箇所を完成させていく
文章を完成させるように変更
ソースコードしかない会社
ソースコードをいきなり変更
→変更に対するデグレード:品質低下
・ソフトでリーンというと、アジャイル開発
XDDPとスクラムで発表されている
成果物が伴っていないと
変更という考え方がアジャイルでは対応しにくい
XDDPとは
・XDDP機能追加と変更依頼=仕様知ってる人、国内にいない
→保守のプロセスではできない
・部分理解を前提としたレビュー中心の手法
→この方法でいける!
ソースコードが分からないケースでも
・機能追加と変更を異なるプロセスで
AをBに変更→それいがいの箇所を探す
要求が異なる
変更3点セットの最小限の成果物を作る
変更箇所:Before→After
Before:担当者の理解
・XDDP:コーディングをすぐしない
XDDPとリーン
・無駄をなくす
・品質を作りこむ
・知識を作り出す
AをBに直す→思わぬところに不具合=わからない
関係ないならバグでないはず!
変更箇所を残している=後ろから探れる
→知識がたまる
・決定を遅らせる
いきなり変更:早く片付けたい→変更量を見積もっていない
→変更同士が絡み合う:さっさと変更することが早くならない
→1つの条件:見積もれている
→生産性データを使う→ここまで遅らせるということがわかる
・似ている考えかた
手戻りを減らしたい
LAMDAプロセス→レビューを小さくまわす
ソフト
依存性が高い:XDDP
依存性が低い:アジャイル
ハード
依存性が高い:リーン製品開発
依存性が低い:リーン生産(TPS)
派生開発
変更してバグになった→ばんそこはってなおす
→ソースコードは劣化している
レビュー
変更要求仕様書:ここを、なぜ
変更方法を考える:トレーサビリティマトリックス
変更する
レビュアー:自分のシマにはいってしまう
トレーサビリティ マトリックス(TM)
原則、全部立てる。並べ方を変えない
XDDPとUSDMの清水吉男氏ともう一人(だれだったっけ?)のかけあいの形で講演してました。
派生開発をリーンにするXDDP
■派生開発推進協議会(AFFORDD:あふぉーど)の紹介
2010年2月
・派生開発カンファレンス(次回6/6)
・10テーマほどの研究会
・調整の克服方法
・USDMの入門
・XDDPの入門など
・研究会主催の「フォーラム」
・XDDPやUSDMに関する勉強会
■派生開発とは
・組み込みの現場では使われていた言葉
→改造(保守という言葉はつかわれなかった)
→既存のソースコードをベース
機能追加が入る
→背景:競争=予想できない→くずれていく
・派生どれくらい?
組み込みの90%以上は派生開発
・派生開発の課題とは?
新規開発だと、工数と予算がつく
でも、派生開発だと→変更=納期がシビア
→変更行数で見積もられたら大変!
要求仕様を書いて・・・
派生開発はそういううパターンではない
機能追加と変更がまじっている
変更のところで大きく
→プロセスが合わない
新規開発くずし
変更箇所を完成させていく
文章を完成させるように変更
ソースコードしかない会社
ソースコードをいきなり変更
→変更に対するデグレード:品質低下
・ソフトでリーンというと、アジャイル開発
XDDPとスクラムで発表されている
成果物が伴っていないと
変更という考え方がアジャイルでは対応しにくい
XDDPとは
・XDDP機能追加と変更依頼=仕様知ってる人、国内にいない
→保守のプロセスではできない
・部分理解を前提としたレビュー中心の手法
→この方法でいける!
ソースコードが分からないケースでも
・機能追加と変更を異なるプロセスで
AをBに変更→それいがいの箇所を探す
要求が異なる
変更3点セットの最小限の成果物を作る
変更箇所:Before→After
Before:担当者の理解
・XDDP:コーディングをすぐしない
XDDPとリーン
・無駄をなくす
・品質を作りこむ
・知識を作り出す
AをBに直す→思わぬところに不具合=わからない
関係ないならバグでないはず!
変更箇所を残している=後ろから探れる
→知識がたまる
・決定を遅らせる
いきなり変更:早く片付けたい→変更量を見積もっていない
→変更同士が絡み合う:さっさと変更することが早くならない
→1つの条件:見積もれている
→生産性データを使う→ここまで遅らせるということがわかる
・似ている考えかた
手戻りを減らしたい
LAMDAプロセス→レビューを小さくまわす
ソフト
依存性が高い:XDDP
依存性が低い:アジャイル
ハード
依存性が高い:リーン製品開発
依存性が低い:リーン生産(TPS)
派生開発
変更してバグになった→ばんそこはってなおす
→ソースコードは劣化している
レビュー
変更要求仕様書:ここを、なぜ
変更方法を考える:トレーサビリティマトリックス
変更する
レビュアー:自分のシマにはいってしまう
トレーサビリティ マトリックス(TM)
原則、全部立てる。並べ方を変えない