バグ票のタイトルの分析

## 1. はじめに
バグ票のタイトルを機械的に分析することで次のようなことがわかることがあります。

- システムテスト工程へ流出しがちなバグ
- テストチームに検出を期待しているバグと実際に起票されているバグのミスマッチ
- バグ検出工程のミスマッチ

そこで生成AI（ChatGPT）で生成した架空のバグのタイトルを題材に分析してみます。

## 2. バグ一覧のサンプル
生成AI（ChatGPT）にテストエンジニアになったつもりで架空のデジタルカメラの架空のバグを何回かに分けて合計160件出力してもらいました。修正優先度、重篤度、タイトルのいずれも生成AIの出力です。

| No. | 修正優先度 | 重篤度 | タイトル
|-----|----|------|----
|   1 | P2 | High | AF機能 - 低照度環境でオートフォーカスが動作しない
|   2 | P2 | High | 連写モード - 高速連写中に撮影が途中で停止する
|   3 | P3 | Mid  | ホワイトバランス - 「太陽光」設定が反映されない
|   4 | P1 | High | 動画撮影 - 4K録画中にランダムでフリーズする
|   5 | P1 | High | バッテリー管理 - 残量20%以下で突然電源が落ちる
|   6 | P3 | Mid  | Wi-Fi接続 - スマートフォン連携時に接続が途切れる
|   7 | P3 | Mid  | タッチパネル - 一部のUIボタンが反応しない
|   8 | P4 | Low  | RAW現像 - カメラ内現像時に色が正しく表示されない
|   9 | P3 | Mid  | SDカード認識 - 特定のブランドのカードが認識されない
|  10 | P3 | Mid  | ファームウェアアップデート - アップデート後に設定が初期化される

<details><summary>No.11～No.160はこちら</summary>

