組込みソフトウェアのテストエンジニア育成ハンドブック
本書は、初めてソフトウェアテストに接する人を対象に作成しています。このため、ソフトウェアテストについての基本的なことを分かり易く理解していただけるよう、出来る限り、平易な言葉と具体的な表現での解説を心がけました。もちろん、すでにテストエンジニアとして活動している方にも、基本をしっかりと再確認することの出来るように心がけたつもりです。
また、タイトルには「組込みソフトウェア」という言葉を使っていますが、テスト技法などを含めて、その多くはソフトウェア全般にも共通する内容となっています。ただ、その中でも、組込みソフトウェア特有と考えられる点も多々ありますので、そのあたりについても、本書の中で解説していきたいと思っています。
少し具体的な内容が足りないかも知れませんが、組込みソフトウェアのテストを行うときの「気づき」を与えられればと思っています。
表紙
ご購入方法
この書籍は、税込みで550円となっております。書籍のご購入方法については、以下のページをご参照ください。
目次
1.はじめに
1.1.組込みソフトウェアとは
2.組込みソフトウェアの現状
2.1.組込み関連産業生産額
2.2.組込みソフトウェア技術者数
2.3.組込みソフトウェア開発規模
2.4.組込みソフトウェアの人員構成
2.5.不具合発生状況
2.6. 調査結果を振り返って
3.テストって何だろう?
3.1.バグの無いソフトウェア
3.2.テストは創造的な仕事
4.ソフトウェアの品質とは?
4.1.ISO9126-1/JIS X 0129-1
4.1.1.品質モデル
4.1.2.品質特性と品質副特性
5.ソフトウェア開発プロセス
5.1.単体テスト
5.2.結合テスト
5.3.システムテスト
5.4.受け入れテスト
6.テスト手法
6.1.ホワイトボックスのテスト手法
6.1.1.制御パステスト
6.1.2.データフローパステスト
6.1.3.状態遷移パステスト
6.1.4.静的テストツール
6.2.ブラックボックスのテスト手法
6.2.1.同値分割
6.2.2.境界値分析
6.2.3.デシジョンテーブルテスト
6.2.4.原因結果グラフテスト
6.2.5.統計的操作テスト
6.2.6.エラー推測
6.3.システムテスト
6.3.1.ストレステスト
6.3.2.パフォーマンステスト
6.3.3.ユーザビリティテスト
6.3.4.セキュリティテスト
6.4.受け入れテスト
6.4.1.ユーザー受け入れテスト
6.4.2.運用受け入れテスト
6.4.3.契約受け入れテスト/規定受け入れテスト
6.4.4.アルファテスト/ベータテスト
6.5.その他のテスト
6.5.1.リグレッションテスト
6.6.テストの自動化について
7.テスト計画
7.1.IEEE 829
7.2.テスト計画書記載事項
7.2.1.テスト計画書識別番号(Test Plan Identifier)
7.2.2.参照(References)
7.2.3.はじめに(Introduction)
7.2.4.テスト項目(Test Items)
7.2.5.ソフトウェアのリスクについての課題(Software Risk Issues)
7.2.6.テストすべき機能(Features to be Tested)
7.2.7.テスト不要な機能(Features not to be Tested)
7.2.8.アプローチ(Approach)
7.2.9.テスト項目の合否判定基準(Item Pass/Fail Criteria)
7.2.10.一時停止基準と再開要件(Suspension Criteria and Resumption Requirements)
7.2.11.テスト成果物(Test Delivalables)
7.2.12.残テストタスク(Remaining Testing Tasks)
7.2.13.実行環境(Environmental Needs)
7.2.14.人員計画とトレーニング(Staffing and Training Needs)
7.2.15.責任(Responsibilities)
7.2.16.スケジュール(Schedule)
7.2.17.プランニングリスクとその対策(Planing Risks and Contingencies)
7.2.18.承認(Approvals)
7.2.19.用語(Glossary)
8.バグ管理
8.1.バグ管理の目的
8.2.バグ管理の流れ
8.2.1.バグ発見
8.2.2.再現確認
8.2.3.別の手順や状況での確認
8.2.4.バグ報告作成
8.3.バグ報告の内容
8.4.バグのライフサイクル
8.5.バグトラッキングシステム
9.品質管理
9.1.バグ管理図
9.2.チェックすべきポイント
9.2.1.試験進捗が遅れている場合
9.2.2.バグ検出件数が計画値よりも少ない場合
9.2.3.バグ検出件数が計画値を超過した場合
9.2.4.未対処バグが増加傾向にある場合
9.2.5.バグが収束していない場合
9.3.メトリクス
9.3.1.重要度の高いバグ
9.3.2.機能別
10.よくあるバグについて
10.1.ユーザーインターフェイス
10.2.例外処理
10.3.境界値
10.4.限界値
10.5.計算処理
10.6.初期化処理
10.7.処理の流れ
10.8.データ処理
10.9.競合状態
10.10.負荷状態
10.11.ハードウェア