品質のダッシュボード (CMMI)
品質のダッシュボードを使用して、開発中のソフトウェアの品質に関係するテスト、開発、およびビルドの各区分における進行状況の概要を確認できます。チームは、品質のダッシュボードを使用して、製品の品質を把握し、製品の品質に関するチームのゴールをサポートする決定を行うことができます。
このダッシュボードを使用することで、テストの進行状況、ビルドの状態、バグの解決と終了の進行状況、バグの再アクティブ化率、テストされたコードの割合、およびコードの変更の傾向を確認できます。これらの測度は、それぞれ過去 4 週間についてプロットされます。
[!メモ]
ダッシュボードへは、チーム プロジェクト ポータルからアクセスします。品質のダッシュボードにアクセスできるのは、ポータルが有効化され、Microsoft Office SharePoint Server 2007 を使用するようにプロビジョニングされている場合だけです。詳細については、「ダッシュボード (アジャイル)」または「チーム プロジェクト ポータルまたはプロセス ガイダンスへのアクセス」を参照してください。
このトピックの内容
|
このダッシュボードを使用すると、次の事項を確認できます。
|
必要なアクセス許可
ダッシュボードを表示するには、チーム プロジェクトの SharePoint 製品に対する [読み取り] アクセス許可が割り当てられているグループに割り当てられているか、そのグループに属している必要があります。ダッシュボードを変更、コピー、またはカスタマイズするには、チーム プロジェクトの SharePoint 製品に対する [メンバー] アクセス許可が割り当てられているグループに割り当てられているか、そのグループに属している必要があります。詳細については、「チーム プロジェクトへのユーザーの追加」を参照してください。
Office Excel でレポートを変更するには、SQL Server Analysis Services の TfsWarehouseDataReaders セキュリティ ロールのメンバーであることが必要です。また、チーム プロジェクトの SharePoint 製品に対する [メンバー] アクセス許可が割り当てられているグループに割り当てられているか、そのグループに属している必要があります。詳細については、「Visual Studio ALM 用データ ウェアハウスのデータベースへのアクセスの許可」を参照してください。
作業項目を表示するには、読み取りユーザー グループのメンバーであるか、または [このノードの作業項目を表示します] アクセス許可が [許可] に設定されている必要があります。作業項目を作成または変更するには、貢献者グループのメンバーであるか、または [このノードの作業項目を編集します] のアクセス許可が [許可] に設定されている必要があります。詳細については、「アクセス許可の管理」を参照してください。
ダッシュボードに表示されるデータ
チーム メンバーは、品質ダッシュボードを使用して、開発している製品の全体的な品質を確認できます。テスト成功率、バグ、およびコード チャーンがすべて同じ状況を示すのが最適な状態ですが、多くの場合、同じではありません。相違が見つかった場合は、適切なビルドとデータ系列を綿密に調べる必要があります。品質のダッシュボードでは、テスト結果、テストからのコード カバレッジ、コード チャーン、およびバグが集結されるので、さまざまな側面を同時に把握できます。
具体的には、このダッシュボードには、次の図と表で説明する Web パーツが表示されます。
[!メモ]
テスト計画の進行状況レポートは、チームがテスト ランナーおよび Microsoft Test Manager を使用してテスト計画を作成および実行するときにのみ使用できます。テスト スイートおよびテスト計画を定義する方法の詳細については、「テスト スイートを使用したテスト ケースの整理」を参照してください。
進行状況、ビルド、およびコード表 ( ~ のレポート) は、チーム プロジェクトのデータ ウェアハウスが使用できない場合には表示されません。
品質のダッシュボードに表示されるグラフの解釈、更新、またはカスタマイズの方法については、次の表に示されているトピックを参照してください。
Web パーツ |
表示されるデータ |
関連トピック |
---|---|---|
過去 4 週間以内のすべてのテストのテスト結果を最後に記録された結果 (実行しない、ブロック、失敗、または成功) でグループ化した積み上げ面グラフ。 |
||
過去 4 週間以内に失敗または成功したビルドの数を示す積み上げ縦棒グラフ。 |
||
過去 4 週間以内のすべてのバグの累積数を状態別にグループ化した積み上げ面グラフ。 |
||
過去 4 週間以内にチームが解決済みの状態または終了状態から再アクティブ化したバグの数を示す積み上げ面グラフ。 |
||
過去 4 週間以内にビルド確認テスト (BVT: Build Verification Test) およびその他のテストでテストされたコードの割合を示す折れ線グラフ。 |
||
過去 4 週間以内にチームがビルドの前にチェックインで追加、削除、および変更したコードの行数を示す積み上げ面グラフ。 |
||
間近に迫っているイベントのリスト。このリストは、SharePoint Web パーツから派生します。 |
該当なし |
|
アクティブな作業項目、解決した作業項目、および終了した作業項目の数。それぞれの数字をクリックして、作業項目のリストを開くことができます。このリストは、Team System Web Access Web パーツから派生します。 |
||
最新のビルドおよびその状態のリスト。特定のビルドをクリックすることで、詳細を表示できます。このリストは、Team System Web Access Web パーツから派生します。 凡例: : ビルドは進行中です : ビルドは開始されていません : ビルドに成功しました : ビルドに失敗しました : ビルドが停止されました : ビルドが一部成功しました |
||
最新のチェックインのリスト。特定のチェックインをクリックすることで、詳細を表示できます。このリストは、Team System Web Access Web パーツから派生します。 |
品質の監視に必要なアクティビティ
正確で効果的な品質のダッシュボードが生成されるようにするためには、チームはこのセクションで説明するアクティビティを実行する必要があります。
テスト計画の進行状況の追跡に必要なアクティビティ
正確で効果的なテスト計画の進行状況レポートが生成されるようにするためには、チームは次のアクティビティを実行する必要があります。
テスト ケースおよび要件を定義し、テスト ケースと要件との間のテスト担当者リンクを作成します。
テスト計画を定義し、テスト ケースをテスト計画に割り当てます。詳細については、「テスト計画の定義」を参照してください。
手動テストの場合は、テスト ケースの各検証手順の結果を、成功または失敗としてマークします。
重要 テスト担当者は、テスト ステップが検証テスト ステップである場合、そのことを示す状態でマークする必要があります。テスト ケース全体の結果は、テスト担当者がマークしたすべてのテスト ステップの状態を反映します。したがって、テスト担当者がテスト ステップを失敗とマークしている場合、またはまったくマークしていない場合、テスト ケースは失敗の状態になります。
自動テストの場合、各テスト ケースは成功または失敗として自動的にマークされます。
(省略可能) フィルター処理をサポートするには、イテレーション パスと区分パスを各テスト ケースに割り当てます。
[!メモ]
領域パスとイテレーション パスの定義方法については、「区分およびイテレーションの作成および修正」を参照してください。
バグの進行状況およびバグの再アクティブ化の追跡に必要なアクティビティ
正確で効果的なバグの進行状況レポートとバグの再アクティブ化レポートが生成されるようにするためには、チームは次のアクティビティを実行する必要があります。
バグを定義します。
チームがバグを修正し、検証して、終了または再アクティブ化したら、バグの状態を更新します。
(省略可能) イテレーション パスおよび領域パスのフィールドでフィルター処理する場合は、各バグのイテレーション パスと領域パスを指定します。
ビルド状態、コード カバレッジ、およびコード チャーンの追跡に必要なアクティビティ
正確で効果的なビルド状態、コード カバレッジ、およびコード チャーンの各レポートが生成されるようにするためには、チーム メンバーは次のアクティビティを実行する必要があります。
ビルド システムの設定。Team Foundation ビルドを使用するには、ビルド システムを設定する必要があります。
詳細については、「Configuring Your Build System」を参照してください。
ビルド定義の作成。いくつかのビルド定義を作成し、各ビルド定義を実行して別のプラットフォームのコードを生成できます。また、別の構成で各ビルドを実行することもできます。
詳細については、「ビルド処理の定義」を参照してください。
ビルドの一部として自動的に実行するテストの定義。ビルド定義では、ビルドの一部としてテストを実行し、テストに失敗した場合はビルドが失敗するように定義できます。
詳細については、「既定テンプレートに基づくビルド プロセスの定義」を参照してください。
コード カバレッジ データを収集するテストの設定。コード カバレッジ データをレポートに表示するために、チーム メンバーはテストをインストルメントしてそのデータを収集する必要があります。
詳細については、「テスト設定を使用したコード カバレッジの構成は使用されなくなりました」および「How to: Gather Code-Coverage Data with Generic Tests」を参照してください。
ビルドの定期的な実行。ビルドは、定期的な間隔で、またはチェックインが行われるたびに実行できます。スケジュール トリガーを使用すると、定期的なビルドを作成できます。
詳細については、「ビルド定義の作成」および「ビルドの実行、監視、管理」を参照してください。
[!メモ]
チーム メンバーはビルド エクスプローラーを使用してビルドを手動で評価することができますが、この評価はビルド品質指標レポートには反映されません。ビルド評価は、ビルドの概要レポートに表示されます。詳細については、「完了したビルドの品質の評価」および「ビルドの概要レポート」を参照してください。
品質に関する懸案事項のトラブルシューティング
品質のダッシュボードによって監視できる品質に関する懸案事項の説明と、チームがこれらの懸案事項に対して講じることのできるアクションを次の表に示します。
懸案事項 |
確認するレポート |
トラブルシューティングに関する説明 |
---|---|---|
ビルドが失敗する |
ビルドの状態 |
夜間ビルドは、ソフトウェア開発プロジェクトのハートビートです。ビルドが正常に完了しなかった場合、またはビルド確認テスト (BVT) に合格しなかった場合、チームは問題を直ちに修正する必要があります。 |
テストが失敗する |
テスト計画の進行状況 コード チャーン |
失敗したテストおよびコード チャーンの率が高い場合、チームはソフトウェアが頻繁に失敗する理由を調べます。原因として、初期のイテレーション サイクルで厳しすぎた開発手法またはテストを緩めたことなどがあります。 |
テストは成功したにもかかわらずバグの検出率が高い |
テスト計画の進行状況 バグの進行状況 |
同じ期間に多くのテストが成功しているにもかかわらず多くのバグが検出される場合、チームは次のような可能性を調べます。
|
テストが古くなっている |
テスト計画の進行状況 コード カバレッジ コード チャーン |
多くのテストが成功し、大量のコードが変更され、コード カバレッジが減少している場合、チームは、新しいコードを実行するテストを実行していない可能性があります。 テストは、コードの変更と同じ速度で開発されないため、テスト カバレッジは徐々に適さなくなっていく場合があります。 |
チームが解決済みバグをテスト、終了、または再アクティブ化していない |
バグの進行状況 |
バグの進行状況レポートで解決済みバグが急増している場合、開発者がバグを解決していても、テスト担当者がそれらを検証および終了していないことを意味します。チームは、このパターンが発生した理由を調べる必要があります。 |
テストが少なすぎる |
テスト計画の進行状況 コード チャーン |
チームが実行しているテストの数が少なく、コード チャーンが高い値を示し、コード カバレッジが期待値よりも低い場合、チームはより多くのリソースをテストに割り当てる必要がある可能性があります。また、チームは、テスト担当者がチームの他のメンバーと同じ機能について取り組んでいるかどうかを確認する必要があります。 |
再アクティブ化 |
バグの再アクティブ化が多い |
チームがバグを再アクティブ化する率が高い、または上昇している場合、テスト担当者は頻繁に開発者の修正を拒否します。チームは、拒否された修正のやり直しに多大なリソースが割り当てられることを回避するために、これらの問題に対処する必要があります。考えられる原因として、不適切なバグ レポート、不適切なテスト ラボ管理、過度に積極的なトリアージなどがあります。 |
単体テストが不適切である |
コード カバレッジ コード チャーン |
コード カバレッジが減少するのと同時にコード チャーンが上昇していく場合、開発者は対応する単体テストでそれに対処せずにコードをチェックインしている可能性があります。 一般的に、チームがテスト駆動開発または同様の手法を使用している場合、コード カバレッジは 100% に近づきます。単体テストが BVT として再利用されている場合、コード カバレッジは対応するレポートに表示されます。 |
品質のダッシュボードのカスタマイズ
品質のダッシュボードは、次の方法でカスタマイズできます。
各 Excel レポートのフィルターを変更して、特定の製品区分またはイテレーションだけが表示されるようにします。
クエリが検索する作業項目のリストを表示するカスタムのクエリ Web パーツを追加する。たとえば、テスト ケースにリンクされていないすべてのアクティブなバグを示すクエリを追加できます。このクエリには、報告されていても、テストでは検出されないため回帰テストの対象とならないバグの総量が示されます。
バグの傾向や失敗の分析などの既存の Excel レポートをダッシュボードに追加します。
Office Excel でのレポートの使用とカスタマイズの方法の詳細については、Microsoft Web サイトの次のページを参照してください。