狠狠撸

狠狠撸Share a Scribd company logo
JaSST’14 Tokyo 経験発表

バグレポートの問題事例の調査と
改善のためのアンチパターン集の作成
バグ票ワーストプラクティス検討プロジェクト
鈴木 昭吾, 近美 克行, 近江 久美子,
渡辺 由希子, 森崎 修司
e-mail:sw.WorstPractice@gmail.com
Web: https://sites.google.com/site/swworstpracticesite/
謝辞
? JaSST12Tokyoでのご協力ありがとうございました。

ツィート元:
https://twitter.com/Tesutaro_JaSST/status/162369061878116352
2
? ご協力、情報提供およびコメントをいただいたみなさまに御礼申し上げます。
o JaSST’12, 13東海ポスターセッションで有益なコメントを頂いたみなさま
o SQiPシンポジウム2012, 2013 のSIGでご協力いただいたみなさま
o WACATE分科会でアンケートやディスカッションにご協力いただいたみなさま、
有益なコメントをいただいたみなさま
o 第8回SQuBOKユーザ会勉強会にて議論させていただいたみなさま
o Webやアンケート用紙にて、ご回答をいただいたみなさま
o その他、活動のご支援やコメント等ご協力いただいたすべてのみなさま

ありがとうございました。
3
目次
1. はじめに
1.
2.
3.
4.

背景
バグレポートがうまく使われていない例
意義
ワーストプラクティス

2. アンケート調査?結果
1.
2.
3.
4.

アンケート実施方法
アンケート内容
アンケート結果
考察および改善案

3. アンチパターン集作成
1.
2.

アンチパターンテンプレート
試作例

4. 今後の展開
5. まとめ

4
はじめに
1.
2.
3.
4.

背景
バグレポートがうまく使われていない例
意義
ワーストプラクティス

5
背景
? バグレポートはソフトウェアのエンジニアが最も多く関わる技術文書であり、
ほとんどの開発現場で存在する
ユーザ

??????

?????

経営者

設計者

???????

バグ
レポート

QA

????

開発現場では、バグレポートは有効に利用されていないのでは?
(※バグレポート=ISTQB用語集のインシデントレポート)

6
バグレポートがうまく使われていない例1
? 「バグピンポン」
o テストエンジニアと開発者の間で発見したバグに同意がとれず、
バグを指摘したメールやバグレポートがいったりきたりすること

バグだ

テスト担当

開発者

バグでは
ない

? バグピンポンの正式な原典は明らかではないが、たとえばDZoneのインタビュー等で言及されている
http://agile.dzone.com/videos/end-bug-ping-pong
7
バグレポートがうまく使われていない例2
?

「バベルの塔」
o

用語やルールが混乱し、バグの問題解決や管理に支障をきたす。
プロジェクトの遅れを挽回するために、メンバを追加投入した。

バグレポートは書いたことがあるから導入教育をしなかった。

バグレポート内の言葉(用語)や運用(起票基準等)が
バラバラになった。
?同件検索効率がおちて、同件バグレポートの登録が防げなかった。
?同じ用語や書き方でも違う事象を指す場合があり、修正ミスが起きた
8
バグレポートがうまく使われていない例3
? 「なにかがおかしい」
? バグ修正するために必要な情報が書かれていない。
例:「エラーになりました。」 等

? リツィートが約700、
リプライは16あり
大きな反響があった
? 多くの方が同じような
状況で困っている様
子が伺える

https://twitter.com/yukihiro_matz/status/312534609495736320 より引用
9
意義
1.

バグレポートが活用できないために多くの弊害が発生している。
o 内容確認等のコミュニケーションのために無駄な工数が発生。
o ソフトウェアテストに対する弊害
?
重複したバグレポートがあり正確な品質状況がつかめない
o プロセス改善に対する弊害
?
Project Fabre(プロジェクトファーブル)などで提唱している
欠陥のパターン(バグマスター)が作成できない etc.
?
組織のプロセスなどの弱点や問題点が見出しにくい
2. バグレポートの書き方を解説している書籍などは多い。
(例:「ソフトウェアテスト293の鉄則」など)
しかし、悪いバグレポートがどのようなものかは議論があまりない。
(例:「Making Software エビデンスが変えるソフトウェア開発」)
悪いバグレポートがどのようなものかを共有し改善することで、
ソフトウェア開発組織の問題解決や改善ができる可能性がある
※Project Fabre(プロジェクトファーブル): http://aster.or.jp/business.html#fabre

