Column
コンプライアンス基準を満たすテストプロセス
テストによってコンプライアンスの課題に対処する上で重要なポイントは、コンプライアンス要件を理解し、それを厳格に定義・管理されたテストプロセスに適用することだ。本稿では、コンプライアンスに取り組む際の出発点を示す。
プロのソフトウェアテスターやQA(品質保証)/テストコンサルタントにも、コンプライアンス(法令順守)という課題に対処するよう求められることが多くなってきた。どんな企業であれ、コンプライアンス基準の導入は組織全体としての機能に大きな変化をもたらすとともに、ソフトウェアのテストに対しても新たな要求を突きつけるものである。
コンプライアンスの目的については誤解も存在する。コンプライアンスとは基本的に(特に政府の法規制に対するコンプライアンスの場合)、その国で合法的な事業運営を行うのに必要な最低基準を満たすことである。事業運営を行う上での最低基準を標準化することを目的としたガバナンス組織を設立する企業もある。こういった基準は基本的に、法的な限界あるいは責任範囲の最低ラインを設定するために存在する。コンプライアンスの目的は、個々の製品の開発、テスト、実装に価値を付加することではない。特定の基準の制約の中で事業運営を行うことを可能にするのが目的なのである。
テストという視点から見れば、コンプライアンスはテストプロジェクトに追加コストを発生させる。コンプライアンスは製品に価値を付加するわけではないが、テスト業務のプロセス改善につながる可能性がある。コンプライアンスはテスト担当部門に大きな負担を与える可能性もある。なぜなら、コンプライアンスのためのテストの目的はリスクを減らすことではなく、コンプライアンスを証明することだからだ。そのためには、テスト担当部門がコンプライアンスを証明する記録、言い換えれば監査証跡を作成・維持・管理する必要がある。これは単に、適切なレベルのテストが行われたことを信じられるかどうかという問題ではない(たとえ実際にはそうだとしても)。適切なレベルのテストが行われたことを証明しなければならないのである。テスターに対する信用がコンプライアンスを構成するのではない。監査可能な証拠だけがコンプライアンスを立証できるのである。
本稿では、コンプライアンスという課題に取り組むに際しての出発点を示したい。以下では例として、社内監査コンプライアンスグループが、現行のテスト手法は「リスクパラメータの許容範囲内に収まる製品の提供を可能にするが、コンプライアンス基準は満たしていない」と判断したというケースを取り上げる。
テストの課題
社内監査コンプライアンスグループは、テスト担当部門が対処しなければならない2つの緊急課題を特定した。
- 製品のテストおよび実装は、隔離・制御された環境の中で、権限を持ったスタッフによって一貫した方法行われなければならない。
- 実装要求にはテストの証拠――テスト内容の要約(テストの詳細、テスト基準/要件、期待される結果、実際の結果、テストの結論/リポート出力)と経営者、IT部門、社内監査担当者によるテスト結果の承認――を添付しなければならない。
テストの成果物(テストのコンプライアンス)
テスト担当部門は、新しい社内監査要件に対応するためには以下のようなテストの成果物を規定する必要があると判断した。
- テストプランニング――詳細なテスト計画
- テスト要件――実装される製品の詳細な説明
- テストケース/スクリプト――要件を検証するための将来なテストケース/スクリプト
- テストケースのデザイン――期待される結果
- テストの結果――実際のテスト結果を把握する
- テストの欠陥――テスト中に見つかった問題とその解決策を把握する
- テストの結論――(現時点までの)テスト結果に基づく製品の状態
1. テストプランニング(テストの詳細)
テストプランニングでは、何をテストするのか、なぜテストするのかを明確にしなければならない。また、何をテストしないのか、そしてなぜテストしないのかも明確にする必要がある。何をテストしないかを理解することは、何をテストするかを理解するのに劣らず重要な場合もある。
2. テスト要件(テスト基準)
システムの詳細を把握するための最も効率的な方法は、それらを要件として把握することである。これらの要件は、具体的な実装要求に対してビジネス部門とIT部門が承認できるよう十分に具体的な内容であること。これらの要件は将来的に、IT部門とビジネス部門にシステムの全体像を提供するものでなくてはならない。
この要件リストには、システムの変更/改良および新たな実装によって影響を受けるシステムの各側面を含める必要もある。コンプライアンス基準は、ビジネスリスクを軽減するために一般に対処すべき事柄だけでなく、テスト範囲やテスト要件も拡大する場合が多い。
3. テストケース/スクリプト(テストの詳細)
テストの定義・設計・保守を行う上で最も効率的な方法は、こういった詳細をテストケースとして把握することである。テストケースはその後、テストに関連した要件を検証する際に適用可能なテストのリポジトリあるいはカタログとして利用することができる。
テストは、ビジネス部門とIT部門が特定の機能に照らし合わせて承認できるよう十分に具体的な内容でなければならない。これらのテストは将来的に、IT部門とビジネス部門にシステムの全体像を提供するものであるべきだ。テストのリストは、適切な要件と関連付けなければならない。テストケース/スクリプトは、1つ以上の要件をカバー(テスト)する必要がある。
4. テストケースのデザイン(期待される結果)
テストデザイン環境あるいはテストデザインテンプレートは、あらゆるテストデザインタスクに対して「ワンストップショッピング」を提供しなければならない。コンプライアンスに対応するためには、手順の説明、インプットおよび期待されるアウトプットがテストケース/スクリプトに必要とされる。効果的なデザインテンプレートあるいはテストデザイン環境では、将来のテストケース/スクリプトデザインのために再利用可能なテンプレート(内容的な要件に関して)を提供することが可能だ。テストケースデザインは、監査可能な合否基準が含まれる明確なテストケースを社内/社外監査人に提供するものでなくてはならない。
5. テストの実施(実際の結果)
実施の結果は、適切なレベルのセキュリティとデータの整合性が維持されたテストの実行時に取得しなければならない。取得する結果には、単なる合否判定だけでなく、合格あるいは不合格の証拠が含まれていなければならない。これは通常、テストの実行時に記録したスクリーンショットやデータダンプによって提供され、検証手順と関連付けることができる。適切なテストデザイン(上記項目4参照)と実行結果があれば、ほとんどのコンプライアンス課題に対応することができる。テスト実行時に遭遇した欠陥は、捕捉・追跡する必要がある。
6. テストの欠陥(実際の結果)
新しいコンプライアンス基準に対応するには、監査可能な欠陥管理システムによってサポートされる欠陥管理プロセスが必要となる。このツールは、結果の取得・対処・伝達のための主要なメカニズムとして利用しなければならない。欠陥に関する標準的な記述は、欠陥の説明、欠陥の深刻度や状態、解決策などが含まれる明確な監査証跡を提供するものでなくてはならない。できれば欠陥の解決策の明確な記述に加えて、「修正前」と「修正後」のテスト結果のスクリーンショットを欠陥リポートに含めることが望ましい。
7. テストの結論(テストリポート)
テストの結論/最終テストリポートには、欠陥リポートと欠陥サマリーリポート、実施リポートと実施サマリーリポート、カバレッジリポートとカバレッジサマリーリポート(要件範囲)、そして最初のテスト計画の範囲内/範囲外の推定に対応したリポートの結論を含めなければならない。
まとめ
コンプライアンス要件を理解し、それを厳格に定義・管理されたテストプロセスに適用することは、テストによってコンプライアンスの課題に対処する上で重要なポイントである。
コンプライアンス基準に準拠するための構造は、監査可能な結果とテスト記録の整合性を重視した優れたテスト手法の実現につながる。特定のコンプライアンス基準に従うことが求められる業界で働くテスターおよび特にテスト管理者にとっては、自身の法的・倫理的責任を理解することが重要である。コンプライアンス基準およびその基準に対する自社の解釈を熟知し、その基準の下での自身の法的責任を理解しなければならない。
本稿筆者のデビッド・W・ジョンソン氏は、さまざまな業界で20年以上にわたってIT業務に携わった経験を持つシニアコンピュータシステムアナリストである。ビジネスニーズ分析、ソフトウェア設計、ソフトウェア開発、テスト、トレーニング、実装、組織評価、ビジネスソリューションのサポートなどの分野で重要な役割を果たしてきた。同氏はこの12年間、テストの戦略、プランニング、自動化、管理ソリューションなどの「テストウェア」の導入に関するノウハウを蓄積してきた。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
新着ホワイトペーパー PR
-
製品資料
[o9ソリューションズ・ジャパン株式会社] 「改正物流効率化法対策」徹底解説 総物流費を抑制するサプライチェーン戦略 -
製品資料
[o9ソリューションズ・ジャパン株式会社] 「サプライチェーン最適化」実践ガイド:効果的な意思決定を実現する秘訣とは? -
製品資料
[株式会社リンプレス] 非デジタル/IT人材を「自走するDX推進者」に変えるための育成ロードマップ -
市場調査・トレンド
[ワンアイルコンサルティング株式会社] AI時代の組織設計:「判断と責任」を人に残すための2つの原則とは? -
技術文書・技術解説
[ワンアイルコンサルティング株式会社] システムの保守がモダン化を阻む? 「変えない判断」から脱却する方法とは
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「完璧な設計」なのに3000万円溶けた AWSの失敗事例から学ぶ3つの教訓
-
2
パナソニックが国内製造26拠点のERPを「SAP S/4HANA」に統一 アドオン7割削減
-
3
「AIバブル」は崩壊するのか? 熱狂の後に来る“尻拭い”と4つの防衛策
-
4
Microsoft製品でここまで自動化できる 情シスがやめられる手作業10選
-
5
守るべきは「開発者のフロー状態」 AIによる生産性改善の6施策
-
6
脱VMwareの前提が崩れる BroadcomのVDDK公開停止で確認すべき点
-
7
「データストレージの活用方法」に関するアンケート
-
8
全社標準「Copilot」にダメ出し? 現場の8割が不満を抱く“致命的な欠点”
-
9
「企業内サーバ環境の利用実態」に関するアンケート
-
10
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
ホワイトペーパーランキング PR
-
1
JR西日本ITソリューションズが「監視業務の属人化」を解消した方法とは?
-
2
インシデント対応工数を約3割削減、東京ガスの事例に学ぶ監視体制刷新のコツ
-
3
生成AIで文書活用を進めるには? 効率化と安全性をどう両立する
-
4
Windows PCとMacの選択制で生産性向上 LINEヤフーが実践する運用管理方法とは
-
5
DX/AI投資の壁を突破、現代の最高財務責任者が直面する課題と克服のヒント
-
6
「Google Workspace」活用事例34選、先進の生成AIによる組織変革の全貌
-
7
「人員を増やす」という選択肢はない 情シスが負の連鎖から抜け出すには?
-
8
Linuxのスキルを証明する“激推し”の認定資格はこれだ
-
9
「問題が深刻化しやすいプロジェクト管理」から脱却する方法とは?
-
10
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー