SlideShare a Scribd company logo
1 of 48
Download to read offline
統計的品質管理の功罪
自己紹介
久納 工
永和システムマネジメント
ITS事業部所属
2007〜2014までおカタイお客さんのプロジェクトに
従事
2014〜 Ruby書いてます
受託開発
受託開発に置いては、
開発者が環境や言語、開発
手法などを自由に決められな
い場合がある
受託開発 (自由なパターン)
顧客 開発者
受託開発(不自由なパターン)
顧客 開発者
大規模なプロジェクトでは
品質管理担当が置かれること
がある
受託開発(不自由なパターン)
受託開発(不自由なパターン)
「パンは危険な食べ物」
「パンは危険な食べ物」
・犯罪者の98%はパンを食べている。
・パンを日常的に食べて育った子供の約半数は、テストが平均点以下である。
・暴力的犯罪の90%は、パンを食べてから24時間以内に起きている。
・パンは中毒症状を引き起こす。被験者に最初はパンと水を与え、後に水だけを与える実験をする
と、2日もしないうちにパンを異常にほしがる。
・新生児にパンを与えると、のどをつまらせて苦しがる。
・18世紀、どの家も各自でパンを焼いていた頃、平均寿命は50歳だった。
・パンを食べるアメリカ人のほとんどは、重大な科学的事実と無意味な統計の区別がつかない。
「パンは危険な食べ物」
・犯罪者の98%はパンを食べている。
・パンを日常的に食べて育った子供の約半数は、テストが平均点以下である。
・暴力的犯罪の90%は、パンを食べてから24時間以内に起きている。
・パンは中毒症状を引き起こす。被験者に最初はパンと水を与え、後に水だけを与える実験をする
と、2日もしないうちにパンを異常にほしがる。
・新生児にパンを与えると、のどをつまらせて苦しがる。
・18世紀、どの家も各自でパンを焼いていた頃、平均寿命は50歳だった。
・パンを食べるアメリカ人のほとんどは、重大な科学的事実と無意味な統計の区別がつかない。
統計的品質管理
とうけいてきひんしつかんり
statistical quality control; SQC
統計的方法を用いて行う品質管理。品質管理においては,なんらかの突止
めうる原因による品質の「ばらつき」 (有意な変動) と偶然的な多数の小原因
による品質の「ばらつき」 (有意でない変動) >とを見分け,前者の原因を除
去することをねらいとするが,この見分けを統計的方法で行おうとするもの。
ブリタニカ国際大百科事典 小項目事典の解説
コード n行に対して
原因 hoge のバグが
平均 m件の発生する
平均よりバグの発生が多い場合
何らかの原因で
品質が悪くなる傾向があると判断され、改
善策の検討が必要になる
平均よりバグの発生が少ない場合
極端に少ない場合は
テストが不十分であると判断され、
テストパターンの追加が必要になる
例
ある機能を実現するコード
コードA
1. コピペの嵐
2. よくわからない命名(flg01, func_hoge みたいなの)
3. コーディング規約など存在しない
4. 単体テストなど存在した試しもない
5. 全400行
6. 単純バグを1件出しちゃった
コードA
1. コピペの嵐
2. よくわからない命名(flg01, func_hoge みたいなの)
3. コーディング規約など存在しない
4. 単体テストなど存在した試しもない
5. 全400行
6. 単純バグを1件出しちゃった
コードA’
1. 局所化、再利用性等を考慮したDRYなコード
2. 読みやすい命名
3. コーディング規約を守っている
4. 単体テスト有り
5. 全100行
6. 単純バグを1件出しちゃった
コードA’
1. 局所化、再利用性等を考慮したDRYなコード
2. 読みやすい命名
3. コーディング規約を守っている
4. 単体テスト有り
5. 全100行
6. 単純バグを1件出しちゃった
コードA はリファクタリング
によって、どのくらい品質が
改善されたのか
前提条件
このプロジェクトでは以下の統計が既に得られている
200行のコードにつき、
平均1件の単純バグが発生す
る
コードA
平均に比べて
コード行数あたりの単純バグ発生件数が
2分の1
である
コードA’
平均に比べて
コード行数あたりの単純バグ発生件数が
2倍
である
よって……
修正前のコードAの品質
の方が圧倒的に良い
なんとリファクタリングによって
品質が4分の1に悪化した!!!!!
そんなわけあるか!
コードを良くすればするほど、品質が悪く
なる
という意味が分からない状況に
何故、こんなことになって
しまうのか?
受託開発(不自由なパターン)
僕達が望んでいるもの
現実
Excel…
ソフトウェアの品質を評
価するのにコードを一切
見ていない
統計とスケジュールしか
見ていない
Do not put your faith in what statistics say until you have
carefully considered what they do not say.
統計が示すことを信じる前に、統計に示されていないことを注意
深く考慮せよ。
William W. Watt
この統計は優れた設計か、良
いコードか、パフォーマンスが
良いかなどは示さない
極端な話
hoge = 100
hoge = 100 × 100万行
ものすごい高品質
に!!!!!!
そんなわけあるか!
結論
結論
● 統計は、用法用量を守って正しく使用し
ましょう。
結論
● 統計は、用法用量を守って正しく使用し
ましょう。
● ちゃんとコードレビューしましょう