10
ワーストプラクティス
? 「ベストプラクティス」はいろいろなメディアで紹介されている
→JaSST等イベントで紹介される事例、Webサイト等々

? 知っていても実行できない事が多い
o 「コンテキスト」が合わないことがある
o 「ベスト」な環境は整えるのが大変
o ベストの条件=いろいろな条件が
ちょうどバランスがとれた状態
(実は特殊状況である)

? 「ワーストプラクティス」を回避するということでも
効果が見込めるのではないか?
? 教科書的な行儀のよい状況下だけで学んでもだめ!
? 状況とセットで、失敗を学習?共有することに意味がある。
11
アンケート調査?結果
1.
2.
3.
4.

アンケート実施方法
アンケート内容
アンケート結果
考察および改善案

12
アンケート実施
? 2つの方法で調査実施(2011年1月から開始)
1. PC/スマートフォン

2. アンケート用紙

http://goo.gl/w3qty

ソフトウェア品質やソフトウェアテストに興味がある方を対象に
インターネットや各種イベントでアンケート呼掛けと調査を実施
? JaSST等ソフトウェア品質系イベント
13
アンケート内容
1.
2.
3.
4.
5.
6.
7.
8.

どんな問題のあるバグレポートか
どうあるべきだったか
起票された工程
起票者の立場 / 経験
対象ソフトウェアの規模
開発のタイプ/形態
印象的なバグレポート
その他バグレポートへの思い

特に回答頂きたい上記、1、2 を必須として
他の項目は任意回答とした
14
アンケート概要
? 自由記述と選択肢項目で構成
自由記述

選択肢項目

どんな問題のあるバグレポートか

どうあるべきだったか

起票された工程
? コンポーネントテスト
? 統合テスト
? システムテスト
? 受入テスト
? 稼働後

印象的なバグレポート

起票者の立場 / 経験(期間)
? 開発部署 / 第三者等
? プロダクトに従事した期間を
8段階で選択

その他バグレポートへの思い

対象ソフトウェアの規模
? LOCで5段階

? 約60件の回答があった。

開発のタイプ/形態
? 派生開発 or 新規開発
15
アンケート結果1: 回答者
? 回答者の立場は以下のとおり
o 開発者?テスト担当者:それぞれ約30%
o 出荷テスト担当者:24%
o 分析担当等:17%

17%

29%

バグを報告する立場(チーム
内)[開発部署内のテストチー
ムなど]
バグを修正する立場(チーム
内)[開発者など]
バグを報告する立場(第三者)
[出荷検査実施者など]

24%

30%

上記以外の立場(バグ票を分
析する立場 等)
16
アンケート結果2: 起票者
? バグレポート起票者の立場は以下のとおり
o 開発内テスト担当者:46%
o 開発者:20%
o 開発チーム外のテスト担当者、データ分析者:34 %

9%

25%

46%

バグを報告する立場(チーム
内)[開発部署内のテストチーム
など]
バグを修正する立場(チーム
内)[開発者など]
バグを報告する立場(第三者)
[出荷検査実施者など]

20%

上記以外の立場(情報を分析す
る立場 等)
17
アンケート結果3: テスト工程
? 問題のバグレポートのテスト工程は以下のとおり
o コンポーネントテスト:14%
o 統合テスト:44%
o システムテスト:34%
o 受け入れテスト:8%
8%

CT(コンポーネントテスト/単体
テスト)

14%

IT(統合テスト/組み合わせテ
スト)

34%

ST(システムテスト)
44%
顧客受け入れテスト

