個人プロジェクトのバグをどのように追跡しますか?[閉まっている]


45

自社開発プロジェクトの欠陥追跡プロセスを再評価する必要があるかどうかを判断しようとしています。過去数年間、TODOコード内のタグを使用して欠陥を実際に追跡し、特定のビューでそれらを追跡しています(適切なタグ付けシステムを備えたEclipseを使用しています)。

残念ながら、私はこのシステムが持続不可能かどうか疑問に思っています。私が見つけた欠陥は通常、私が取り組んでいるコードの断片に関連しています。すぐに理解されないバグは忘れられるか、無視される傾向があります。私は妻のために、ほぼ9か月間重大な欠陥があったアプリケーションを作成しましたが、修正するのを忘れ続けています。

個人的なプロジェクトの欠陥を追跡するためにどのようなメカニズムを使用していますか?特定のシステム、またはそれらに優先順位を付けて管理するプロセスがありますか?



1
これは、よくある質問がトピックから外れていると考えている質問のようです。「どの技術が優れていますか?」
-jzd

Trelloはこの種のことには最適なツールであり、無料です。
ガフーア

回答:


25

Fogbugz(無料の個別ライセンス)が長いプロジェクトまたはシンプルなリスト(Googleタスクを使用)の場合


7
いいね FogBugzには無料版(Student and Startup Editionと呼ばれる、それを探している人向け)があることは知りませんでした。
エリックキング

一見したところ、非常に興味深いように見えます
bedwyr

FogBugzを使用した後、だれかが異なるものを好む方法がわかりません。:複数のFogBugzのアカウントを追跡する必要がないために、私は自分自身のための単一の個人FogBugzの作成earlz.fogbugz.com
Earlz

17

私は通常、Webベースのリビジョン管理システム(Github、Bitbucket、Redmine、Google Codeなど)を使用して、ソースコードを保存し、バグを追跡します。特定のコードにバグがあると思われる場合は、リビジョン番号/変更リスト/変更セットに問題を作成し、疑わしいファイルと行の範囲を指定できます。


8

私は以前、プロジェクトごとにスプレッドシート/テキストファイルを使用していました(コード内のToDoコメントは、リストした理由によりうまくスケーリングしません;それらはコードに対してローカルであり、そうでない問題がある場合、それは抜け落ちがちですクラック)。

最近、ホームネットワークにRedmineサーバーをセットアップしました。1つの「チーム」にとっては少し重いですが、私は自分の時間にかなりの数のプロジェクトに取り組んでおり、より複雑な場所で多分奇妙なwikiページで課題トラッカー+リポジトリオプションを使用する傾向があります。

私の友人は同じ目的でPivotal Trackerを誓っていますが、私の現在の雇用主はRedmineを社内で使用しているので、これで練習ができると思いました。悪くない。

オープンソースプロジェクトの場合は、GitHubの問題追跡を使用します。


コード内のTo Doコメントは、ドキュメントを定期的に作成する限り、Doxygen /同様の注釈であればより適切に機能します。生成されたドキュメントで収集された仕事(およびバグ)のリストを取得します。専用のバグトラッカーの柔軟なレポートオプションがないことは明らかであり、注釈が現在のバージョンから削除されたときにリポジトリ内の古い(おそらく)解決済みのバグを検索することはありませんが、小規模な場合はかなりうまく機能しますシンプルなプロジェクト。
Steve314

7

ホストされているWebサーバー(ブログなどに使用している)に無料のMANTISバグトラッカーシステムを実際にインストールし、そこにすべての欠陥を入れました。

言い換えれば、私は自分のものをプロであり、支払いをしているかのように実行します。

業界で一般的に使用されている他の慣行と一貫性があるように(欠陥をなくすなど)、より良い考え方を保つのに役立つと思います。

コードなどでもTODOノートを使用します。ただし、「いつかこれをもっと効率的にする必要があります。バブルソートはパフォーマンスを低下させます」などのトップセルフのノートにのみ使用してください。または、夕食に出かけたときまでに起きた場所についてのより迅速なメモのために:)


私はマンティスを使用し、それは素晴らしいです!
ジョブ


5

私たちは職場でJIRAを使用していますが、私は大ファンです。たくさんの製品と関係者がいて、すべてうまく管理しています。


+1 Jiraは、私が遭遇した中で最も優れた問題追跡システムです。使いやすく、必要に応じて徐々に高度な機能を使用します。技術に詳しくないユーザーでも問題を報告してフォローアップできるほどフレンドリーです。
マグロブ

別の賞賛。JIRAは:)正のフィードバックサイクルをトリガーにより多くのあなたが置くよりを与える強く「発熱」ツール、である
Maglob

