一覧に戻る

第10章 ソフトウェアシステムの検証と動作確認

10.1 ソフトウェアの検証・動作確認の基本的な考え方

1. 検証の考え方

ソフトウェア=プログラム+ドキュメント

P.180上~

?論理的な正しさ → 検証(Verification)

②ユーザの期待 → 妥当性確認(Validation)

2. 検証の方法

P.181中~

動的検証: テスト

静的検証: レビューなど

10.2 ソフトウェアレビュー

1. 静的検証の種類

ソフトウェアレビュー

プログラム解析

仕様検証

2. ソフトウェアレビューの種類

(a) 目的による分類

テクニカルレビュー

マネジメントレビュー

(b) 実施時期による分類

3. レビューの技法

(a) ウォークスルー

(b) フォーマルインスペクション

事前に問題点をリストアップしてから

4. レビュー実施時の工夫

10.3 プログラム解析と形式的仕様検証

省略(2.は西村の専門分野)

[ex12-1] どれにあたりますか: ユーザの要求事項にあった機能が作り込まれていることを確かめた

[ex12-2] どちらにあたりますか: GUIのキャンセルボタンを押すとキャンセルされることを確かめた

[ex12-3] どちらにあたりますか: 内部仕様書のアクティビティ図が正しく動きそうかを確かめた

[ex12-4] 静的検証でなく動的検証に分類されるべきものはどれですか

10.4 ソフトウェアテスト

1. ソフトウェアテストの役割と限界

プログラムの動作を確認

P.188下~

全開発期間の30%かけるが理想

P.189上~

テストではバグがないことの保証はできない

2. テストの種類と方法

(a) テスト時期による区分

?単体テスト

②結合テスト

複数のモジュールを結合して

③システムテスト

④受入れテスト

顧客と一緒に

(b) テスト方法による区分

?ホワイトボックステスト

内部を分かった上で

②ブラックボックステスト

外部からの視点で

③状態遷移テスト

(c) テスト観点による区分

省略

3. テストの手順

省略

4. テスト項目の作成

(a) ブラックボックステストのテスト項目作成

?同値分割法

同様の値は代表のみに

②限界値・境界値分析

③デシジョンテーブル

(b) ホワイトボックステストのテスト項目作成

?命令網羅テスト (C0)

図の(a)

②分岐網羅テスト (C1)

図の(b)

③条件網羅テスト (C2)

図の(c)

5. テスト項目の最適化

省略

6. テスト環境の準備

省略

[ex12-5] 顧客を交えて行うのはどのテストですか

[ex12-6] 動かす範囲が最も大きいのはどのテストですか

[ex12-7] “10以上の場合は…”という処理の境界値は何と何ですか

[ex12-8] テストパターンが最も多くなるのはどのやり方ですか

課題


教科書(図はすべてこちらより引用):
 平山雅之 他,「ソフトウェア工学」, オーム社

一覧に戻る