18
アンケート結果4: 起票者の経験
? 経験がある方でも問題となるバグレポートを起票している
o 2年以上従事している方:52%
o 1年以上従事している方:76%
? どんな方が書いているかわからないケースがある
o 不明という回答:14%
2%
3%
3%
2%

24ヶ月以上
18ヶ月以上24ヶ月未満

14%

12ヶ月以上18ヶ月未満
6ヶ月以上12ヶ月未満

52%

17%

3ヶ月以上6ヶ月未満

3ヶ月未満

7%

不明(会ったことがない、聞いたこと
がない等)
19
アンケート結果5:
現場にあるダメなバグレポート
?

大きく4つに分類
o バグレポートに書かれている内容が伝わらない 39%
o バグを記載された手順で再現できない 25%
o 目的が共有されていない 19%
o フォーマットが適切でない 14%

20
考察および改善案
?

統合テスト、総合テストでは多くのメンバが関わるため問題が顕在化している

?

どのような方が、どのようにバグレポートを利用しているか認識されていない
ことがある

?

バグレポートの項目に、どのように使われるか分からない項目がある。または
起票者だけで判断できない場合がある

?

バグレポートの問題は、経験の蓄積だけでは解決しにくい問題である

? 関係者間で「バグレポート」の目的や利用意図を共有する
? 起票のプロセスや書式を見直す
? バグレポートに起こりがちな問題を示しながら教育を行なう
21
アンチパターン集作成
1.
2.

アンチパターンテンプレート
試作例

22
アンチパターンテンプレート
? アンケート結果(バグレポートのワーストプラクティス)をテンプレートを利用
してモデル化し、失敗事例共有のためのアンチパターンとしてまとめる。
項目

内容

パターンの名前

パターンの呼び名

発生状況

発生する状況

問題の内容

発生した問題の内容

解決方法

解決方法や回避方法

関連パターン

関連パターンや相互の関係

(観察された場所)

エンプラ

組込み

Web

その他

※「アンチパターン-ソフトウェア危篤患者の救出」のパターンテンプレートより
※(観察された場所)は我々のプロジェクトのオリジナル。赤系の色で示したアイコンが
元の「ワープラ」を観察したコンテキスト。

23
アンチパターン(試作1)
項目

内容

パターンの名前

バグピンポン

発生状況

a)起票者と解析者の(物理的?心理的)距離が離れている
b)バグレポートの情報が不足している

問題の内容

バグレポートの不足情報を質問しているうちに、質問-応
答の手間が増えて、お互いにイライラが募る。
なんで、その程度のことを対応してくれない?と腹が立つ
<具体例>
?バグレポートでの質疑応答の往復が30回を超える
?バグかバグでないかの議論でバグレポートが炎上する

解決方法

?マネージャが介入して調停する(北町奉行メソッド)
?動画など客観的証拠を提示する

関連パターン

<分析中>

(観察された場所)

エンプラ

組込み

Web

その他

バグピンポン: 参考動画 http://agile.dzone.com/videos/end-bug-ping-pong

24
アンチパターン(試作2)
項目

内容

パターンの名前

バベルの塔

発生状況

a)後から要員を追加投入
b)全員バグレポートの作成経験はあったので、導入教育を
しなかった

問題の内容

バグレポートの書き方や運用の方法が不統一
<具体例>
?同件検索効率がおち、同件のレポートが重複して登録さ
れる。結果、担当割り当てやバグ分析の効率低下が起こる

解決方法

?バグレポートでつかう用語の用語集と運用フローをまと
め、簡単にルールを確認できるようにする
?最初の何枚かは、有識者がレビューを行う
?ルールを統一する意義や、不統一になった場合の弊害を
伝える

関連パターン

「ダブリ/マルチ」

(観察された場所)

エンプラ

組込み

Web

その他

25
アンチパターン(試作3)
項目

内容

パターンの名前

「このぐらいわかってくれよ」症候群

発生状況

a)納期が切迫して細かいことに気を遣えない
b)何らかの要因で要員スキルの不適合を解消できない

問題の内容