4

私は少し前にこれに対する答えを探しに来て、それ以来、私にとってこれらの重要な目標を満たしている非常にきちんとしたシンプルなシステムを作りました:

重要度の高い目標:

  1. 新しいタスク/バグをできるだけ楽に入力できるようにして、見つけたらすぐに書き留めたり、夢を見たり、場所を失う前にコーディングに戻ったりできるようにします。
  2. 多くの検索、クリック、ドリルダウンなしで、問題を簡単に確認および管理できます。
  3. バージョン管理と簡単に結び付けて、後で問題を解決するために行われた変更、またはコードの特定の変更を引き起こしたタスクまたはバグを見つけられるようにします。
  4. 比較的簡単にセットアップできます。最小限のインストールと構成、最小限の価格です。

(3と4はそれほど重要ではなく、それらを提供しなかったシステムでも大丈夫だったでしょうが、これはそうです)。

ステップ1:Bitbucketでプロジェクトを取得する

私が使用してビットバケットを(例えばXcodeでiOSのプロジェクトのために)問題の追跡のためにとgitのバージョン管理のために。FogBUGz(JoelOnSoftwareで何年も読んでいます)やGitHubなどを見ましたが、bitbucketには小さなチーム向けの最高の無料機能セットがあるようです。

ステップ2:プロジェクトでBitbucket Issue Trackingを使用する

次に、同じbitbucketプロジェクトで課題追跡を設定しました。そのため、私のプロジェクトにはgitリポジトリと問題追跡があります。

ステップ3:問題追跡を簡単にします!

このため、私はBitbucketカードを使用しています。これは、Bitbucketの問題に対するかんばんのようなフロントエンドです。Bitbucketアカウントにログインして、必要な列を設定するだけです。[バックログ]、[次へ]、[バグ]、[解決済み]の4つの列があります。(バグとバックログをマージすることを考えていますが、今のところは気にしません)

Bitbucket Cardsの例 (この画像はプロジェクトからではなく、Bitbucket Cardsブログからのものです。したがって、列は私が使用するものとは異なります)

Bitbucket Cardsを使用すると、カードの列に含まれる問題のステータスと種類を選択するリストごとに非常に簡単なフィルターを設定できます。そのため、openこの種のステータスの問題はbug[ バグ ]列にあります。

列定義 (これは私のプロジェクトからのものです:それは私がバグ列に行くものを選択する方法です)

本当にすばらしいのは、ある列から別の列にカードをドラッグアンドドロップすると、カードが表す問題のステータスが宛先列の定義に一致するように自動的に変更されることです。

Bitbucket Cardのもう1つの良い点は、タイムアウトが簡単に発生しないことです。このセットアップ全体の目的はそれを簡単にすることであるため、これは非常に重要です。したがって、このシステムは私が作業する代わりに私のために機能します。カードページのブックマークを開くと、Chromeタブで1日中開いたままになります。

これが私の2番目の目標を処理します。

ステップ4:バージョン管理と結び付けます。

Bitbucketの問題は(ほとんどの競合他社に関して)バージョン管理ときちんと結びついているため、問題の作業が終了したら、「whatsitにwhatoを追加しました。修正#245」のようなメッセージでgitをコミットします。これをコミットしてからプッシュし、Bitbucket Cardsページをリロードすると、問題が[解決済み]列に移動したことがわかります。クール。

3番目の目標が完了しました。

ステップ5:問題の作成を簡単にします。

おそらく、このセットアップ全体がすでにセットアップを複雑にする方法であり、なぜ別のWebアプリをプロセスに追加したいのかと思われるでしょう。さて、上記の私の主な目標を覚えておいてください。テキストエリアに入力して入力する前に思考の流れを失わないように、タスクを簡単に追加したいと思います。終了するまでのコード。

現在、Bitbucket Cardsを使用すると、タスクをかなり簡単に作成できますが、目標1を完全に達成するためには、クリックするだけで少しです。[問題の作成]をクリックする必要があります。その後、モーダルエディターがポップアップします。課題タイトルを入力した後、下にスクロールして種類(バグ/タスク)と優先度を指定する必要があります。[作成]をクリックします。

代わりに、taskrdという2番目のBitbucketアプリを使用することにしました

Bitbucketにログインしてtaskrdを設定し、ブックマークとタブに設定して、Bitbucketカードのように終日開いたままにすることができます。Taskrdには、新しいタスクを追加するためのはるかに単純なワークフローがあり、入力するだけで、オプションで種類と優先度を設定し、[追加]ボタンをクリックします。

tasrkdインターフェース (この画像はTaskrdブログからのものです)

