22

私たちは、ソフトウェアでやらなければならないことの大量のバックログを、多くの異なるカテゴリで抱えています。たとえば、次のとおりです。

  • 当社の製品が解決すべき新しい問題領域
  • 既存の問題領域をサポートする新機能
  • 既存のユーザーから要求された新しい機能
  • 使いやすさと「見た目」の向上
  • バックエンドへのアーキテクチャのアップグレード
  • バグの修正

これらすべてを賢明な方法で管理することは、製品管理の仕事ですが、多くの理由で注意が必要です。まず、さまざまなものを保持するさまざまなシステムがあります (ファイル内の市場要件ドキュメント、バグ データベース内のバグ、ヘルプ デスク システム内の顧客要件、イントラネット上のエンジニアリングのウィッシュ リストなど)。次に、アイテムの多くは、サイズ、範囲、複雑さ、そしてもちろん価値が大きく異なります。つまり、選択は、リストを優先順位で並べ替えるほど単純ではありません。

現在、私たちはかなり大きく、複雑な製品と多くの顧客を抱えているため、基本的なソリューション (スプレッドシート、Google ドキュメント、ベースキャンプの To-Do リスト) だけでは、これに対処するには十分ではありません。物事をさまざまな方法でグループ化し、継続的に優先順位を付け、現在行っていることとこれから行うことを明確にする方法が必要です。ツールを管理するだけで誰かの時間を費やす必要はありません。

ビジネスが常に既存の顧客にとって最も価値のあることを行い、新しい顧客の獲得を支援し、ソフトウェアの内部を正常に保つことができるように、これをどのように管理しますか?

これは開発側とは異なることに注意してください。すべてを反復的かつアジャイルな方法で開発し、設計と実装のために何かを選択したら、それを実行できます。一番難しいのは、次に何をすべきかを考えなければならない部分です!

うまくいく方法やツールは見つかりましたか?もしそうなら、共有してください!(そして、答えも知りたい場合は、質問を評価して、表示されたままにしてください:)

補遺:もちろん、最初にすべてのバグを修正するのは良いことですが、顧客のマシンに実際にインストールされる実際のシステムでは、それは必ずしも実用的ではありません。たとえば、非常にまれにしか発生せず、修正に膨大な時間とアーキテクチャ上の大変動が必要なバグがある場合は、しばらく放置することがあります。または、誰かが何かを使いにくいと考えているバグがあるかもしれません。それを修正するには、その領域の大幅な改良を待つ必要があると考えています。そのため、すべてをすぐに修正するのではなく、忘れないように開いたままにしておく理由はたくさんあります。さらに、最も難しいのはバグ以外の優先順位付けです。何も持っていないと想像してみてください:)

4

9 に答える 9

12

大量のバックログを積極的に管理することは、ほとんどの場合、無駄です。優先順位の高い山の真ん中にたどり着くまでに、多くの場合、状況は変化しています。Corey Ladas が優先度フィルターと呼んでいるもののようなものを採用することをお勧めします。

http://leansoftwareengineering.com/2008/08/19/priority-filter/

基本的に、サイズが大きくなり、優先度が低くなるバケットがいくつかあります。利害関係者がそれらを埋めることを許可しますが、バケツに空きができるまで、残りのストーリーを無視するように強制します。非常にシンプルですが、非常に効果的です。

編集:アランは、タスクのサイズが異なる場合の対処方法を尋ねました。基本的に、これを機能させるための大きな部分は、タスクのサイズを適切に設定することです。この優先順位付けは、ユーザー ストーリーにのみ適用されます。ユーザー ストーリーは通常、「コミュニティ サイトを作成する」よりも大幅に小さくなります。私はコミュニティサイトをちょっとした叙事詩またはプロジェクトとさえ考えています. 優先順位を付けるには、かなり小さいビットに分割する必要があります。

とはいえ、同じようなサイズのストーリーを作成することは、依然として困難な場合があります。できない場合もあるため、計画を決定する際にそのことを伝えます。

ウィブルを 2 ピクセル移動することに関しては、これらの簡単なことの多くは「無料」で実行できます。これらのバランスを取るように注意し、それらが本当に無料に近く、実際にある程度重要な場合にのみ実行する必要があります.

バグも同様に扱います。バグは、現在、すぐ、または最終的に 3 つのカテゴリのいずれかになります。唯一の違いは、修正を公開するときです。最終的には、開発者が退屈して何もすることがなくなるか、何らかの形で開発者の優先度が高くならない限り、バグは修正されません。

于 2008-09-20T21:18:22.230 に答える
5