More Related Content

Viewers also liked

プロジェクトの構造
プロジェクトの構造プロジェクトの構造
プロジェクトの構造尚 鈴木
 
すぐに分かる!プロジェクト計画の作り方
すぐに分かる!プロジェクト計画の作り方すぐに分かる!プロジェクト計画の作り方
すぐに分かる!プロジェクト計画の作り方Eisuke Sugitani
 
プロジェクト見える化計画 Web
プロジェクト見える化計画 Webプロジェクト見える化計画 Web
プロジェクト見える化計画 Webminamo
 
ようこそ!“プロジェクトマネジメント保健室”へ!
ようこそ!“プロジェクトマネジメント保健室”へ!ようこそ!“プロジェクトマネジメント保健室”へ!
ようこそ!“プロジェクトマネジメント保健室”へ!Ayako Togaeri
 
初めての人の為のプロジェクトマネジメント入門
初めての人の為のプロジェクトマネジメント入門初めての人の為のプロジェクトマネジメント入門
初めての人の為のプロジェクトマネジメント入門尚 鈴木
 
ウォーターフォールでカンバンやってみた!
ウォーターフォールでカンバンやってみた!ウォーターフォールでカンバンやってみた!
ウォーターフォールでカンバンやってみた!尚 鈴木
 
Project Integration Management
Project Integration ManagementProject Integration Management
Project Integration Managementpankajsh10
 
Project cost management PMBOK 5th Edition
Project cost management PMBOK 5th EditionProject cost management PMBOK 5th Edition
Project cost management PMBOK 5th Editionpankajsh10
 
Project Human Resource Management - PMBOK 5
Project Human Resource Management - PMBOK 5Project Human Resource Management - PMBOK 5
Project Human Resource Management - PMBOK 5pankajsh10
 
Project Procurement Management PMBOK 5
Project Procurement Management PMBOK 5Project Procurement Management PMBOK 5
Project Procurement Management PMBOK 5pankajsh10
 
Project communications management (PMBOK 5th Edition)
Project communications management (PMBOK 5th Edition)Project communications management (PMBOK 5th Edition)
Project communications management (PMBOK 5th Edition)pankajsh10
 
期限内に問題を解決する技術(プロジェクトマネジメント・ワークショップ)公開スライド:後半
期限内に問題を解決する技術(プロジェクトマネジメント・ワークショップ)公開スライド:後半期限内に問題を解決する技術(プロジェクトマネジメント・ワークショップ)公開スライド:後半
期限内に問題を解決する技術(プロジェクトマネジメント・ワークショップ)公開スライド:後半Management_CoLtd
 
Project Quality Management - PMBOK 5th Edition
Project Quality Management - PMBOK 5th EditionProject Quality Management - PMBOK 5th Edition
Project Quality Management - PMBOK 5th Editionpankajsh10
 
Project Time Management - PMBOK 5th Edition
Project  Time Management - PMBOK 5th EditionProject  Time Management - PMBOK 5th Edition
Project Time Management - PMBOK 5th Editionpankajsh10
 