今では、Bitbucket CardまたはBitbuckets自身の問題入力システムを使用するよりもTaskrdを設定する労力に値するものではないことは議論の余地があります。結局のところ、Taskrdでは、ブラウザーのタブをクリックし、Bitbucket Cardsでページの[再読み込み]をクリックして、Taskrdアプリに追加した新しい問題を更新する必要があります。しかし、実際には、私は一般的にモードまたは他のモードになっていることがわかります:Bitbucket Cardsを使用して、次に行うことを整理するか、バグリストを調べるか、コーディングとタスクの入力に忙しい/ bugsが発生した場合-すべて高速射撃モード。この2番目の作業モードでは、Taskrdは素晴らしいです。別のモニターで開いたままにし、作業中に問題をすばやく入力します。

目標1をカバーします。

私の最後の目標は、簡単/安価なセットアップでした。とても安いです。これはすべて無料です。Bitbucketには最大5人のユーザー向けの無料のプライベートリポジトリがあり、他のアプリは無料でした。上記に基づいてセットアップは簡単ではないように見えますが、実際に最も複雑な部分は、どこでも同じになるbitbucketリポジトリにプッシュするようにgitをセットアップすることでした。何もインストールする必要がなく、両方のアプリを私のbitbucketリポジトリに接続するのはとても簡単でした。カードの列を私がどのように気に入ったかを設定するには、少し遊んでみましたが、それほど難しくはありませんでした。

これを読み返して、私はBitbucketにとってちょっとした裏切りかもしれませんが、そうするつもりはありません。何年もさまざまな構成を試し、自分がしていることを追跡してから何週間もこのプロセスを使用しているだけで、本当に掘り下げているので、他の人のためにそれをレイアウトするのに時間がかかると思いました。


3

EclipseでTODOタグを使用することに慣れている場合、簡単なステップアップはMylynを使用することです。それは最も基本的なもので、単純なToDoリストです。しかし、コンテキストもタスクに関連付けられます。タスクをクリックしてアクティブにし、何らかの操作を行い、次にアクティブにすると、Eclipseは関連するクラスを開き、関連するメソッドを表示します。さらに強力なことに、最終的に他のバグ追跡システムに移行した場合、Mylynはそれらのシステムからタスクを引き出してIDEに表示できます。

最近のほとんどのEclipseダウンロードには、標準でMylynがバンドルされています。タスクリストビューを検索して、タスクの追加を開始します。


+1私はMylynを見たことがありますが、Eclipseでのタスク以上に役立つことはないと思います。コードに直接表示されないバグはシャッフルで失われる傾向があるため、Eclipseが開いていないときにバグを追加する可能性は低くなります:)
bedwyr

TODOタグを使用してから、find / grep -oを使用して自分でtodoリストを作成します。
sal

3

Jiraには10ドルのスターターライセンスを使用しています。安いし、仕事ですでによく知っている。


2

ここの他の人と同様に、私はテキストファイルか、dvcsホスティングサービスに組み込まれているバグトラッカーを使用します。

それの多くは、それが「個人プロジェクト」の種類に依存します。それはこれまでに日の目を見ることになるでしょうか、それとも単なる実験ですか?このプロジェクトは一般に使用されていますか?

たとえば、私の個人的なプロジェクトの1つが適度に人気になり、そのためのGet Satisfactionサイトをセットアップすることは非常にうまくいきました。実際には「バグトラッキング」ではありませんが、バグ/機能のリクエストに適しています。


2

誰もまだこれを言っていないことに驚いていますが、分散ソース管理の一部として機能する分散バグ追跡ソリューションがあります。つまり、バグデータベースはリビジョン管理のコードとともに存在します。よく知られている実装には、「Bugs Everywhere」、Fossil、およびDitzが含まれます。

https://stackoverflow.com/questions/773818/distributed-projectmanagement-bug-trackingおよびhttps://stackoverflow.com/questions/1851221/distributed-bug-tracker-to-go-with-dvc?rq=1を参照してください議論のため。


1

私の個人的なプロジェクトでは、Omnifocusを使用しています。

更新:2010年10月25日すぐに修正できないバグを見つけた場合、またはすぐに修正したくない場合は、すぐにOmnifocus受信ボックスに追加します。その後、レビューを行っているときに、バグを修正してプロジェクトに追加する必要があると思われるすべての情報を収集します。タスクリスト内の位置は、相対的な重要性を示しています。

ほとんどの点で、バグを要件/機能と同じように扱います。


2
応答のためのThx:欠陥追跡のためにそれをどのように使用するかについて詳しく説明してもいいですか
ベッドウィール

