what are iq oq pq 3 q s software validation process
IQ-OQ-PQの紹介:
IQ、OQ、およびPQは、ソフトウェア妥当性確認プロセスの3Qを構成します。
テスターとして、ソフトウェア開発チームがソフトウェア要件仕様(SRS)、機能仕様に従って社内でソフトウェアを開発し、その後、テストチームがさまざまなテスト環境でのさまざまなレベルのテストで実装を検証することを知っています。ハイエンド。これにより、本番環境が複製されます。
SDLCのこのアプローチでは、ソフトウェア開発チームは通常、完成したソフトウェア(開発および検証済み)を運用チームに渡すことで手を洗い流します。さらに、運用環境への展開を担当し、エンドユーザーが使用できるようにするのは運用チーム(一般に運用チームと呼ばれます)です。
ここで、運用チームが本番環境でソフトウェアを機能させるための真の課題があります。ソフトウェア開発フェーズでは、開発と検証はシミュレートされた環境で行われ、実際の環境に近いことはめったにありません。データの可用性と本番環境の構成の場合。
ここで、ソフトウェアの検証が重要になります。検証が完了し、ソフトウェアがプログラム/製品チームによって承認されると、運用チームは、ソフトウェアが本番環境に展開されることを受け入れる前に一連のアクティビティを実行し、ソフトウェアが期待どおりに動作していることを証明します。検証活動に他なりません。
学習内容:
検証と妥当性確認
ここでは、「検証」アクティビティと「妥当性確認」アクティビティの違いを明確に理解しましょう。 ' 検証 ’は、開発者とテスターがソフトウェア開発サイトで社内で行う、指定された一連の要件と仕様に関してソフトウェアを評価することです。
一方、「 検証 ’は、外部の顧客、所有者、ベンダーが納品する製品について実施する一連の品質保証チェックであり、製品を受け入れるか購入する前に適合性をチェックします。検証活動は主に生産現場で行われます。
したがって、アプリケーション開発の場合、ソフトウェアの検証アクティビティを実行しているのはOpsチームです。
また読む:
https://www.softwaretestinghelp.com/difference-between-verification-vs-validation/
検証プロセスのフェーズ
一般に、製品の検証プロセスとは、開発から使用および保守までの製品のライフサイクル全体を指します。したがって、検証プロセスは5つのフェーズに分けられます。
検証プロセスの5つのフェーズは次のとおりです。
検証プロセスのこの5段階のアプローチは、製造、医療、製薬などの多くの業界で採用されています。ここでは、機械、機器、または製品を購入する前に、エンドカスタマーが検証を行います。
ソフトウェアの検証アクティビティの構成要素は、「ソフトウェアがユーザーによる使用の準備ができている」ことを証明し、主にソフトウェアのインストールが成功したことを検証し、続いて機能と操作性を検証することです。
3Qのアプローチ:IQ-OQ-PQ
ただし、ソフトウェアのコンテキストでは、 3Qのアプローチ、IQ-OQ-PQ 検証の一環としてフォローされており、運用チームによって実行されます。運用チームは、ソフトウェアを本番環境に展開する最終的な責任を負います。
以下に、検証プロセスのフロー図を示します。
3Qを実行するために入力されるテンプレート、計画、およびその他のドキュメントは、ソフトウェアチームによってソフトウェア用にレイアウトされ、これらの資格の一部として実行される詳細なアプローチ、タスク/アクティビティ/テストが含まれます。テスト結果で。
要約レポートは、ソフトウェアの引き渡し中に、バイナリやその他の成果物とともにOpsチームに渡されます。
高レベルでは、
全体として、IQ、OQ、およびPQを実行する目的は、ソフトウェアを正常に展開し、ボトルネックなしですべての機能を使用できるようにすることです。
理想的には、IQ、OQ、およびPQは順次アクティビティであり、順番に実行する必要があります。インストールが行われない限り、ソフトウェアの機能を検証することはできず、機能が証明されない限り、パフォーマンスを測定する意味はありません。時間の制約により、OQの重要な側面が確立されると、PQはOQと並行して開始される場合があります。
ここで、これら3つのフェーズのそれぞれについて詳しく理解しましょう。
インストール資格(IQ)
設置資格は、 「IQ」 は、提供されたソフトウェア(バイナリ、スクリプトなど)が指定された構成で指定された環境に正常にインストールできるかどうかを検証し、これらのインストール手順が「インストールガイド」というドキュメントにどのように記録されているかを確認するプロセスです。
以下のアイテムは、提供されたソフトウェアパッケージとともに開発チームによって提供され、IQを実行するために運用チームによって使用されます。
1) 選択した環境でのインストール手順を説明する「インストールガイド」ドキュメント。
2) ソフトウェアの構成をセットアップするための「構成ガイド」ドキュメント。このドキュメントは、インストールガイドドキュメント自体の一部になる場合があります。
3) ソフトウェアパッケージとインストールスクリプト、できれば自動化されたスクリプト。
ソフトウェアのインストール認定フェーズは、最も重要なフェーズであり、通常は多くの問題であると考えられています 開いた このフェーズでアップします。
理由:
に) 開発環境では、インストールの問題を検証するために100%リアルタイムの環境を利用できないため、環境の違いがいくつかの問題の原因になります。
b) さまざまな理由により、ソフトウェア開発の初期段階では、開発チームと運用チームの間で、問題を十分に先取りするための十分なコラボレーションと調整が行われない場合があります。
c) 実際のインストール手順をドキュメントに記録しているときに、ドキュメントの問題が発生する可能性があります。これは、実稼働環境では正確に一致しない場合があります。
最近では、ソフトウェアのインストール手順全体が一連のスクリプトを介して可能な限り自動化されています。インストールに問題がある場合は、構成の不一致が原因で自動インストールが失敗し、それらの問題を修正するための手動介入が必要です。
Opsチームはインストールガイドのソフトウェアチームの指示に厳密に従ってIQを実行するため、「インストールガイド」が次のように記述されていることを確認することは非常に重要であり、ソフトウェアチームの責任でもあります。インストール手順は、リアルタイム環境に一致します。
また、テスターは、「インストール」プロセスが完全性についてのドキュメント検証とともに社内で検証されていることを確認し、システムで実行される実際のステップとの不一致を特定して、インストールガイド。
実稼働環境でのソフトウェアインストール時の問題を最小限に抑えるために、インストールガイドを作成して社内で検証する際には、次の点に注意する必要があります。
SNO | インストールガイドポイント |
---|---|
7 | ソフトウェアのインストールにかかる一般的な時間は、運用チームのインストールガイドに記載されており、インストールのおおよそのタイミングを把握して、それに応じてアクティビティを計画する必要があります。 |
1 | 何よりも、「インストールガイド」はシンプルでわかりやすい言語で作成する必要があります。 |
二 | 5ページを超える長いページにぶつからないようにする必要があります。短くてきれいなはずです。 |
3 | ステータスを追跡するために、実行の各ステップのシリアル番号を提供する必要があります。 |
4 | ステップを可能な限り自動化し、すべてを1つのスクリプトにバンドルします。 |
5 | インストール手順を作成するには、標準のテンプレートを使用する必要があります。 |
6 | 不一致を回避するために前提条件を明確に記載する必要があり、それらを検証する手順を提供する必要があります。不一致がある場合は、それらを期待されるレベルに上げるか、それらのパッケージをインストールするための指示を提供する必要があります。 |
8 | インストール中に停止する必要のあるサービス、停止方法、停止の影響については、ガイドに明確に記載する必要があります。 |
9 | 他のドキュメントへのリンクを提供したり、あるドキュメントから別のドキュメントに切り替えたりすることは避けてください。必要なすべての情報は、同じドキュメントで利用できるようにする必要があります。追加のドキュメントを参照する必要がある場合は、ソフトウェアパッケージと一緒に提供し、メインドキュメントで参照する必要があります。 |
10 | ドキュメントに記載されているスクリプトの名前が、バイナリと一緒にパッケージ化されているものと同じであることを確認する必要があります。 |
十一 | インストールガイドドキュメントで参照されているすべてのスクリプトがバイナリとともに提供されていることを確認する必要があります。 |
12 | すべての構成パラメーターが、デフォルト値およびその他のサポートされている値とともに、インストールガイド/構成ガイドに明確に記載されていることを確認してください。 |
13 | ソフトウェアのインストールが完了した後にビルド検証テストを実行するための自動テストを提供する必要があります。ビルドが正常にインストールされたことを確認するには、それらの数を最小限に抑え、重要なものにする必要があります。 |
14 | システムのエンドツーエンド接続が完全であり、システムのすべてのコンポーネントが期待どおりに相互に通信していることを確認するために、「スモークテスト」を提供する必要があります。 |
15 | ソフトウェアのインストールに失敗した場合は、パッケージと一緒にロールバックスクリプトが提供され、ロールバックを実行してシステムを正常に復元するために、インストールガイドにロールバック手順が明確に記載されています。 |
上記のすべての点に注意する必要があるため、人的エラーを回避するために、最小限の人的介入でソフトウェアのインストールプロセスを自動化することがベストプラクティスです。
IQ検証フェーズ中に問題が見つかった場合は、ソフトウェアチームに報告され、修正されると、 スモークテストとビルド検証テスト ソフトウェアのインストールが成功したかどうかを確認するために実行されます。
したがって、IQフェーズには、ソフトウェアパッケージのインストールと、それに続くビルド検証とスモークテストの実行が含まれます。
したがって、ソフトウェアを正しく正しくインストールすることで、機能障害に関連する問題のほとんどが確実に解消されるため、IQフェーズを正常に完了することは非常に重要です。
運用資格(OQ)
運用資格、別名 何 IQが正常に完了した後のソフトウェア検証プロセスの次のアクティビティです。
運用資格活動にはtが含まれます 彼は、ソフトウェアが消費者に展開するのに運用上適切であることを確認するために実行されるテストを行います。理想的には、ソフトウェアの主要な機能は、この検証プロセスの一部として検証されます。
OQ検証を実行するためのOQ計画は、ソフトウェアチーム(テスター)が作成する必要があります。これは、実行する必要のあるOQテストのすべての側面をカバーする必要があります。テスト、テストスケジュール、方法論、ツール、サービスへの影響、テストの実行シーケンス、問題の報告方法と問題を修正するためのSLA、欠陥トリアージアプローチなど。
OQの一部として実行される運用認定テストは、ソフトウェアの成果物とともにソフトウェアチームによって再度提供されます。これらの運用認定テストは、「機能要件仕様」ドキュメントに基づいて設計された重要なテストのコレクションであり、ソフトウェアシステム全体が期待どおりに機能することを確認します。
このOQテスト仕様書は、機能要件仕様書に対してテストエンジニアが作成します。多くの場合、このドキュメントは、SDLCのシステムテストフェーズで作成および検証されたシステムテスト仕様ドキュメントのサブセットになります。
テストは、運用チームの要件とそれが実行されるサイトの条件に合わせて変更または更新される場合があります。
したがって、OQの一部であるテストを選択する際には、すべての主要な機能と主要なビジネスワークフローがこの検証の一部として含まれていることを確認するために、さらに注意を払う必要があります。
以下は、OQテスト仕様書を準備する際のテスター向けのヒントです。
スノー | OQテスト仕様書を作成する際のテスターへのヒント |
---|---|
7 | 極値を検証する境界値に関連するテストケースを含める必要はありませんが、必要に応じて、最も一般的な日常的に使用される値を入力として使用します。 |
1 | ソフトウェアが期待どおりに機能することを証明するための主要な機能テストが選択され、含まれていることを確認します。したがって、記述された各テストケースに必要なトレーサビリティがOQテスト仕様書に記載されています。 |
二 | テストが段階的なアクションできちんと書かれていて、自明であり、一般の人が理解できることを確認してください。 |
3 | このドキュメントのユーザーはこれらの用語について知らない可能性があるため、テストケースでの専門用語の使用をできるだけ参照または回避しないでください。つまり、使用されるテストデータがシステムにまだ存在しないためです。ユーザーがテストケースを複数回実行する場合に備えて、複数のデータセットを提供します。 |
4 | 各テストの必須およびオプションの前提条件を明確に述べてください。 |
5 | 機能を検証するために、陽性のテストケースの大部分を含めます。 |
6 | ネガティブなテストケースをほとんど含めないで、無関係な入力の場合にソフトウェアの動作が期待どおりであり、システムがネガティブなケースを正常に処理できることを確認します。 |
8 | デフォルト値から変更する必要がある場合は、設定する構成値に言及します。 |
9 | 可能な限り、実行する自動テストケースを提供します。これらの自動化スクリプトが、OQが計画されているシステムで実行できることを事前に確認してください。 |
10 | 各テストケースに、参照として明確な「期待される」および「実際の」結果があることを確認してください。また、必要に応じてコメントを追加して、実際の結果を説明してください。 |
十一 | また、各テストケースの「合格基準」を含める必要があります。受け入れ基準は、テストケースの実行後のシステムのステータスである可能性があります。 |
12 | 各テストに使用する「テストデータ」を正確に提供します。ライブから最も一般的なデータを提供するようにしてください。また、システムが例外的なケースも処理できるようにするために、いくつかの例外的なデータもあります。使用するテストデータがシステムにまだ存在していないことを確認してください。ユーザーがテストケースを複数回実行する場合に備えて、複数のデータセットを提供します。 |
13 | 複数の運用ユーザーが異なる場所から並行してテストを実行している場合は、異なるデータセットを使用してそれに応じてテストを実行するように指示します。 |
14 | テストを実行する前に、必要に応じてチェックリストを提供して、すべての構成、前提条件が期待どおりに設定されていることを確認します。 |
15 | システムにアクセスできる場合は、テストの実行中にログを監視し続けます。 |
16 | 可能で必要な場合は、これらのテストケースの実行中に運用ユーザーに実行サポートを提供します。 |
17 | 実行中に見つかった問題を報告する方法を説明します。バグ追跡ツールを使用して問題を追跡することをお勧めします。各問題を注意深く監視し、合意されたSLAに従って問題を解決します。 |
18 | 適切な利害関係者が関与する「欠陥トリアージ」を実行して、重大で重大な問題を理解し、それらの問題に関する最新情報を頻繁に提供します。 |
19 | 最終的な「OQテスト実行サマリーレポート」テンプレートを提供して、実行の完了後に最終結果を公開します。 |
したがって、このように準備されたOQ計画とテスト仕様は、関連する利害関係者によって徹底的にレビューおよび承認され、主にカバレッジが少なすぎたり多すぎたりせず、すべての主要な機能がカバーされていることを確認する必要があります。
OQが正常に完了すると、ソフトウェアは選択した環境での運用仕様に従って機能することが示されます。これは、ソフトウェアを本番環境に移行するためのステージゲートであり、検証プロセスの次のアクティビティである検証プロセスを進めるためのシグナルです。 PQ 。
パフォーマンス認定(PQ)
IQが正常に完了した後、検証プロセスの次のアクティビティは、製品/ソフトウェアが、本番環境でボトルネックを発生させることなく、予想される負荷の下で指定されたパフォーマンスの側面を一貫して満たすかどうかを確認することです。
PQの重要な側面は、ソフトウェアが期待されるシステムにインストールされたときに、 ライブ負荷を処理し、期待される応答時間を満たすことができ、同時ユーザーを処理している間、ピーク負荷とストレスの下でクラッシュしません。
したがって、PQは主に、ソフトウェアの指定されたパフォーマンス基準が、ライブのパターンと同様に、さまざまな負荷条件で信頼できる基準で一定期間(おそらく1週間)にわたって達成されるかどうかを確認することです。したがって、これらのテストは、ソフトウェアシステムの動作を監視するために毎日実行する必要があります。したがって、システムのパフォーマンスが証明されるまで、PQの完了にはしばらく時間がかかります。
理想的には、PQ検証は、OQの完了後に実行されます。ここで、ソフトウェアの機能が保証され、製品またはソフトウェアのパフォーマンス面の検証を進めることができます。時間の制約により、OQの完了率の信頼度に基づいて、PQをOQと並行して開始できる場合があります。
これらのパフォーマンステストは、システムが完全にロードされたライブシステム、またはライブと同様の条件で実行し、パフォーマンスの側面にボトルネックがないことを確認するのが理想的です。
以下のテストは通常、パフォーマンス認定の一部として実行されます。また、テストの選択はソフトウェアによって異なります。
#1)可用性テスト: ソフトウェアがクラッシュしたりダウンしたりすることなく継続的に利用できるようにするため。
#2)アクセシビリティテスト: ソフトウェアが問題なく期待されるパフォーマンス速度であらゆる場所から簡単にアクセスできるようにするため。
#3)負荷テスト: 予想される日々の負荷およびピーク負荷条件下でのシステムの動作を測定します。
#4)ストレステスト: 極端な負荷条件下でシステムのブレークポイントを測定します。
#5)スループットパフォーマンステスト: システムの応答時間を測定し、TPS(1秒あたりのトランザクション数)を測定します。
#6)スケーラビリティテスト: システムは、予想される同時ユーザーを処理するように拡張できます。
パフォーマンステストシナリオと対応する自動スクリプトは、「ユーザー要件仕様」ドキュメントで指定されているパフォーマンス関連の要件に基づいて作成されます。
OQ計画と同様に、テストアプローチ、戦略、計画、およびスケジュールをツールとともに明確に示す詳細なPQ計画を作成し、PQエグゼキュータで実行する必要があります。
パフォーマンスメトリクスを測定および報告するには、PQが実行されている環境にパフォーマンステストおよび監視ツールをインストールする必要があります。
以下は、運用チームがPQを正常に実行できるようにするためのテスター向けのヒントです。
スノー | テスターが運用チームを有効にするためのヒント |
---|---|
7 | システムのパフォーマンステストを実行するために、運用チームを指導、サポート、およびトレーニングします。 |
1 | URSに基づいてパフォーマンステストを実行するために、主要なビジネス固有のシナリオを準備します。 |
二 | システムがさまざまな負荷条件下での応答時間、速度、スケーラビリティ、および安定性の期待を満たしていることを証明するためのテストが含まれていることを確認してください。 |
3 | 指定された負荷が利用可能であることを確認するか、必要な負荷を生成する方法とツールがそれぞれのテストケースに明確に記載されていることを確認します。 |
4 | システムに存在する必要のあるプリロード条件、同時ユーザーの数など、各シナリオの前提条件を明確に記述します。 |
5 | テストの各カテゴリおよび各テストに固有のパフォーマンステストを実行するために使用することをお勧めするツールに言及します。 |
6 | パフォーマンスメトリックを監視するプロセスが明確に記載されていることを確認してください。 |
PQが正常に完了すると、パフォーマンス要件を満たすことが非常に重要になります。パフォーマンスに関連する逸脱は、ユーザーに不快感を与えて大きなビジネス上の損失を引き起こし、使用するソフトウェアへの信頼が失われ、ソフトウェアの障害につながるためです。
一言で言えば、t 以下の表は、IQ-OQ-PQの活動をまとめたものです。
IQ | 何 | PQ | |
---|---|---|---|
何 | ソフトウェアのインストールプロセスとプロセスの文書化方法を確認するには | システムが適切に機能していることを確認するには | 顧客、所有者、ベンダー、運用チーム |
WHO | 顧客、所有者、ベンダー、運用チーム | 顧客、所有者、ベンダー、運用チーム | 顧客、所有者、ベンダー、運用チーム |
どこ | 所有者サイト、運用チームの場所、ライブサイト、製品のような環境 | 所有者サイト、運用チームの場所、ライブサイト、製品のような環境 | 所有者サイト、運用チームの場所、ライブサイト、製品のような環境 |
いつ | OQおよびPQの前に、ソフトウェアチームからソフトウェアを受け取ったとき。 | 使用するためにシステムをリリースする前、およびIQが正常に完了した後 | システムを稼働させる前、およびIQが成功した後、OQが完了する |
次の表は、各検証フェーズのさまざまな入力について説明しています。
タイプ | 入力 |
---|---|
IQ | 1.設計仕様書 2.ソフトウェアバイナリおよびその他のインストールスクリプト 3.インストールガイドドキュメント 4.構成ガイドドキュメント 5.ビルド検証とスモークテストドキュメント |
何 | 1.機能仕様書 2.OQ計画文書 3.運用資格試験文書 4.OQテスト要約レポートテンプレート 5.IQが正常に完了しました |
PQ | 1. URS(ユーザー要件仕様)ドキュメント 2.PQ計画文書 3.性能認定試験文書 4.PQテスト要約レポートテンプレート 5.IQとOQが正常に完了しました |
結論
製品/ソフトウェアがすべての検証段階を通過し、IQ-OQ-PQのいずれかを証明できなかったとしても、結果は悲惨なものになる可能性があり、莫大な費用がかかります。 したがって、IQ-OQ-PQのみが正常に完了すると、開発サイトから生産サイトへの製品の転送が成功します。
全体として、IQ-OQ-PQ検証プロセスが正常に完了すると、ソフトウェアに対する信頼が得られるだけでなく、クライアント、所有者、ソフトウェア開発者、およびテスターにも安心感がもたらされます。
例のあるウォーターフォールモデルとは
IQ-OQ-PQを実行すると、テストを実行せずに実際に展開するリスクも軽減され、障害のコストが削減され、製品のリコールのリスクが軽減されます。
したがって、Guys、ソフトウェア開発者、およびテスターは、社内で開発とテストを完了し、ソフトウェアをOps Teamにリリースした後、祝賀会はありません。 祝賀会は、IQ-OQ-PQが正常に完了し、ソフトウェアが対象のシステムで稼働している場合にのみ行われます。
したがって、ソフトウェアが成功するかどうかは、IQ-OQ-PQが正常に完了し、ソフトウェアが稼働してエンドユーザーが使用できるようになる時期に依存します。
著者について: この記事は、STHチームのメンバーであるGayathriSubrahmanyamによって書かれました。彼女はソフトウェアテストの分野で20年以上の経験があります。彼女はテストのキャリアの中で、テスト配信の処理に加えて、多くのTMMI評価、テスト工業化作業、TCOEセットアップを行い、大規模なエンゲージメントのためにDevOpsプラクティスを実装しました。しかし、彼女によると、学習は止まることはありません…
検証プロセスの実行に関する経験を共有し、この記事について質問がある場合はお知らせください。
推奨読書
- ソフトウェアテストコース:どのソフトウェアテスト機関に参加する必要がありますか?
- 最高のソフトウェアテストツール2021 (QAテスト自動化ツール)
- ソフトウェアテストQAアシスタントジョブ
- キャリアとしてのソフトウェアテストの選択
- ソフトウェアテストテクニカルコンテンツライターフリーランサーの仕事
- いくつかの興味深いソフトウェアテストのインタビューの質問
- ソフトウェアテストコースのフィードバックとレビュー
- ソフトウェアテストはアフィリエイトプログラムを助けます!