Project Scope Management - PMBOK 5th Edition
Project Scope Management - PMBOK 5th EditionProject Scope Management - PMBOK 5th Edition
Project Scope Management - PMBOK 5th Editionpankajsh10
 
Project Management Framework - PMBOK 5
Project Management Framework - PMBOK 5Project Management Framework - PMBOK 5
Project Management Framework - PMBOK 5pankajsh10
 
Project Stakeholder Management - PMBOK 5
Project Stakeholder Management - PMBOK 5Project Stakeholder Management - PMBOK 5
Project Stakeholder Management - PMBOK 5pankajsh10
 
Project Risk Management - PMBOK5
Project Risk Management - PMBOK5Project Risk Management - PMBOK5
Project Risk Management - PMBOK5pankajsh10
 

Viewers also liked (18)

プロジェクトの構造
プロジェクトの構造プロジェクトの構造
プロジェクトの構造
 
すぐに分かる!プロジェクト計画の作り方
すぐに分かる!プロジェクト計画の作り方すぐに分かる!プロジェクト計画の作り方
すぐに分かる!プロジェクト計画の作り方
 
プロジェクト見える化計画 Web
プロジェクト見える化計画 Webプロジェクト見える化計画 Web
プロジェクト見える化計画 Web
 
ようこそ!“プロジェクトマネジメント保健室”へ!
ようこそ!“プロジェクトマネジメント保健室”へ!ようこそ!“プロジェクトマネジメント保健室”へ!
ようこそ!“プロジェクトマネジメント保健室”へ!
 
初めての人の為のプロジェクトマネジメント入門
初めての人の為のプロジェクトマネジメント入門初めての人の為のプロジェクトマネジメント入門
初めての人の為のプロジェクトマネジメント入門
 
ウォーターフォールでカンバンやってみた!
ウォーターフォールでカンバンやってみた!ウォーターフォールでカンバンやってみた!
ウォーターフォールでカンバンやってみた!
 
Project Integration Management
Project Integration ManagementProject Integration Management
Project Integration Management
 
Project cost management PMBOK 5th Edition
Project cost management PMBOK 5th EditionProject cost management PMBOK 5th Edition
Project cost management PMBOK 5th Edition
 
Project Human Resource Management - PMBOK 5
Project Human Resource Management - PMBOK 5Project Human Resource Management - PMBOK 5
Project Human Resource Management - PMBOK 5
 
Project Procurement Management PMBOK 5
Project Procurement Management PMBOK 5Project Procurement Management PMBOK 5
Project Procurement Management PMBOK 5
 
Project communications management (PMBOK 5th Edition)
Project communications management (PMBOK 5th Edition)Project communications management (PMBOK 5th Edition)
Project communications management (PMBOK 5th Edition)
 
期限内に問題を解決する技術(プロジェクトマネジメント・ワークショップ)公開スライド:後半
期限内に問題を解決する技術(プロジェクトマネジメント・ワークショップ)公開スライド:後半期限内に問題を解決する技術(プロジェクトマネジメント・ワークショップ)公開スライド:後半
期限内に問題を解決する技術(プロジェクトマネジメント・ワークショップ)公開スライド:後半
 
Project Quality Management - PMBOK 5th Edition
Project Quality Management - PMBOK 5th EditionProject Quality Management - PMBOK 5th Edition
Project Quality Management - PMBOK 5th Edition
 
Project Time Management - PMBOK 5th Edition
Project  Time Management - PMBOK 5th EditionProject  Time Management - PMBOK 5th Edition
Project Time Management - PMBOK 5th Edition
 
Project Scope Management - PMBOK 5th Edition
Project Scope Management - PMBOK 5th EditionProject Scope Management - PMBOK 5th Edition
Project Scope Management - PMBOK 5th Edition
 
Project Management Framework - PMBOK 5
Project Management Framework - PMBOK 5Project Management Framework - PMBOK 5
Project Management Framework - PMBOK 5
 
Project Stakeholder Management - PMBOK 5
Project Stakeholder Management - PMBOK 5Project Stakeholder Management - PMBOK 5
Project Stakeholder Management - PMBOK 5
 
Project Risk Management - PMBOK5
Project Risk Management - PMBOK5Project Risk Management - PMBOK5
Project Risk Management - PMBOK5
 

統計的品質管理の功罪