web-dev-qa-db-ja.com

アジャイルチームでのQA責任の共有

長年にわたり、私たちのIT開発グループは、データベース開発、ロジックレイヤー、およびプレゼンテーションレイヤー開発を専門とするプログラマーの分離されたポッドを使用してウォーターフォールソフトウェア開発方法論に同意していました。もちろん、すべてのテスト責任を担当する小さな品質保証グループもありました。要件、タスク、およびバグは電子的にやり取りされ、会話はほとんど行われず、プロセスは苦痛を伴いました。

2010年に、私たちはスクラムを使用したアジャイルへの記念碑的な移行を行い、深刻な成長痛の後、チーム全体として本当にExcelを使い始めました。コミュニケーションは絶え間なく、人々は日々成長し、お互いから学び合っています。私たちのリリースはより安定しており、真のビジネスの優先事項とはるかに一致しています。

私たちがまだ成長しようとしている分野の1つは、ソフトウェアのQA責任をすべての開発チームのメンバー間で共有して、機能をテストするときにまだ持続しているように見えるフェンスを越えた態度から逃れることです。

アプリケーション品質の共同所有権に向けて開発チームを成長させる方法について誰かアドバイスがありますか?現在XP)を実践しているため、ペアプログラミングをさらに開始しました。ユニットテストと統合テストを作成する際の開発者とテスターです。しかし、チーム全体が各スプリントのテスト戦略について積極的に考えるようにすることは依然として困難です。必然的に1つまたは2つの "Write Test Cases "タスクはスプリントバックログにスローされ、何がテストされ、どのようにそれが最適に達成および編成されるかについての予見がないため、チーム全体がどのテストが完了し、何が現在テストされているかを認識します。そして、テストするために残っているもの。

長い質問で申し訳ありませんが、アドバイスをいただければ幸いです。

6
KodeKreachor

あなたの質問には本当に2つの側面があると思います。

1)従来のソフトウェアQA/QEグループはアジャイル開発環境にどのように適合しますか?

私の経験では、あなたは正しいです。テストチームを開発チームから分離すると、いくつかの問題が発生します。 「フェンスを越えて投げる」方法は、アジャイルではあまりうまく機能しません。私たちが行ったことは、テストチームをアジャイルチームの一部にすることです。品質チームがより技術的である場合は、開発を容易にすることが考えられます。たぶん、品質チームの1人のメンバーがスクラムマスターになることに興味を持っています。たぶん、品質チームの一部のメンバーは、チームの専門的なテストリソースと見なされます。とにかく、彼らが本格的なチームメンバーであることが重要だと思います。彼らはすべての標準的なスクラム会議に出席し、見積もりを手伝い、回顧展に貢献します。

2)テストの責任はアジャイルチーム全体にどのように広がっていますか?

これは、チームの完了の定義と関係があります。ストーリーのテスト作業は、受け入れ基準の一部である必要があります。テスト(自動と手動の両方)は、ストーリーの完成に向けたタスクの一部である必要があります。このようにして、専用のテスターに​​は、ストーリーの完成部分であるストーリーの一部を割り当てることができます。もちろん、これは、開発タスクがスプリント全体で利用可能なテストタスクがあるように十分に細かくする必要があることを意味します。リソースをテストするために、おそらくスプリントの最初の数日は自動テストの維持、またはバグデータベースのグルーミングに費やされます。ストーリーが受け入れられるためには、開発中のスプリント中にストーリーで見つかったバグを修正する必要があると判断しました。ストーリーが受け入れられた後に報告されたバグは、製品バックログの一部になり、優先されます。

うまくいけば、これはあなたに1つの可能な答えを与えます。アジャイルの場合と同様に、チームで機能するものはいくつかの点でユニークであることがわかります。

3
Rob Heiser