Edited at

仮説・検証(67)「プロセス改善」が改悪へと突き進む

ソフトウェアプロセス改善

「」書きは勘違いか、的外れの可能性がある用語。


背景・前提(background, assumption)

「論理的」

 作業は、確率的、統計的に検討する。論理的に考えてもありえないことを議論するのは無駄な時間かも。

「抵抗勢力」

 改善プロジェクトがおかしなことをやろうとしている。抵抗勢力は存在せず、現場の人たちは改善勢力。改善プロジェクトが改悪勢力の場合あり。本当によくするのなら説明ができるはず。

「あるべき姿」

 ありえない姿の可能性がある。モデルはありえない姿の代表例。

「12207, 15504, automotive SPICE」

 モデル=ウォータフォールモデルと関数呼び出しモデルの混合系

 いい状態ではない。妥協の状態。

 プロセスが他のプロセスを呼ぶ。プロセスで完結していない。

「正しい」

正しいか正しくないかは論理科学の世界の話。物理科学では経験則だけで正しいか正しくないかは感知しない。

生命科学は物理科学の上になりたっており、物理科学より確率の低い経験則。プログラマが複数人以上いる組織は社会科学。生命科学よりはるかに、確率の低い経験則。正しいとか、正しくないとかは問題の外。

 プログラムがコンパイルエラーになるかならないかも、コンパイルオプションで変わること。どういう制約条件でプログラムを動かすかを書き下せるとは限らない。

「定着」

プロセスが定着するというのをいい意味だと思っている人がいる。

あるアメリカの企業は、作業が一定になることは、進化を止めることだから悪いことだと理解している。

そのため、定期的にプロセスを壊すようにしている。

組織も同様で、長い期間、同じ組織だと停滞するという仮説がある。

しかし、名前、人数だけ変えて、似たような組織の間の変更をしているのは無駄。

ちょうど、プロセスが定着しているというのと同じように。

日本の組織はたいてい水準4か水準5の状態にある。

プロセスが定着するという水準3の状態にすれば、改悪していることしか残らない。

お願いだから、プロセスを定着させるのはやめてください。

facebook でのある方からの質問への回答。


生産の現場では属人性が大事。最高の属人性の技を標準化する。1.属人性だけ2.標準化だけのどちらの戦略でもない。ソフトウェアプロセスでの標準化も同じのはず。一番生産性の高い人の作業を習って自動化する方法と、自動化固有の高速化できる方法による自動化と両方同時に攻めて、保守性のよい選択肢を探す。



原理(principle)

「測定」

測定行為は測定結果を変える可能性がある。

「事実」

事実は一つではない。

 人の数だけ事実は存在する。

測定は事実を変更する。測定結果はある時点の事実だが、

直列で作業しているときは、Critical Path Method

「プロセス」

仕事の分担を変えれば効率があがることがしばしば。

 ソフトウェアは、人依存であれば、プロセスをなぶるより人の再配置が効率的。

 ツールに自動化するか。

 できる人がやっていることもわかる。

「横道にそれてしまう。」

 実は、横道の方が早道。

 全部時間を使うのはやばい。同じ話題は短い時間に限る。

抵抗勢力にアイデアを渡す。

操作間違いしてもGWで止められる。


目標(goal)

「ゴール」

改善チームが間違ったゴール設定をしている。

  経営分析をしておらず、モデルしか見ていない時。

間違えない作業診断をするために

https://qiita.com/kaizen_nagoya/items/557ac514a713b4cb8034

作業診断(process assessment)を成功させる5つの鍵。失敗する5つの罠

https://qiita.com/kaizen_nagoya/items/bcdc60db20e8d7081fab


参考資料(reference)

プログラマが知っているとよい英単語の語源

https://qiita.com/kaizen_nagoya/items/9de6d47c47e2c211222b

ソフトウエアプロセスの改善に向けて ~SPIへの今後の取組み~ (ソフトウエア開発・調達プロセス改善協議会報告書の公表)

http://warp.da.ndl.go.jp/info:ndljp/pid/1368617/www.meti.go.jp/kohosys/press/0002639/0/020419spi.pdf

SWEST4:

https://swest.toppers.jp/SWEST4/report.html#program

組込みソフトウェアにおけるSPI(CMM/SPA)

見直し手法(review method)

https://qiita.com/kaizen_nagoya/items/6d5962e1a0e4be28405c

自動車産業におけるソフトウェア製品の出荷額の見積もりと改善の方向性

https://researchmap.jp/joulazjos-50024/

情報システムに係る政府調達の見直しについて ~ソフトウェアの特質を踏まえた政府調達制度の改善に向けて~

http://dl.ndl.go.jp/view/download/digidepo_1285959_po_011226infomationsystem-hontai.pdf?itemId=info%3Andljp%2Fpid%2F1285959&contentNo=1&alternativeNo=&__lang=ja


文書履歴(document history)

ver. 0.01 初稿 20190209

ver. 0.02 「」追記 20190213

ver. 0.03 参考資料 追記 20190214

ver. 0.04 「定着」は改悪 追記 20190118

ver. 0.05 勘違いか、的外れの可能性がある用語。追記 20190227

ver. 0.06 facebookの書き込み転載 20190813

 このエントリーをはてなブックマークに追加

https://b.hatena.ne.jp/guide/bbutton