バグレポートから必要な情報を読み取ることができない
<具体例>
?問題層別情報(選択式)が設定されない。またはあまり根拠が
なく選択される
?このぐらい分かるだろうと、再現条件や手順の一部が省略され
る
?設計仕様書内で定義のない用語が断りなく使われる
?起票理由、承認理由、修正理由などがあいまい

解決方法

?記載コストをかける理由(ニーズ)を明確にし、
教育するか、BTSで記載を強制する

関連パターン

<分析中>

(観察された場所)

エンプラ

組込み

Web

その他

26
アンチパターン(試作4)
項目

内容

プラクティスの名前

ダブリ/マルチ

発生状況

a)既存のバグレポートが検索しにくい(用語の不統一など)
b)検索して確認する時間や習慣がない
c)他のメンバがどんなバグレポートを起票しているか興味がない

問題の内容

a)バグに関するメトリクスが不正になる
b)バグレポート担当者を割り振る人の負荷が増加する
c)同一原因に基づく不具合が複数みえることで判断を誤る
<具体例>
?バグが実態よりも多い件数としてカウントされ、テストの終了判
断を誤る
?バグの修正担当者と再テスト担当者で異なるエビデンスがつけ
られたバグレポートを参照してしまい、話が食い違う

解決方法

?同件バグがないか確認することを、起票時に盛り込む
?開発の仕組みとして、また開発者マインドとして他のバグ共有す
るようにする

関連プラクティス
(観察された場所)

<分析中>組込み
エンプラ

27

Web

その他
今後の展開

28
今後の展開
? アンチパターン集の拡充
o アンケート分析の見直しや精査
o ヒアリングや調査の継続

? BTSオンラインヘルプなどへの組込み
o バグレポート起票時などの支援

? アンチパターン検出や示唆(サジェスト)機能の検討
o 起票時のチェック
o バグレポート内容分析時のチェック

29
まとめ

30
まとめ(1/2)
? バグレポートが有効に使われていない開発現場が存在する
? 悪いバグレポートとしてどのようなものがあるかは知られていない
? アンケート調査により、悪いバグレポートの調査結果から
4つの分類が見られた。
o 内容が伝わらない
o 再現手順を再現できない
o 目的が共有されていない
o フォーマットが適切で無い
? 改善案として以下のようなことが考えられる。
o 関係者間で「バグレポート」の目的?利用意図や認識を共有する
o バグレポートの起票のプロセスを見直す
o バグレポートに起こりがちな問題を示しながら教育を行なう

31
まとめ(2/2)
? アンチパターンテンプレートと適用例
o バグピンポン
o バベルの塔
o 「これくらいわかってくれよ」症候群
o ダブリ/マルチ
? 今後の展望
o アンチパターン集の拡充
o BTSオンラインヘルプなどへの組込み
o アンチパターン検出と示唆(サジェスト)機能の検討

続きはコミュニティブースで!
32
コミュニティブース出展しています!
ご意見、ご感想をお聞かせください!!
? コミュニティ紹介
o パネル展示
? 活動内容および成果物の展示
o パネル展示
o 成果物紹介
? ご意見募集
o 投票箱
o 付箋紙/色ペン等で自由に書き込んでください

エレベータ

このあたり

33
アンケートにご協力ください
o 腹がたったバグレポートの事例収集にご協力を!
1. PC/スマートフォン

2. アンケート用紙記入

http://goo.gl/w3qty

コミュニティブースで配布中
e-mail:sw.WorstPractice@gmail.com
https://sites.google.com/site/swworstpracticesite

34
Ad

Recommended