| No. | 修正優先度 | 重篤度 | タイトル
|-----|----|------|----
|  11 | P2 | High | シャッター - 高速シャッター時に画像が黒くなる
|  12 | P2 | High | 露出補正 - EV値を変更しても反映されない
|  13 | P3 | Mid  | ISO感度 - オートISOが意図しない値になる
|  14 | P4 | Low  | ノイズ低減 - 長時間露光時のノイズ低減が動作しない
|  15 | P3 | Mid  | 手ブレ補正 - 動作が不安定で時々効果がない
|  16 | P1 | High | 連写バッファ - 連写後にカメラが応答しなくなる
|  17 | P3 | Mid  | EVF - 電子ビューファインダーの表示が遅延する
|  18 | P4 | Low  | JPEG圧縮 - 画質設定が正しく反映されない
|  19 | P1 | High | HDMI出力 - 外部モニター接続時に画面が乱れる
|  20 | P2 | High | フォーカスピーキング - 設定ONでも表示されない
|  21 | P3 | Mid  | メモリーカードフォーマット - 初期化が失敗する
|  22 | P3 | High | Bluetooth接続 - リモート撮影時に頻繁に切断される
|  23 | P3 | Mid  | メニュー操作 - ダイヤル操作が一部反応しない
|  24 | P4 | Low  | ファームウェアアップデート - 進行状況が100%で止まる
|  25 | P3 | Mid  | バリアングル液晶 - 角度によって表示がちらつく
|  26 | P2 | High | 動画音声 - 録音された音声がノイズ混じりになる
|  27 | P4 | Low  | 画像プレビュー - 再生時に一部サムネイルが表示されない
|  28 | P3 | Mid  | 露出計 - 室内撮影時に誤った測定結果を示す
|  29 | P1 | High | フラッシュ - 内蔵フラッシュが発光しない
|  30 | P3 | Mid  | 撮影モード - パノラマ撮影で画像が正常に保存されない
|  31 | P4 | Mid  | メニュー表示 - 言語設定変更後も一部が英語のまま
|  32 | P2 | High | AF-Cモード - 連写時にピントが合わなくなる
|  33 | P3 | Mid  | 撮影設定 - 設定リセット後も一部の設定が変更されない
|  34 | P2 | High | 露出補正 - ±3EV以上の設定ができない
|  35 | P1 | High | メカシャッター - 低速シャッター時に異音がする
|  36 | P3 | Mid  | バリアングル液晶 - 反転時に画面が表示されないことがある
|  37 | P4 | Low  | カスタムボタン - 一部の機能が登録できない
|  38 | P2 | High | 4K動画撮影 - 長時間録画時にフレームドロップが発生する
|  39 | P1 | High | 電源管理 - スリープ解除後にフリーズすることがある
|  40 | P3 | Mid  | AFエリア選択 - タッチ操作が正しく動作しないことがある
|  41 | P2 | High | シャッターボタン - 半押しでAFが作動しないことがある
|  42 | P4 | Low  | Wi-Fi転送 - 画像転送中に進行バーが更新されない
|  43 | P3 | Mid  | 露出シミュレーション - 設定変更時に画面がブラックアウトする
|  44 | P1 | High | 動画録画 - 長時間録画後にカメラが再起動する
|  45 | P2 | High | 手ブレ補正 - 望遠レンズ使用時に補正効果が低い
|  46 | P3 | Mid  | フラッシュ発光量 - 設定変更が反映されないことがある
|  47 | P4 | Low  | メニュー表示 - 一部の翻訳ミスがある
|  48 | P2 | High | HDMI出力 - 外部モニターに正しく出力されないことがある
|  49 | P3 | Mid  | SDカードフォーマット - 完了後にエラーメッセージが表示される
|  50 | P1 | High | USB接続 - PC接続時に認識されないことがある
|  51 | P4 | Low  | RAWファイル再生 - 再生時に表示が遅い
|  52 | P3 | Mid  | EVF輝度調整 - 設定が保存されないことがある
|  53 | P2 | High | オートホワイトバランス - 室内光の条件で不安定
|  54 | P3 | Mid  | メニュー操作 - 一部のオプションがグレーアウトして選択できない
|  55 | P1 | High | 連写後の処理 - バッファ解放後にカメラが操作不能になる
|  56 | P2 | High | タイムラプス撮影 - 撮影途中で止まることがある
|  57 | P3 | Mid  | AFポイント表示 - 設定変更後も反映されないことがある
|  58 | P4 | Low  | 画像回転 - 自動回転設定が無効になることがある
|  59 | P2 | High | バッテリー残量 - 低残量時に誤った値が表示される
|  60 | P3 | Mid  | タッチシャッター - 一部のエリアで反応しない
|  61 | P4 | Low  | フォーカスアシスト - 選択中のオプションが画面から消える
|  62 | P1 | High | メモリーカード書き込み - 途中でエラーが発生する
|  63 | P2 | High | 連写撮影 - 連写中にブラックアウトが発生する
|  64 | P3 | Mid  | ファームウェアアップデート - 完了後に設定が初期化される
|  65 | P4 | Low  | カメラ内RAW現像 - 出力結果が意図した色合いにならない
|  66 | P1 | High | 動画撮影 - 音声が録音されないことがある
|  67 | P2 | High | AF速度 - 低コントラスト環境で遅延が発生する
|  68 | P3 | Mid  | シャッター音 - 消音モードでもわずかに音がする
|  69 | P4 | Low  | 画像回転 - サムネイルと再生画像の向きが一致しない
|  70 | P1 | High | スリープ復帰 - 復帰後にカメラが反応しないことがある
|  71 | P2 | High | EVF情報表示 - 撮影情報が欠落することがある
|  72 | P3 | Mid  | タッチUI - 一部メニューのタッチ操作ができない
|  73 | P4 | Low  | JPEG出力 - 一部の色が意図しないトーンになる
|  74 | P1 | High | センサー清掃 - 自動クリーニングが機能しない
|  75 | P2 | High | 低温環境 - 気温0℃以下で動作が不安定になる
|  76 | P3 | Mid  | カスタム設定 - 設定内容が意図せずリセットされる
|  77 | P4 | Low  | SDカード挿入 - 認識までに時間がかかることがある
|  78 | P1 | High | メニュー応答 - 長時間使用後に反応が遅くなる
|  79 | P2 | High | 動画手ブレ補正 - 歩行撮影時に不自然な揺れが発生する
|  80 | P3 | Mid  | ライブビュー - 高速シャッター時に遅延が発生する
|  81 | P4 | Low  | 撮影履歴 - 再生モードで表示順がランダムになる
|  82 | P2 | High | AFトラッキング - 被写体追尾中に急に外れることがある
|  83 | P3 | Mid  | ISOオート - 低照度で意図しない高ISO設定になる
|  84 | P4 | Low  | 画像プレビュー - サムネイルが一部表示されない
|  85 | P1 | High | シャッター遅延 - レリーズ後に0.5秒遅れて撮影される
|  86 | P2 | High | バースト撮影 - 連写中に途中で止まることがある
|  87 | P3 | Mid  | EVF切替 - 自動切替時にブラックアウトする
|  88 | P4 | Low  | Wi-Fi接続 - パスワード入力時に文字化けする
|  89 | P1 | High | タイムコード - 動画撮影時に記録がズレる
|  90 | P3 | Mid  | バッテリー持続時間 - メーカー公称値より極端に短い
|  91 | P4 | Low  | AFポイント表示 - 設定変更後に表示が一瞬遅れる
|  92 | P2 | High | 低温環境 - 氷点下でバッテリー残量が急激に減少する
|  93 | P3 | Mid  | 手動フォーカス - ピーキング表示が遅延する
|  94 | P4 | Low  | HDMI出力 - メニュー画面の解像度が低くなる
|  95 | P1 | High | ファームウェア更新 - 成功後に再起動せず操作不能になる
|  96 | P2 | High | タッチAF - タップ時に意図しない位置にピントが合う
|  97 | P3 | Mid  | SDカード抜き差し - 取り外した後にエラー表示が残る
|  98 | P4 | Low  | 画像比較 - マルチ画像再生でズーム倍率が異なる
|  99 | P1 | High | 連写後のバッファ解放 - 書き込み完了までフリーズする
| 100 | P2 | High | Bluetoothペアリング - 接続時にカメラがフリーズする
| 101 | P3 | Mid  | タッチ操作 - メニュー内でスクロールが途切れる
| 102 | P4 | Low  | カラー設定 - 「暖色」設定時に色温度が極端に偏る
| 103 | P1 | High | 高感度撮影 - ノイズリダクション設定が反映されない
| 104 | P2 | High | タイムラプス撮影 - 撮影完了後に動画が生成されない
| 105 | P3 | Mid  | ダイヤル操作 - 回転方向が逆になることがある
| 106 | P4 | Low  | カメラ内編集 - コントラスト変更後にリセットできない
| 107 | P1 | High | 長時間撮影 - 連続使用で本体が異常に熱くなる
| 108 | P2 | High | GPSログ - 記録がランダムに停止することがある
| 109 | P3 | Mid  | EVF情報表示 - 撮影情報がランダムに消える
| 110 | P4 | Low  | 画像回転 - 自動回転が有効でも適用されないことがある
| 111 | P1 | High | 高速SDカード - UHS-IIカードで書き込み速度が遅い
| 112 | P2 | High | マルチフォーカス - 顔認識がONでも機能しない
| 113 | P3 | Mid  | プリセット撮影モード - 設定を適用後にフリーズする
| 114 | P4 | Low  | SDカードスロット - カードを抜くと時々エラー表示が出る
| 115 | P1 | High | スリープ復帰 - 一部のキー入力が効かなくなる
| 116 | P2 | High | 連続動画撮影 - 2時間超過後に録画が停止する
| 117 | P3 | Mid  | タイムラプスプレビュー - 再生時にフレームが飛ぶ
| 118 | P4 | Low  | JPEG圧縮 - 「標準画質」設定時にノイズが増える
| 119 | P1 | High | HDMIライブビュー - 長時間使用後に信号が途切れる
| 120 | P2 | High | Wi-Fi経由転送 - 大容量データ転送時に失敗する
| 121 | P3 | Mid  | AF音 - AF駆動音が異常に大きいことがある
| 122 | P4 | Low  | 画像エフェクト - 「モノクロ」モードの色味が不自然
| 123 | P1 | High | スローシャッター - 長時間露光で画像が暗くなる
| 124 | P2 | High | ISO拡張 - 低ISO（50）設定が反映されない
| 125 | P3 | Mid  | 画像情報 - EXIFデータの一部が欠落する
| 126 | P4 | Low  | ダイヤルカスタマイズ - 割り当てた機能が適用されない
| 127 | P1 | High | メモリーカード書き込み - 保存中にフリーズする
| 128 | P2 | High | シャッター音 - 無音設定でも音がわずかに残る
| 129 | P3 | Mid  | 低照度AF - フォーカス精度が著しく低下する
| 130 | P4 | Low  | 動画記録設定 - H.265設定が適用されない
| 131 | P1 | High | 長時間録画 - 60分超過後にカメラが勝手にシャットダウンする
| 132 | P1 | High | HDR撮影 - 画像合成後にアプリがクラッシュする
| 133 | P2 | Mid  | タッチパネル - メニュー内でスクロールが途中で止まる
| 134 | P3 | Low  | 画像プレビュー - 縦位置撮影のサムネイルが回転しない
| 135 | P1 | High | パノラマ撮影 - 撮影完了後にエラーで保存されない
| 136 | P2 | High | Wi-Fi転送 - RAWファイル転送時に途中で失敗する
| 137 | P3 | Mid  | 連続撮影 - 5分以上の連写後にバッファ解放が遅延する
| 138 | P4 | Low  | HDMI出力 - 外部モニター接続時に画面がちらつく
| 139 | P1 | High | 低速シャッター - 1秒以上の露光でブラックアウトする
| 140 | P2 | High | 電源管理 - 自動スリープ後にシャッターが効かなくなる
| 141 | P3 | Mid  | USB接続 - 外部ストレージへ直接書き込みできない
| 142 | P4 | Low  | カスタムボタン - 割り当てた機能が適用されないことがある
| 143 | P1 | High | バッテリー充電 - 100%表示なのにすぐに電源が落ちる
| 144 | P2 | Mid  | GPS記録 - 位置情報が正しく保存されないことがある
| 145 | P3 | Low  | タイムラプス - 撮影した画像が正しい順番で記録されない
| 146 | P1 | High | 4K動画 - 撮影開始後にフリーズすることがある
| 147 | P2 | High | シャッタースピード - 1/4000秒で撮影時にノイズが発生
| 148 | P3 | Mid  | ISOオート - 室内撮影時に極端に高ISOが選択される
| 149 | P4 | Low  | マニュアルフォーカス - ピント位置が正しく保存されない
| 150 | P1 | High | リモートシャッター - ワイヤレス接続時に反応しない
| 151 | P2 | High | 外部フラッシュ - 同調速度がずれることがある
| 152 | P3 | Mid  | バッテリー残量表示 - 突然0%になり電源が落ちる
| 153 | P4 | Low  | ホワイトバランス - 「日陰」設定時に青みが強くなる
| 154 | P1 | High | RAW現像 - 内部処理時に画像が破損することがある
| 155 | P2 | High | AF速度 - 暗所でAFが極端に遅くなる
| 156 | P3 | Mid  | 動画手ブレ補正 - 一部のフレームで歪みが発生する
| 157 | P4 | Low  | 撮影モード切替 - 「風景」モードの彩度が不自然に高い
| 158 | P1 | High | SDカードエラー - 高速書き込み中にデータ破損が発生
| 159 | P2 | High | 連続撮影 - 10コマ目以降で露出が不安定になる
| 160 | P3 | Mid  | AFエリア選択 - タッチパネルで選択ができないことがある
</details>

