2

スプリントのチーム ベロシティを計算するためのアドバイスが必要です。

私たちのチームは通常、約 4 人の開発者と 2 人のテスターで構成されています。スクラム マスターは、すべてのチーム メンバーがベロシティの計算に平等に貢献する必要があると主張しています。つまり、スプリントでどれだけのことができるかを計算するときに、開発者とテスターを区別してはなりません。スクラムによると正しいですが、ここに問題があります。

反対の提案にもかかわらず、テスターはテスト以外のタスクを手伝うことはなく、開発者は開発以外のタスクを手伝うことは決してありません。また、さまざまな提案にもかかわらず、テスターは通常、各スプリントの最初の数日間、何かをテストするのを待っています。

その結果、通常、スプリントで実際に処理できる能力よりもはるかに多くの開発作業を引き受けることになります。たとえば、開発者はベロシティの計算に 20 日間、テスターは 10 日間貢献する場合があります。ただし、スプリント計画の後にタスクを合計すると、開発タスクは最大 25 日、テスト タスクは最大 5 日になります。

皆さんは、このような状況にどのように対処していますか?

4

9 に答える 9

3

私たちもこの問題に取り組んでいます。

これが私たちの仕事です。キャパシティとタスクを合計するときは、それらを一緒に、または個別に合計します。そうすれば、各グループの合計時間を超えていないことがわかります。(これが真のスクラムではないことは承知していますが、QA 担当者はプログラミングを行わないため、リソースを最大限に活用するために彼らはテストを行い、私たち (開発者) は開発を行うことになります。)

2 つ目の考えは、スライスでの作業に重点を置いているということです。私たちは、QA 担当者がすぐに作業できるように、最初に完了するタスクを選択するようにしています。これの秘訣は、テスト可能な最小量を完了させ、テスターに​​移すことに集中する必要があるということです。「機能」全体を完成させようとすると、ポイントが失われます。彼らが私たちを待っている間、通常はテスト計画をまとめます。

それは私たちにとってまだ進行中の作業ですが、それが私たちがやろうとしている方法です。

于 2009-08-13T22:05:29.020 に答える
2

アジャイル開発は透明性と説明責任に関するものであるため、テスターは速度を説明するタスクを割り当てる必要があったようです。それがテストを待っているWebサーフィンのタスクを持っていることを意味するとしても(開発チームのタスクのテスト計画を作成するのに役立つと思いますが)。これは、人気がない組織の非効率性を示しますが、それがアジャイルのすべてです。その悪い部分は、組織的な問題である何かに対してテスターが罰せられる可能性があることです。

私が働いていた会社には、2つの異なる反復サイクルを持つ2つの別々の(devとqa)チームがありました。qaサイクルは1週間オフセットされました。残念ながら、qaのイテレーションが終了するまで製品のリリース準備が整っていなかったため、タスクの受け入れに関しては複雑になりました。それは適切に統合されたチームではありませんが、そのサウンドからはあなたのチームでもありません。残念ながら、qaチームは実際にスクラムの実践に従わなかったため(実際の計画、立ち上げ、または遡及的ではありません)、それが良い解決策であるかどうかはわかりません。

于 2008-09-07T14:02:36.950 に答える
1

これはあなたが求めていたものとは少しずれているかもしれませんが、次のようになります。

次のスプリント/イテレーションでどれだけの作業を行うかの尺度としてベロシティを使用するのは本当に好きではありません。私にとって、速度は投影のためのツールです。

チーム リーダー/プロジェクト マネージャー/スクラム マスターは、最後の数回の反復の平均ベロシティを見て、プロジェクトの終了を予測するためのかなり適切なトレンド ラインを得ることができます。

チームは、チームとしてのコミットメントによってイテレーションを構築する必要があります。チームが完了を約束する十分な量の作業がイテレーションに含まれるまで、ストーリーの選択を続けます。少数を選んで怠けたり、多くを選んで過度にコミットしたりしないようにすることは、チームとしてのあなたの責任です。チームがイテレーションにコミットするにつれて、さまざまなスキルレベルと専門性が自然に解決されます。

このモデルでは、すべてがバランスします。チームには達成すべき合理的な作業負荷があり、プロジェクト マネージャーには完了へのコミットメントがあります。

于 2009-08-14T01:33:16.737 に答える
1

テスターをパッシブ ピアとしてペア プログラムにします。テストするものが何もない場合でも、少なくとも現場でのバグに気を付けることができます。テストするものがある場合、週の後半に、機能/「ユーザー ストーリー コンプライアンス」レベルのテストに移ります。このようにして、両方のグループが生産的になり、基本的にテスターはコードが進行するにつれてコードを「くしでとかす」ことになります。

于 2009-08-14T01:40:35.380 に答える
1

FogBugz は、EBS (エビデンス ベース スケジューリング) を使用して、既存のパフォーマンス データと見積もりに基づいて、特定のプロジェクトを出荷する時期の確率曲線を作成します。

