「また壊れた」は正直な報告です。しかし、それだけでは修正が難しくなります。課題管理ツールを開く頃には、どの画面でどのボタンを押し、何が起きたかが曖昧になっているものです。音声でバグ報告を作れば、記憶が新しいうちに詳細を残せます。ただし、話し始める前に構成を決めておく必要があります。
ここでは、目にした不具合を、ほかの人が再現できる報告に変えるための短い手順を紹介します。個人プロジェクトのテスト、職場での課題登録、オープンソースツールの保守支援のいずれにも使えます。正確なコマンドは手入力し、完成した報告を確認する必要があります。音声は起きたことを説明するためのもので、証拠を作り出すためのものではありません。
要点
- 期待した結果と実際の結果を分けて記録しましょう。「動かない」だけでは違いがわかりません。
- 問題を一度再現し、画面を見ながら番号付きの手順を音声入力しましょう。
- 正確なURL、エラーメッセージ、バージョン番号、コードは音声認識に任せず手入力しましょう。
- スクリーンショットやログを添付する前に、個人情報と秘密情報を取り除きましょう。
原因の推測ではなく、起きた現象から始める
タイトルで「データベースのキャッシュが壊れている」と原因を決めつけると、バグ報告は方向を誤りがちです。その推測が正しいかもしれませんが、調査する人がまず必要とするのは観察した事実です。「下書きを保存すると、設定画面で選択した言語が解除される」のように、操作と結果をタイトルにしたほうが適切です。原因についての推測を受け入れなくても検証できます。
音声入力でも同じ原則が役立ちます。まず何をしようとしていたかを一文で述べ、次にソフトウェアが代わりに何をしたかを一文で述べましょう。その週にあったことを長々と話したり、どの部分が故障したかを推測したりすることから始めないでください。時々しか起きないなら、そのように伝えます。自分の端末では毎回起きるなら、それも伝えます。ただし、全員に起きるとは断定しないでください。
GitHubの課題の作成ガイドでは、内容がわかるタイトルと本文の入力を案内し、リポジトリに課題テンプレートが用意されている場合があることも説明しています。テンプレートがあれば使いましょう。以下の音声入力の構成は、項目を埋める前に事実を集めるためのものです。プロジェクト固有の指示を無視する理由にはなりません。
音声メモの5つの項目
公開の課題管理ツールに直接投稿するのではなく、まず非公開の空の下書きを開きます。エディターを選択し、短い5つの項目を音声入力します。項目の間には改行を入れましょう。最初の下書きは、整ったリリースノートではなく、目撃したことの記録として書きます。
- 状況:何をしようとしていましたか?ページ、機能、操作の名前を挙げます。
- 手順:どの操作で不具合が起きましたか?順番に番号を付けます。
- 期待した結果:合理的に期待できる結果は何でしたか?
- 実際の結果:画面上で何が起きましたか?短いエラー文は確認してから引用します。
- 発生条件:いつ、どの環境で起きましたか?再現できますか?
以下はコピーして使えるテンプレートです。角括弧の部分はすべて、観察した詳細に置き換えてください。不明な項目には、もっともらしい答えを埋めるのではなく「未確認」と書きましょう。
タイトル:[操作]によって[観察した結果]が起きる 状況:[機能/ページ]で[目的]を達成しようとしていた。 再現手順: 1. [正確な開始状態] 2. [最初の操作] 3. [次の操作] 期待した結果:[本来起きるはずだったこと] 実際の結果:[起きたこと。確認済みのエラー文を含む] 発生頻度:[1回/時々/この端末では毎回] 環境:[アプリのバージョン、OS、必要に応じてブラウザー] 証拠:[役立つ場合は安全なスクリーンショットまたは機密情報を除いたログ]
角括弧をそのまま読み上げれば構造化されたマークアップになる、とは考えないでください。先にエディターに見出しを入れ、それぞれの項目に音声を入力します。macOSやWindowsでTalkpadのようなデスクトップ向け音声キーボードを使うなら、非公開の下書きにカーソルを置き、1項目ずつ入力しましょう。投稿前に各項目で止まり、確認・修正しやすくなります。
一度再現し、操作を順に説明する
記憶は一連の操作を大まかな要約に変えてしまいます。「設定を変えたらページがクラッシュした」では、再読み込みやアカウントの切り替え、未保存のフォームを省いているかもしれません。安全であれば、影響を受けるアプリの横に下書きを開いて操作を繰り返します。各操作の後で一度止まり、何をしたか記録しましょう。文章を良くするためだけに、データを削除したり料金が発生したりする不具合を繰り返し起こさないでください。
手順は具体的に書きます。「設定を開き、スペイン語を選び、保存をクリックして、設定を開き直す」と書き、「いつもの環境設定に入って例の操作をする」とは書かないでください。保存ボタンが複数あるなら、どのパネルかを指定します。再読み込み後にだけ不具合が現れるなら、その操作も含めます。画面を見たことのない同僚でも、抜けたクリックを尋ねずに手順を実行できるようにしましょう。
経過は音声で説明できますが、間違いやすい文字列にはキーボードを使いましょう。音声認識モデルはパッケージ名を普通の単語に変えたり、フラグの大文字・小文字を変えたり、マイナス記号を消したりすることがあります。スタックトレースやエラーは読み上げず、アプリから確認済みのものを貼り付けましょう。1.4.12のような正確なバージョン番号も同様です。慎重な確認が必要な、比較的リスクの低い単語については、名前と専門用語のガイドをご覧ください。
期待した結果と実際の結果を分ける
ここが、報告を役立つものにする要点です。「フォームが失敗した」だけでは、調査する人にはほとんど何も伝わりません。「保存をクリックした後に確認メッセージが表示されたが、設定を開き直すと言語が英語に戻っていた」なら、観察できる食い違いがわかります。期待した結果も、「設定を開き直しても、保存した言語がスペイン語のままであるべきだった」のように簡潔に書けます。
期待した結果の欄に、修正案を紛れ込ませないでください。「アプリは別のキャッシュを使うべきだ」は実装上の提案であり、利用者が確認できる期待結果ではありません。仮説があれば、不確実であることを明示し、末尾の注記に分けて書きましょう。原因はAPIの応答や古いクライアント、あるいはまったく別のものかもしれません。
音声認識が否定表現を間違えると、報告の意味が逆転します。「ダイアログが閉じなかった」と「ダイアログが閉じた」を比べてください。課題を登録する前に、こうした文を画面で読み直しましょう。そのため、リスクを優先する校正方法では、文体の修正よりも否定、数字、名前の確認を優先しています。
環境情報は加えるが、詳細すぎる調査記録にはしない
通常、最低限役立つ環境情報は、アプリのバージョン、OS、ブラウザーで不具合が起きる場合はそのブラウザー、そして再現に必要な機能設定です。新しいセッションや別の端末でも再現できるかどうかは、実際に試した場合にだけ書きましょう。時刻やネットワークの状態は結果が変わる場合には重要ですが、そうでなければ余計な情報になります。
スクリーンショットは添付前に確認してください。ユーザー名、メールアドレス、トークン、顧客情報、チャットのプレビューが隅に映り込んでいることがあります。関連する部分だけに切り抜くか、信頼できる編集ツールで機密情報をぼかしましょう。ログも同様に確認が必要です。課題管理ツールが公開されているなら、添付ファイルも公開されると考えてください。職場の規則を確認する必要がある場合は、機密情報をツールに音声入力する前に音声入力のプライバシーチェックリストをご覧ください。
Talkpadは、カーソルのあるアプリに音声で下書きを入力できますが、スクリーンショットの安全性やスタックトレースの正確性は確認しません。それらは自分で確認する必要があります。社内規則でインシデント情報の音声処理が制限されている場合は、その規則に従い、機密部分は手入力してください。
登録前に2回に分けて見直す
1回目は再現性の確認です。記載した開始状態から、手順を文字どおりに実行します。不具合は現れますか?期待した結果と実際の結果は異なり、明確に書かれていますか?サインインの操作や結果に影響する設定を省いていませんか?再び再現できないなら、不確実さを隠さず、発生頻度の欄を実態に合わせて変更しましょう。
2回目はリスクの確認です。バージョン番号やエラー文を元の情報と照合します。本文と添付ファイルから秘密情報を取り除きます。推測は観察できる事実に置き換えるか、仮説だと明記します。前置きのせいで手順にたどり着くのが遅いなら短くしましょう。最初の下書きが整理された項目ではなく、ひと続きの話し言葉になっているなら、音声入力した下書きの編集ツールキットを活用できます。
役立つ報告が長いとは限りません。3つの手順と2文で済む不具合もあれば、条件を揃えた例が必要な不具合もあります。水増しは避けましょう。目的は、ほかの人がその動作を再現し、なぜ別の結果を期待したかを理解できるようにすることです。開始状態を説明できないなら、公開する前にもう少し調べてください。
よくある質問
音声入力でバグ報告を書けますか?
はい。状況、再現手順、期待した動作と実際の動作を非公開の下書きに音声入力できます。正確なコマンド、エラーメッセージ、URL、バージョン番号は手入力し、共有前に確認してください。
バグ報告には何を含めるべきですか?
内容がわかるタイトル、開始時の状況、順序付きの手順、期待した結果、実際の結果、関連する環境、必要に応じて安全な証拠を含めます。リポジトリに課題テンプレートがあれば、それに従ってください。
再現できないバグはどう報告すればよいですか?
1回だけ起きたのか、断続的に起きるのかを伝え、観察したことと把握している環境を記録し、再現できなかった試行についても説明します。不明な手順を推測で埋めないでください。
公開の課題にログを添付してもよいですか?
秘密情報や個人情報が含まれていないか確認した場合に限ります。機密情報は削除または伏せ、問題の説明に役立つ最小限の抜粋を共有してください。チームのインシデント対応規則とプライバシー規則に従いましょう。
Talkpadを無料でダウンロード – 無料プランでは週2,500語まで利用できます。