公開資料 バグレポートの改善に向けた問題事例の調査とアンチパターンの作成 Rev10
公開資料 バグレポートの改善に向けた問題事例の調査とアンチパターンの作成 Rev10
しょうご すずき
?
闯补蝉蝉迟12迟辞办测辞绍介资料谤别惫2
闯补蝉蝉迟12迟辞办测辞绍介资料谤别惫2
しょうご すずき
?
闯颁厂蚕贰初级受けてみたの
闯颁厂蚕贰初级受けてみたの
ノグチ ノグチ
?
JaSST nano vol.1 "映え”を評価する~UXテストの取り組みなの
JaSST nano vol.1 "映え”を評価する~UXテストの取り組みなの
Touyou Horikawa
?
WARAI テスト技法ワークショップ vol.2
WARAI テスト技法ワークショップ vol.2
Touyou Horikawa
?
バグ票システム立ち上げに必要なコト
バグ票システム立ち上げに必要なコト
Yuki Okauchi
?
第3回レポート windows8 既存アプリ調査
第3回レポート windows8 既存アプリ調査
Shinpei Niiyama
?
バグ票见つめて気づきませんか??立场いろいろ、悩みいろいろ?
バグ票见つめて気づきませんか??立场いろいろ、悩みいろいろ?
tomohiro odan
?
Job queue in B2B with Akka
Job queue in B2B with Akka
Yasuki Okumura
?
Job queue in b2b with Akka
Job queue in b2b with Akka
Yasuki Okumura
?
『ワークショップ』
『ワークショップ』
Naoki Sugiura
?
地方豪族论颈苍札幌
地方豪族论颈苍札幌
Masahiko Shoji
?
JAWS DAYS 2015 OpsWorks Aceに聞け
JAWS DAYS 2015 OpsWorks Aceに聞け
晋也 古渡
?
第24回厂滨础例会プレゼン资料
第24回厂滨础例会プレゼン资料
Tae Yoshida
?
15分で分かる(かも)「デザイン思考のポケット?ガイド」
15分で分かる(かも)「デザイン思考のポケット?ガイド」
Katsuhito Okada
?
「旅のことば」ワークショップ @ DFJ summit 2015
「旅のことば」ワークショップ @ DFJ summit 2015
Takashi Iba
?
織田信長に学ぶ 目標設定とマーケティングの重要性
織田信長に学ぶ 目標設定とマーケティングの重要性
蹿别别诲蹿辞谤肠别 (株式会社フィードフォース)
?
【JaSST'11 Tokyo】 テスト イノベーション
【JaSST'11 Tokyo】 テスト イノベーション
智治 長沢
?
20080615 wacate
20080615 wacate
Kouichi Akiyama
?
『プロフェッショナル进化论』
『プロフェッショナル进化论』
Naoki Sugiura
?
価値提案から始める
価値提案から始める
Takeshi Kakeda
?
JaSST'15 Tokyo クローシ?ンク?ハ?ネル概要
JaSST'15 Tokyo クローシ?ンク?ハ?ネル概要
Makoto Nonaka
?
JaSST'12 Niigata LT-koyaman
JaSST'12 Niigata LT-koyaman
ryuji koyama
?
Myweekdays and testing
Myweekdays and testing
ryuji koyama
?
【schoo WEB-campus】イノベーションとデザイン思考  先生:柏野尊徳
【schoo WEB-campus】イノベーションとデザイン思考  先生:柏野尊徳
webcampusschoo
?
まる見え、AWS!! - JAWS UG 2015 -
まる見え、AWS!! - JAWS UG 2015 -
Tomoaki Sakatoku
?

More Related Content

Viewers also liked (20)

