バグ報告の方法
何かソフトの不具合に遭遇したとき、開発者に何を伝えればいいか。
開発の経験があれば何を伝えるべきかは直感的にわかるのですが、
経験が無いと、どうしていいか分からないことも多いようです。
要するに「バグ報告の方法」なんですが、良い文章は巷にたくさんあるので、
ここでは簡単に書いてみます。*1
【鉄則】開発者の手元で再現させることを最優先に考える
その不具合が、開発者の手元で再現すれば、バグ修正の80%は完了したようなものです。
そのため、ユーザとしては、開発者の手元で再現させる、というのをゴールとして考えましょう。
原因が何か、悪いのはどこか、は、まずは考えなくていいです。開発者が再現できれば、それはすぐに分かります。
再現させるためは、どんな情報を伝えればいいか。
- 発生事象
- 何が起きたか、をできるだけ正確に伝えてください。
- エラーメッセージならその内容を正確に。画面がおかしいなら、できればスクリーンショットを。
- 報告で割と抜けがちなのですが、同じ操作をすると100%起きるのか、1%なのか、も、重要な手掛かりになります。
- どれくらいの頻度でそれが起きるのか、も教えてください。
- 操作手順
- 何をしたか、をできるだけ正確に伝えてください。
- 何か操作をしたなら、最初から他人がその操作を繰り返せるだけの情報を。
- 操作手順がはっきりしない、或いは放置していたら起きた場合でも、○○をした後○分くらい放置、等、思い出せるだけの情報をください。
- 発生環境
- 同じ操作をしても、環境によって起きたり起きなかったり、ということは良くあります。
- 開発者の環境を、あなたの環境と全く同じにするのが理想です。
- そのための情報をください。具体的には、以下のような情報です。
- PCの簡単なスペック(CPUの速度、メモリの量くらい)
- OS(できればサービスパック等のパッチの状態も)
- 問題がおきたソフトのバージョン(できるだけ詳しく)
- 問題がおきたソフトの設定状況(できるだけ詳しく)
- 他のソフトと関連して動くソフトなら、その関連するソフトについても、できればバージョンと設定状況をください。
これらの情報は小出しにせず、なるべくいっぺんに伝えた方が、お互いの時間の節約になります。
とはいっても、特に環境なんかは、何を伝えればいいか難しいですね。まずは、OSとソフトのバージョンだけでも伝えてください。
それ以上に情報が必要であれば、開発者の方から、○○をください、○○はどうなっていますか、と聞きます。
恐れなくていいです
バグ報告をすると気分を害するのではないか。もしかしてこれはバグではなく、自分の操作が間違っているのではないか。
或いは、このソフトではなく、関連するソフトの方が悪いのではないか。
…そんなことを考えて、報告に尻込みする方も居るかと思いますが、心配しなくていいです。
「一般的に言って」開発者は、バグ報告をされて気分を害することはないです。
また、報告した結果、それが実はバグではなかったとしても、操作誤りをバグだと思ったり、関連するソフトの不具合を誤認したりしたのであれば。
もしかすると、エラーメッセージ等のユーザインタフェースが良くない、或いはFAQなどのドキュメント類が足りないのかもしれません。
それは、極論すれば、広い意味で「そのソフトの不具合」です。
*1:もっと長くて示唆に富んで面白い文章は ここ http://www.unixuser.org/~ueno/bugs-ja.html にあります。