更新していただきありがとうございます!一般的なtodoツールが欠陥管理に使用されているのを見るのは興味深いです。
Bedwyr

注: Apple製品のみ
マークC

OmnifocusはApple製品ですが、Apple以外の開発に使用しています。
ヘンリー


1

私は自分のTheKBaseを使用しています(OSXを使用しているため、気分に応じて仮想マシンまたは.Monoの .Netで使用しています)。1人の同時ユーザーのみ。ただし、複数の階層が許可されているため、タスクマネージャーから情報マネージャーに移行し、間にステップがありません。さらに、Githubのオープンソースであり、無料です(明らかにそうです)。

好奇心が強い人のために、指示はここにあります


1

私は個人的なプロジェクトにToDoListを使用しています。軽量で無料で、多くの機能を備えています。チームプロジェクトでどれだけ拡張できるかはわかりませんが、自分で作業するのには最適です。Visual Studioに組み込まれているタスクリストを使用してどのように長く生き延びたかはわかりません。


私の小さな個人プロジェクトでは、ReSharper TODOリストが役に立ちます。
誰も

1

JIRAとGoogle Docs and Spreadsheetsの組み合わせを使用します。JIRAのインストールはダートよりも古く、新しい、手の込んだ、ドラッグアンドドロップインターフェイスほど使いやすいものではないため、他のツールを検討しました。

Manymoon、Zoho Projects、Insightly、Redmine、Assemblaを調べました。Assemblaの無料のスタンドアップツールを試してみます。これは、各チームメンバーに3つの質問をする、非常にシンプルな3フィールドレポートインターフェースです。先週は何をしましたか?今週は何をしますか?どのような障壁がありますか?

最終的には、JIRA、Google Docs、Assembla Stand Upツールに固執するつもりだと思います。組み合わせによって必要なものがすべて得られるからです。


1

Tracは、軽量で使いやすく、設定が簡単なため、Tracが最も気に入っています。統合されたウィキとエレガントなリポジトリブラウザは大きなプラスです。

職場ではJIRAを使用しています。これも非常に優れていますが、管理がそれほど簡単ではありません。また、Wiki(Confluenceとの統合はそれほど優れていません)と優れたリポジトリブラウザー(ViewVCのみ)が本当にありません。


Tracはセットアップと設定が悪夢です。

1

過去数年間、Tracを使用しています。BugzillaとJIRAも使用しました。私の個人的および個人的なコンサルティングプロジェクトは、私が慣れているという理由だけでTracに関係しており、私の個人的な開発セットアップでプロジェクトを進めるのは、努力が終わったので、ほんの少しの労力しかかかりません。SVNまたはGitとHudson(または、現在はJenkins)を含む、必要なすべてに接続されたtracがあります。

いくつかのクライアントプロジェクトでは、一般に彼らが使用するもの以外の選択肢はありません。彼らが最近バグ追跡システムを持っているとき、私は驚いています。個人的には、TracよりもOSSコミュニティからの優れた提供を楽しみにしています。それは物事を成し遂げますが、最近はそのようなパッチワークのようです。


Tracはセットアップと管理の悪夢です。

0

小規模なワンマンプロジェクトに正式なバグ追跡を使用する意味はありません。通常、私は(非常に短い)メンタルリストを保持し、気づいたときにバグを修正します。もちろん、これは大規模/複数人のプロジェクトには対応していませんが、重要なことはそうする必要がないということです。


3
それは部分的に問題です:メンタルリストは不十分になる傾向があります。私の欠陥の多くは精神的に記録され、その後、新しい機能や機能強化が導入されるにつれて失われます。
ベッドウィール

@bedwyr新しい機能を実装する前にすべての既知の欠陥を修正するというルールに固執する場合、これは問題ではありません。
ケビンレイティ

@Kevin、プロジェクトの最新のイテレーションで作業しているときに、以前のリリースで欠陥を見つけることができます。以前のバージョンの低優先度のコーナーケースの欠陥を修正するために、高優先度機能の開発をすぐに停止しますか?そうでない場合、どのように追跡しますか?私の場合、メンタルリストは不十分です。
ベッドウィール

@bedwyr良い点、私はそれが好みの問題だと思います。私たちは小さな一人のプロジェクトについて話しているので、実際にその欠陥をすぐに修正します。私が大企業の環境にいた場合、別の話です。
ケビンレイティ

0

ReSharperを使用している場合は、ソリューション内のTODO trackerすべてTODOの、、NOTEおよびBUGのリストを表示するがあります。また、選択した任意の色でコード内で強調表示します。私は自分のプロジェクトでこれが本当に役立つと思います。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.