バグ票见つめて気づきませんか??立场いろいろ、悩みいろいろ?
バグ票见つめて気づきませんか??立场いろいろ、悩みいろいろ?
tomohiro odan
?
Job queue in B2B with Akka
Job queue in B2B with Akka
Yasuki Okumura
?
Job queue in b2b with Akka
Job queue in b2b with Akka
Yasuki Okumura
?
『ワークショップ』
『ワークショップ』
Naoki Sugiura
?
地方豪族论颈苍札幌
地方豪族论颈苍札幌
Masahiko Shoji
?
JAWS DAYS 2015 OpsWorks Aceに聞け
JAWS DAYS 2015 OpsWorks Aceに聞け
晋也 古渡
?
第24回厂滨础例会プレゼン资料
第24回厂滨础例会プレゼン资料
Tae Yoshida
?
15分で分かる(かも)「デザイン思考のポケット?ガイド」
15分で分かる(かも)「デザイン思考のポケット?ガイド」
Katsuhito Okada
?
「旅のことば」ワークショップ @ DFJ summit 2015
「旅のことば」ワークショップ @ DFJ summit 2015
Takashi Iba
?
織田信長に学ぶ 目標設定とマーケティングの重要性
織田信長に学ぶ 目標設定とマーケティングの重要性
蹿别别诲蹿辞谤肠别 (株式会社フィードフォース)
?
【JaSST'11 Tokyo】 テスト イノベーション
【JaSST'11 Tokyo】 テスト イノベーション
智治 長沢
?
20080615 wacate
20080615 wacate
Kouichi Akiyama
?
『プロフェッショナル进化论』
『プロフェッショナル进化论』
Naoki Sugiura
?
価値提案から始める
価値提案から始める
Takeshi Kakeda
?
JaSST'15 Tokyo クローシ?ンク?ハ?ネル概要
JaSST'15 Tokyo クローシ?ンク?ハ?ネル概要
Makoto Nonaka
?
JaSST'12 Niigata LT-koyaman
JaSST'12 Niigata LT-koyaman
ryuji koyama
?
Myweekdays and testing
Myweekdays and testing
ryuji koyama
?
【schoo WEB-campus】イノベーションとデザイン思考  先生:柏野尊徳
【schoo WEB-campus】イノベーションとデザイン思考  先生:柏野尊徳
webcampusschoo
?
まる見え、AWS!! - JAWS UG 2015 -
まる見え、AWS!! - JAWS UG 2015 -
Tomoaki Sakatoku
?
バグ票见つめて気づきませんか??立场いろいろ、悩みいろいろ?
バグ票见つめて気づきませんか??立场いろいろ、悩みいろいろ?
tomohiro odan
?
Job queue in B2B with Akka
Job queue in B2B with Akka
Yasuki Okumura
?
Job queue in b2b with Akka
Job queue in b2b with Akka
Yasuki Okumura
?
『ワークショップ』
『ワークショップ』
Naoki Sugiura
?
地方豪族论颈苍札幌
地方豪族论颈苍札幌
Masahiko Shoji
?
JAWS DAYS 2015 OpsWorks Aceに聞け
JAWS DAYS 2015 OpsWorks Aceに聞け
晋也 古渡
?
第24回厂滨础例会プレゼン资料
第24回厂滨础例会プレゼン资料
Tae Yoshida
?
15分で分かる(かも)「デザイン思考のポケット?ガイド」
15分で分かる(かも)「デザイン思考のポケット?ガイド」
Katsuhito Okada
?
「旅のことば」ワークショップ @ DFJ summit 2015
「旅のことば」ワークショップ @ DFJ summit 2015
Takashi Iba
?
【JaSST'11 Tokyo】 テスト イノベーション
【JaSST'11 Tokyo】 テスト イノベーション
智治 長沢
?
『プロフェッショナル进化论』
『プロフェッショナル进化论』
Naoki Sugiura
?
価値提案から始める
価値提案から始める
Takeshi Kakeda
?
JaSST'15 Tokyo クローシ?ンク?ハ?ネル概要
JaSST'15 Tokyo クローシ?ンク?ハ?ネル概要
Makoto Nonaka
?
JaSST'12 Niigata LT-koyaman
JaSST'12 Niigata LT-koyaman
ryuji koyama
?
Myweekdays and testing
Myweekdays and testing
ryuji koyama
?
【schoo WEB-campus】イノベーションとデザイン思考  先生:柏野尊徳
【schoo WEB-campus】イノベーションとデザイン思考  先生:柏野尊徳
webcampusschoo
?
まる見え、AWS!! - JAWS UG 2015 -
まる見え、AWS!! - JAWS UG 2015 -
Tomoaki Sakatoku
?

Jasst14tokyo 公開資料_バグレポートの問題事例の調査と改善のためのアンチパターン集の作成