Issue報告ガイドライン

Last updated 2002-11-14

なぜこれを読まなければならないのか?

単純に、あなたのIssueの報告が効果的であればあるほど、開発者は実際にそれを修正してくれます。このIssueを書くためのガイドラインは、Issueを書くのを慣れていない人のためである、効果的なIssueの報告の書き方の一般的なチュートリアルです。ただし、全ての記述があなたのソフトウェアプロジェクトにぴったりと当てはまるとは限りません。

有益なIssue報告を書く方法

有益なIssue報告とは,Issueを解決させる報告です。有益なIssueの報告は通常、2つの特質を持っています。

  1. 再現性
    もし開発者がそのIssueを再現することができないか、そのIssueがちゃんと証明されなければ、"WORKSFORME"(再現せず)か"INVALID"(無効)をそのIssueに設定して,次のIssueにとりかかるでしょう。あなたが提供できる限りの詳細は、Issueを解決する手助けになります。
  2. 特定
    開発者がそのIssueを特定の問題に区別して考えるのが早ければ早いほど、そのIssueを修正するのがはかどります。(もしプログラマかテスターがIssueを判読しなければならないことになると、その問題を修正したりテストしたりするよりも、報告者にIssueの書き方についての文句を言うのに余計な時間を使ってしまいます。)

    あなたがテストしているアプリケーションがWebブラウザーであるとしましょう。foo.comでWebブラウザーがクラッシュし、Issueの報告を書きたい場合に:

    悪い例:"My spreadsheet crashed when I tried to open a document. I think it contained a chart. My computer uses Windows. I think that this is a really bad problem and you should fix it now. By the way, your icons really suck. Nobody will use your software if you keep those ugly icons. Oh, and my grandmother's has a problem with the word processor. Nothing works right, either. Good luck."
    (参考訳:ドキュメントを開こうとしたとき、表計算がクラッシュしてしました。確か、表計算は図表を含んでいたような気がしないでもないような。Windowsを使用しています。これは本当によくない問題だし、これは今にでも直すべき問題だよ。ところで、このアイコンは実にむかつくね。こんな醜いアイコンを使い続けるなら、誰もこんなソフト使わないよ。あ、それとオバあちゃんがワープロについて問題があるって。ちゃんと動作しないしないらしい。では。)

    良い例:"I crashed each time when I opened the attached spreadsheet document using the 10.13.00 build on a Win NT 4.0 (Service Pack 5) system. I also rebooted into Linux (RedHat 6.2), and reproduced this problem using the 10.13.00 Linux build.
    When I removed the chart from the document I was able to load it without any trouble."
    (参考訳:Win NT4.0(Service Pack5)上で10.13.00ビルドを使用すると、添付した表計算ドキュメントを開くたびにクラッシュします。またLinux(RedHat 6.2)上で同じことをしたら、10.13.00のLinuxビルドを使っても同じことが再現できます。
    そのドキュメントから図表を取り除いたら、問題なく開くことができました。)

IssueZillaに有用なIssue報告を入力する方法

Issueを記録するために、あなたはOpenOffice.orgに登録されたユーザーでなければなりません。登録は簡単です:左のnavbarから"Join"をクリックして手順に従うだけです。すぐにできます。もしあなたが登録されたユーザーであるならば(訳注:ユーザーとして登録したら)、左のnavbarにある"My Issues"か"Bugs and Issues"をクリックしてください。Bugs and Issuesは、IssueZillaの説明をし、queryページなどのIssueZilla関連のリンクがある、IssueZillaについて網羅されたページです。

あなたが発見したバグがすでにIssueとして報告されているかどうかを調べるためにIssueZilla Query Pageを見てください。(もしあなたの報告が既知Issueの37回目の重複報告だったら,あなたはむしろ開発者を苛立たせる可能性が高いです。開発者は苛立つとIssueをより解決しづらくなってしまいます。)

次に、最近のビルドを使って、あなたが報告しようとしているIssueが再現できるか確認してください。開発者は作業進行中のコードベースに対して障害となる問題に最も関心を持ちがちです。すでに解決された何百ものIssueを含んだままの古いコードベースは,時代遅れで,開発者は関心を持ちません。

現在のビルドを使って新しいIssueを発見した場合には、それをIssueZillaで報告してください:

  1. あなたのIssueZillaページ(訳注:My Issuesのページ)から報告するには、"Enter a new issue"を選択してください。
  2. あなたがIssueを発見したproductを選択してください。
  3. あなたのEメールアドレスとパスワードを入力して、"Login"ボタンを押してください。(まだパスワードをもっていないのであれば、パスワード欄を空欄にして、その代わり"E-mail me a password"ボタンを押してください。すぐにパスワードが記載されたEメールが届きます)

訳注: 実際にはこんな手順ではありません。以下の手順になります。

  1. 左のnavbarにある"Login"のリンクをクリックして、あなたのEメールアドレスとパスワードを入力して"Login"ボタンを押してください。(まだパスワードをもっていないのであれば、パスワード欄を空欄にして、その代わり"E-mail me a password"ボタンを押してください。すぐにパスワードが記載されたEメールが届きます)
  2. 左のnavbarにあるMy Issueのリンクをクリックして、さらにそのページの"Enter New Issue"を選択してください。
  3. あなたがIssueを発見したコンポーネントを選択してください。これで、新しくIssueを入力するフォームページにいくことができます。