これで同じことができると思いますが、テスターに​​入力する必要があるだけです:「開発者を待っているインターネットの閲覧(1週間)」

于 2008-09-07T12:52:17.777 に答える
0

各スプリントには、テストが必要なストーリーとそうでないストーリーが含まれている可能性があるため、解決策は決して白黒ではありません。たとえば、アジャイルではテスターの割り当てに問題はありません。スプリント中は時間の 50%、次のスプリントでは 20%。テスターの時間を 100% スプリントに割り当てようとして、それを正当化しようとしても意味がありません。時間管理がカギです。

于 2010-05-12T17:01:05.793 に答える
0

あなたのシステムは機能しているように思えますが、あなたが望むほどにはうまくいきません. これは有料プロジェクトですか?もしそうなら、あなたは給料を実力主義にすることができます. 仕事の量に基づいて人々に支払います。これにより、分野横断的な作業が促進されます。とはいえ、そもそも自分のものではない作品に取り組むことや、内部の妨害行為を人々に奨励する可能性もあります.

明らかに、システムを操作しようとする人に注意する必要がありますが、うまくいく可能性があります。確かに、テスターは開発者の半分を稼ぎたいとは思わないでしょう。

于 2008-09-07T13:45:05.557 に答える
0

スクラムの非クロスファンクショナルチームのテスターとすべてのスプリントの初期の段階での私の個人的な洞察よりも、速度に関する最初の回答です。

そこに矛盾が見られます。チームがクロスファンクショナルでない場合は、テスターと開発者を区別します。この場合、速度計算でもそれらを区別する必要があります。チームがクロスファンクショナル テスターでない場合、ベロシティを実際に上げることはありません。あなたの速度は、開発者が実装できる最大のものになりますが、テスターがテストできるものを超えることはありません (すべてをテストする必要がある場合)。

スクラム マスターに相談してください。そうしないと、常に速度と見積もりに問題が生じます。

さて、テスターとスプリントの初期について。私はテスターとして 5 人の開発者がいるクロスファンクショナル チームで働いているので、この回答は少し個人的なものになるかもしれません。これは 2 つの方法で解決できます。a) 個別のテスト スプリントを追加して作業組織を変更するか、b) テスターの作業方法を変更します。

a) では、個別のテスト スプリントをクレートします。開発スプリントと並行して (数日ずらして) 行うことも、2、3 回の開発スプリントに 1 回行うこともできます。このソリューションについて聞いたことがありますが、この方法で作業したことはありません。

b) では、テスターに​​、テスト活動へのアプローチをレビューするよう依頼する必要があります。使用するプラクティスやツール、または従うプロセスにもよるかもしれませんが、この初期の段階で、どうして彼らが何もすることができないのでしょうか? 前に述べたように、私はクロスファンクショナル チームではなく、5 人の開発者と共にテスターとして働いています。開発者がタスクを終了するまで自分の作業を待つとしたら、特定のスプリントですべての機能をテストすることはありません。テスターが探索的テストのみを実行する場合を除き、機能がテスト環境にリリースされる前に行うべきことがあります。テスターが機能/コードを手に入れる前に、実行できる (または実行する必要がある) アクティビティがいくつかあります。以下は、機能がテスト環境にリリースされる前に私が行うこと
です

- ドラフト テスト ケースを準備する
- 可能なテスト データを確認する (実装されている変更がシステム内のデータを操作する場合、このデータのスナップショットを作成し、後で特定の機能がこのデータに対して行うことと比較する必要があります)
- まとめテストスイートのすべて
- 機能が開発されているときに開発者と通信します - こうすることで、実装されたソリューションをよりよく理解することができます (他の機能についてすでに気がついたときに尋ねるのではなく)
- 機能としてテストケースに必要な変更を加えることができます進化する

次に、機能が完成したら、次のことを行います。 - 以前は知らなかった詳細でテスト ケースを具体化します (些細なことですが、ボタン名が変更される場合や、ウィザードに追加のステップが表示される場合があります)
- テストを実行します
- 問題を提起します
。実際、私は実際にそれらのテストを実行するよりも、最初の部分 (テストの設計と適切なツールでのテスト スクリプトの準備) に多くの時間を費やしていることに気づきました。

コードがテスト環境にリリースされるのを待つのではなく、すぐにできる限りのことを行えば、この最初のギャップを埋めることができ、テスターがスプリントの終了前にアクティビティを完了できないリスクを最小限に抑えることができます。

もちろん、テスターが最初に行うことは常に少なく、最後にはより多くなりますが、この差を最小限に抑えるように努めることができます。そして、上記のように、最初に無駄にする時間がたくさんある場合でも、コーディングに関連するタスクを彼らに与えることはできません。一部の構成、一部のメンテナンス、ドキュメントの更新、その他。

于 2009-10-20T13:06:37.773 に答える