重要なのは、積極的な分類と優先順位付けです。

顧客をすばやく遠ざけている問題を修正し、顧客を引き付け続けるための機能を追加します。修正が非常に簡単でない限り、少数の人にしか影響しない問題をプッシュバックします。

于 2008-09-20T20:08:55.783 に答える
3

簡単な手法は、優先順位付けマトリックスを使用することです。

例:

また、Covey が提案する優先順位付けの象限 (2 つの次元: 重要度、緊急度) も役立ちます: http://www.dkeener.com/keenstuff/priority.html。重要で緊急なものに焦点を当て、次に重要で緊急でないものに焦点を当てます。重要ではないもの...まあ..誰かが時間外にそれをしたい場合:-)。私が使用した Covey 象限の変種は、Importance と Ease の次元です。Ease は、Covey 象限内のタスクに優先順位を付ける良い方法です。

于 2008-09-20T20:01:47.390 に答える
1

あなたはすでにアジャイルな方法で物事を行っているので、XPからいくつかのアイデアを借りることができます。

  • すべてのストーリーをインデックスカード(またはそのようなツール)の大きな山に入れます
  • 今、開発者はそれらのストーリーがどれくらい大きいか小さいかを見積もる必要があります(ここで開発者は最後の言葉を持っています)
  • そして、クライアント(または彼らの代理人-プロダクトマネージャーのような)にそれらのストーリーを彼らのビジネス価値によって注文させます(ここでクライアントは最後の言葉を持っています)
  • 開発者がより重要な技術的なもの(厄介なバグの修正など)があると考えた場合、それをクライアント(ビジネスパーソン)に伝え、クライアントにその優先順位を上げさせる必要があります(クライアントはまだ最終決定権を持っています)
  • チームの速度が許す限り、次の反復のためにストーリーを選択します

こちらです:

  • ビジネスニーズ順に並べられたタスクの単一のキューがあります
  • クライアントは投資に対して最高の利益を得る
  • ビジネス価値は、テクノロジーやオタクではなく、開発を推進します
  • 開発者は、実装するのがどれほど難しいかを言うようになります
  • ROIがない場合、タスクはその山の底近くに留まります

詳細については、KentBechMartinFowlerによるPlanningExtremeProgrammingを参照してください。彼らはそれが私が今までにできるよりずっと良いと言います。

于 2008-09-20T20:24:51.813 に答える
1

これらすべてのものは、次の機能を備えた優れたバグ追跡システムによって追跡できます。

  • 作業項目をバグまたは拡張要求としてマークする機能
  • 作業項目が該当する責任範囲のカテゴリフィールド(UI、バックエンドなど)
  • 修正または機能の実行がスケジュールされている場合のバージョン番号フィールド
  • ステータスフィールド(進行中、完了、検証済みなど)
  • 優先度フィールド
于 2008-09-20T20:07:43.337 に答える
1

優先順位を付けることができるように、それらをすべて 1 か所にまとめる必要があると思います。いくつかの異なるソースを照合する必要があるため、これは事実上不可能になります。それができたら、誰か/グループが各バグ、要求された機能、および希望する開発をランク付けする必要があります。

優先順位を付けることができるものは次のとおりです。

  • 製品への付加価値
  • 既存の顧客と潜在的な顧客の両方にとっての重要性
  • タスクの規模
于 2008-09-20T19:56:42.863 に答える
1

最初にすべてのバグを修正してから、新しい機能を追加することを検討してください。

于 2008-09-20T19:57:05.840 に答える
0

ツールやプロセスを超えて、...何人かの人々がいるはずです;)

当店では、彼はリリースマネージャーと呼ばれ、本番環境に出荷する次の機能境界を決定します。
次に、コードとファイルおよびバグについて実際に知っているフリーズマネージャーがあり(彼は通常プログラマーの1人です)、リリースマネージャーの選択を強制し、テストしてからリリースするために必要なマージを監視します。

それらの2つの間で、高レベル(機能要求)と低レベル(バグと技術的な問題)の両方で優先順位を確立できます。

于 2008-09-20T20:07:07.283 に答える
0

ツールがプロセスと同じくらい重要かどうかはわかりません。インデックス カードやホワイト ボードのような単純なものを使用して、かなり大規模なプロジェクトを管理しているチームが非常に成功しているのを見てきました。優先順位付けで私がお勧めすることの 1 つは、これらの項目をまとめた包括的なリストを作成することです。このようにして、問題の修正と新機能などの優先順位を比較検討できます。

于 2008-09-20T19:56:31.070 に答える