フォームを埋めてみましょう。それぞれの意味は以下の通りです。

どこでIssueを見つけましたか?

Product:どのproductでIssueを見つけましたか?
これはさっきのページで指定しています。
(訳注: 実際にはこんなものはありません。代わりにcomponentを指定しなければなりません。)

Version:どのバージョンでIssueを見つけましたか?
埋められるのであれば、埋めてください

Component: どのコンポーネントにIssueがありましたか?
IssueZillaはIssueを入力するのに、コンポーネントを選択する必要があります。(どのコンポーネントがどんなものか分からない場合には、コンポーネントのリンクをクリックしてください。それぞれのコンポーネントの説明がされており、コンポーネントを選択する手助けになります。)
(訳注: これはさっきのページで指定しています。コンポーネントの詳細については、左のnavbarにある"Project"をクリックすると、各プロジェクトページへのリンクが張られたページが表示されます。各プロジェクトのページを参照してください。)

Platform: どのハードウェアプラットフォームでIssueを見つけましたか?(例: Sun, PC)
もしどのハードウェアプラットフォームでもそのIssueが起きたのかが分かっているのであれば、'All'を選択してください。そうでない場合には、あなたがIssueを見つけたプラットフォームを選択するか、そのプラットフォームがリストに載っていない場合には"Other"を選択してください。

OS: どのOSでそのIssueを見つけましたか?(例: Linux, Windows NT)
もしどのOSでもこのIssueが起きるのが分かっているのであれば、'All'を選択してください。そうでない場合には、あなたがIssueを見つけたOSを選択するか、そのOSがリストに載っていない場合には"Other"を選択してください。

Issueはどれだけ重要か?

Issue Type: これはdefect(欠陥)ですか?enhancement(機能拡張)ですか?feature(新機能)の要求ですか?task(課題)ですか?それともpatch(パッチ)ですか?
これはデフォルトで'defect'になっています。(最も適当なIssueの種類を選ぶために、Issue Typeのリンクをクリックしてそれぞれの選択肢の詳細な説明を見てください。

Resolution Priority: その解決はどれだけ急を要しますか?
これはデフォルトで'3'になっています。1が一番優先度が高く、5が一番優先度が低いです。

誰がそのIssueに対応しますか?

Assigned To: どの開発者がこのIssueを解決する責任を持ちますか?
IssueZillaは、Issueが報告されると、そのIssueを自動的にデフォルトの開発者に割り当てます。このテキストボックスは,デフォルトとは異なる開発者にIssueを手動で割り当てることができるように用意されたものです。(各コンポーネントでのデフォルトの開発者のリストを見るには、コンポーネントのリンクをクリックしてください。)

Cc: 他に誰がこのIssueに対する変更通知をEメールを受け取りますか?
そのIssueに対する全ての変更通知をEメールで受け取る他の人(訳注:Issue報告者とAssigned Toで指定した開発者以外の人)のEメールアドレスを列挙してください。あなたが好きなだけEメールアドレスを入力することができます。各Eメールアドレスはコンマで区切られてなければなりません。間に余計なスペースなどは入れないでください。

そのIssueについて他に開発者に伝えられることはありませんか?

URL: このIssueをどのURLで見つけましたか?
ある特定のURLでそのIssueに遭遇したのであれば、ここにそのURLを入力してください。

Summary: だいたい60字以下で、どのようにそのIssueを説明しますか?
よいsummary(要約)というのは,端的に,また的確に特定のIssueを報告するものです。さもないと開発者達はIssue summaryの欄を用いて有意義にIssueを検索することができなくなり,また10ページあるIssueリストをレビューする際にあなたのIssue報告に注意を払い損なうことになりがちです。

"Abort trying to install on RedHat 7.0, Kernel 2.2.14"(参考訳:RedHat7.0、Kernel 2.2.14にインストールしようとしたら落ちます)は良いタイトルです。"Software fails"(参考訳:落ちました)とか"install problem"(参考訳:インストールについての問題)は良くないタイトルの例です。

Description: このIssueについて他に開発者に伝えておくことはありませんか?
このフィールドには、その問題点の詳細をできる限り入力してください。正確に段階ごとに説明するのが一番良いでしょう。
クラッシュの問題の場合,下記の追加情報を提供できれば役立つかも知れません(訳注:Target Milestoneの下にあるWin32, Unixの情報がその追加情報と思われます。)

Target Milestone. 〆切と考えてください。この欄は"not determined(未定)"かnext build(次のビルド)"のいずれかです。ほとんどのIssueでは"not determined"を選んでください。

これで完了です!入力に誤りがないかもう一度見直して,"Commit"ボタンを押してください。これでIssueがIssueZillaのデータベースに登録されます。


(これらのBug Writing GuidelinesはもともとはMozillaのためにEli Goldbergによって書かれました。この文書に貢献してくれたClaudius Gayle, Peter Mock, Chris Pratt, Louis Suarez-Potts, Tom Schutter, and Chris Yehに感謝します。有益な意見とフィードバックを歓迎します。)


この文書の更新履歴


翻訳:中本
査読:whm,樋口,Y
制作者:Y
デザイン:小浦寛裕
$Id: bug_writing_guidelines.html,v 1.2 2003/03/08 03:38:49 bluedwarf Exp $