修正優先度（P1～P4）と重篤度（High、Mid、Low）の内訳を以下に示します。

|修正優先度|High|Mid |Low |総計
|----------|----|----|----|----
|       P1 | 35 |  0 |  0 |  35
|       P2 | 38 |  2 |  0 |  40
|       P3 |  1 | 47 |  2 |  50
|       p4 |  0 |  1 | 34 |  35
|      総計| 74 | 50 | 36 | 160

テストチームが重篤度を設定して起票し開発チームが修正優先度を設定してバグ修正するスタイルを想定すると架空のバグ一覧とはいえChatGPTは次の理由で優秀なテストエンジニアと思います。

- 重篤度Highが46%、Midが31%、Lowが23%で、やばいバグが半数を占めている
- 修正優先度P1とP2と重篤度High、P3とMid、P4とLowがほぼ対応している
  - テストチームからすればせっかく起票しているのに修正してもらえない、開発チームからすればそこまで修正優先度の高くないバグを重篤なバグとして起票してくる、というミスマッチが起きていないように見える

:::note
重篤度をHigh、Mid、Lowで付けるようにプロンプトで指示したところ生成AIから次のような提案をされました。

>重篤度（Severity） は、High / Mid / Low で設定しました。
>High: 重大な機能不全（撮影不可、フリーズ、電源断など）
>Mid: 影響があるが致命的ではない（設定が反映されない、一部機能が不安定）
>Low: 影響が小さい（画面表示の問題、特定条件で発生）

また、修正優先度は特に何段階とは指示しなかったにもかかわらず次のような提案をされました。
> 次のステップとして、修正優先度（Priority）を設定しますが、何か基準を決めて適用しましょうか？ 例えば以下のようなルールで設定できます。
>修正優先度の例
> 
>P1（最優先）: システムがフリーズ、クラッシュ、電源が落ちるバグ
>P2（高優先度）: 撮影や基本機能に影響があるバグ
>P3（通常優先度）: 一部の設定・機能が動作しないが、回避策があるバグ
>P4（低優先度）: UIの問題や軽微な表示の不具合
>
>このルールで適用する形で良いですか？ それとも、別の方針を希望しますか？ 😊

重篤度、修正優先度ともたたき台として十分役立つように思いました。
:::

## 3. タイトルの分析
バグ票のタイトルを分析して修正優先度が高いバグ票の特徴を調べます。おおまかな手順は次の通りです。

1. バグ票のタイトルを単語で分割する
1. 単語の登場回数を調べる

### 3.1 バグ票のタイトルを単語で分割する
形態素分析を行います。本稿では[ExcelとWordを使って超お手軽単語頻度分析 | すごい改善](https://sugoikaizen.com/skill/714/)で紹介されている方法で行いました。

- 「連写」が「連」「写」と分割されていたため手作業で修正しました
- シャッターに関する次の単語はそれぞれ別の単語として切り出されていて本稿ではそのまま（シャッターでひとまとめにしない）で分析しています
  - シャッター
  - シャッタースピード
  - シャッターボタン
  - シャッター音
  - スローシャッター
  - タッチシャッター
  - メカシャッター
  - リモートシャッター

### 3.2 単語がタイトルに含まれているかを調べる
単語がタイトルに含まれているかをCOUNTIF関数で調べます。

![fig.1 countif関数で調べる](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221758/74657faa-0456-47b0-a1cd-b9eba813e228.png)
fig.1 countif関数で調べる

- セルF2に「撮影」を記入しています
- セルF16に「=COUNTIF(\\$E16, "\*"&F\\$2&"*")」を記入しています
- セルE16に「撮影」が含まれていてCOUNTIFの結果が1になっています

### 3.3 修正優先度および重篤度ごとに単語の登場回数を調べる
修正優先度、重篤度、単語の3つが合致するセルの数をCOUNTIFSで調べます。

![fig.2 countifs関数で調べる](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221758/fe34a7b5-574c-4dee-b706-45ec8f879e1a.png)
fig.2 countifs関数で調べる

- セルF6に「=COUNTIFS(\\$C\\$15:\\$C\\$1007,"P2",\\$D\\$15:\\$D\\$1007,"High",F\\$15:F\\$1007,1)」を記入しています
    - 1007はバグ一覧の行数よりも大きな値であれば構いません
    - 最初は適当に1000にしていたのが行の挿入や削除を繰り返していろいろ試しているうちに1007になった、というのが実際のところです
- セルF6は修正優先度：P2、重篤度：High、単語：撮影を満たすセルが11個あることを示しています

### 3.4 単語の出現回数を整理する
3.1節で出現回数が4以上の単語について整理したものをfig.3に示します。

![fig.3 3.1節で出現回数が4以上の単語](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221758/30211f63-b931-4697-8d7d-9d082c41fed9.png)
fig.3 3.1節で出現回数が4以上の単語

サンプルのバグ一覧は修正優先度P1とP2と重篤度High、P3とMid、P4とLowがほぼ対応していることから重篤度を省いて整理してみます。また、件数だけでなく割合にも着目してみます。P1のチケット件数→P1のチケット割合を大きい順にソートしたものをfig.4に、P1のチケット割合→P1のチケット件数を大きい順にソートしたものをfig.5に示します。

![fig.4 P1のチケット件数→P1のチケット割合を大きい順にソート](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221758/9818ab87-b6c0-4160-b541-7ea16ededab6.png)
fig.4 P1のチケット件数→P1のチケット割合を大きい順にソート

![fig.5 P1のチケット割合→P1のチケット件数を大きい順にソート](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/221758/19b458af-e1dd-4256-a306-9ec8502fd71b.png)
fig.5 P1のチケット割合→P1のチケット件数を大きい順にソート

### 3.5 単語の出現回数からわかること
- fig.4 L5「撮影」は登場回数は多いもののP1からP4のどこにも分布しています。カメラのテストで「撮影」が多いのは当たり前と考えられるのでこういった単語は無視します。
- fig.4 L7「書き込み」、L10「動画」、L11「シャッター」、L18「連写」、L15「録画」はP1やP2の登場回数が多い機能のため欠陥が偏在している可能性があります。重点的にテストするとよさそうです。
- fig.5 L6「長時間」、L8「フリーズ」、L45「途中」は架空のバグとはいえ結合テストやシンプルな機能テストで見つけるのは難しいかもしれません。修正優先度が高いわりに見つけるのが難しいバグはそれを見つけるためのテストに工数を投下する価値がありそうです。
- 一方、fig.4 L55「再生」は件数の多さのわりに起票しても修正優先度が低く、起票してもなかなか直してもらえない項目がわかるとより優先度の高いバグを見つけるテストに工数を配分するヒントになりそうです。あるいは優先度の低いバグがシステムテスト工程に流出しないよう開発者に前工程のテストで摘出するように働きかけるのも一案です。

## 4. 分析結果の活用
### 4.1 開発
- バグ票を分析することで「上手に開発するのが難しい機能」や「上手にチェックするのが難しい機能」がわかることがあります。
- テストチームに検出を期待しているバグと実際に起票されているバグにミスマッチが感じられる場合、それがただの思い込みなのか実際にミスマッチしているかを定量的に把握できるのはメリットと思います。

### 4.2 テスト
優先度や重要度の高いテストにリソースを集中するための定量的な判断材料の一つになります。

- 全数テストは不可能なことや欠陥は偏在することが知られています。新機能や新機能を追加するために改修した既存機能に加えてバグ票を分析することで得られた「上手に開発するのが難しい機能」「上手にチェックするのが難しい機能」はテストを厚くする候補といえます。
- 顧客満足に寄与する度合いが高いものほど優先度が高くなると考えると開発チームによって設定されたバグの修正優先度はその開発チームやチームが所属する組織、ドメインにおける顧客満足の考え方が反映されていると考えられます。

> 2.全数テストは不可能
> すべてをテストすることは、ごく単純なソフトウェア以外では非現実的である（Manna 1978）。全数テストの代わりに、テスト技法（第4章参照）、テストケースの優先順位付け（5.1.5項参照）、リスクベースドテスト（5.2節参照）を用いて、テストにかける労力を集中すべきである。
> 4.欠陥の偏在
> 通常、見つかる欠陥や運用時の故障の大部分は、少数のシステムコンポーネントに集中する（Enders 1975）。この現象は、パレートの法則を示している。予測した欠陥の偏在、および実際にテスト中または運用中に観察した欠陥の偏在は、リスクベースドテストの重要なインプットとなる（5.2節参照）。
> 出典：[ISTQBテスト技術者資格制度Foundation Level シラバス 日本語版 Version 2023V4.0.J02](https://jstqb.jp/dl/JSTQB-SyllabusFoundation_VersionV40.J02.pdf)

### 4.3 QA
QAエンジニアの役割の一つに「品質計画の策定」があり、計画を立てるための材料になります。

>3-7 品質計画の策定
>QAエンジニアは「品質計画」の策定に関与するケースも少なくありません。品質計画とは、プロジェクトが達成すべきソフトウェアの品質目標や、その達成に向けたプランを明確にするプロセスのことです。
>出典：[QA(品質保証)とは？主な7つの役割と求められるスキル・資格を解説【ソフトウェア開発・テスト用語 】| Qbook](https://www.qbook.jp/column/714.html)

これは顧客が期待する水準を維持するためにプロセスの各段階で何をどれくらいどうやるかを組織の品質方針と矛盾しないように決めることといえます。また、やることを決めるのはやらないことを決めることでもあります。

:::note
- 品質目標をISO 9001にならって解釈すると「組織の品質方針と整合する、組織が品質に対して達成すべき目標」となります。
- 「顧客が期待する水準の維持」は次のOxford Business English DictionaryのQuality Assuranceの説明を参考にしています。
> (Production) the practice of managing every stage of the process of producing goods or providing services to make sure they are kept at the standard that the customer expects
> （参考：DeepL翻訳）(生産）商品を生産したりサービスを提供したりするプロセスの各段階を管理し、顧客が期待する水準に保たれるようにすること。
:::

サンプルのバグ一覧では「再生」を含むバグは重篤度、修正優先度が低いことがわかりました。「再生」を含むタイトルを以下に示します。

| No. | 修正優先度 | 重篤度 | タイトル
|-----|----|------|----
|  27 | P4 | Low  | 画像プレビュー - 再生時に一部サムネイルが表示されない
|  51 | P4 | Low  | RAWファイル再生 - 再生時に表示が遅い
|  69 | P4 | Low  | 画像回転 - サムネイルと再生画像の向きが一致しない
|  81 | P4 | Low  | 撮影履歴 - 再生モードで表示順がランダムになる
|  98 | P4 | Low  | 画像比較 - マルチ画像再生でズーム倍率が異なる
| 117 | P3 | Mid  | タイムラプスプレビュー - 再生時にフレームが飛ぶ

もしシステムテスト工程の手動テストでこれらのバグを見つけているならその工数はもっと重篤度や優先度の高いバグを見つけることに使う方が有意義な可能性があります。また、No.27、69、81は実機を治具で操作したり期待画像と比較することでチェックの自動化ができそうです。そこで次のような品質計画が考えられます。

<dl>
  <dt>目的
  <dd>重篤度や優先度の高いバグをより多く摘出し、以って顧客満足度向上をはかる
  <dt>段取り
  <dd>①No.27、69、81のような重篤度や優先度が低いバグの手動テストを割愛すると決める
  <dd>②割愛してねん出した工数を重篤度や優先度の高いバグを見つけるテストに割り振る
  <dd>③手動テストを割愛しても後工程にバグが流出しないよう前工程（実装工程）に自動チェックを追加するよう開発チームに働きかける
  <dd>④もしチェック自動化が難しいならQAチームで巻き取る
</dl>

:::note
- バグの入り込みに着目した品質計画も考えられますが本稿では割愛します
- テストを減らしたりなくしたりするのは難しいですが、顧客が期待する水準を維持できるように代替手法を組み込む、リソースをリスクの高いところに振る、リスクを評価して戦略的に判断する、と考えるとよいと思います
- テストにおける戦略の考え方は「[テスト戦略談義まとめ](https://posfie.com/@krsna_crespo/p/2KCEwqW)」が参考になります
- 戦略は「[戦術 tactic と戦略 strategy の違いを英語で詳しく解説](https://almamatersjk.com/knowledge020tactics-strategy/)」がわかりやすいと思いました
:::

## 5. おわりに
バグ票のタイトルの分析は機械的なテキスト処理ながらも単語の出現回数という定量データが得られ、改善活動として手を付けやすいと思います。

## A. 補足
より高度な手法としてテキストマイニングによるバグ分析があります。

- [ネットワーク型データモデルを用いた問題点の可視化と問題分析への応用例](https://www.juse.jp/sqip/library/shousai/?id=292)（SQiP 2015、株式会社日立ソリューションズ 角口 勝隆・著）
- [テキストマイニングによる市場データ分析とリスクベースドテストへの応用](https://jasst.jp/symposium/jasst19tokyo/report.html#session)（JaSST'19 Tokyo、株式会社ベリサーブ 堀川 透陽・著）
- [テキストマイニングによるテスト分析、リスクベースドテストへの応用](https://www.veriserve.co.jp/asset/approach/column/test-technique/software-test01.html)（株式会社ベリサーブ 堀川 透陽・著）