2009年 秋期 応用情報技術者試験 問8
開発プロセスでのテスト
A 社は,顧客の製造プラントの設備診断システムを開発することになった。設備診断システムは,プラント内の各設備の温度・湿度・振動の情報を収集し,設備の正常・異常などの診断レポートを作成するシステムであり,測定装置サブシステムと診断サブシステムから構成される。図1は設備診断システムのDFDである。測定装置サブシステムの開発は,設備に装着可能な専用コンピュータを使用するので,専用コンピュータの開発元であるB社に委託し,A社は診断サブシステムの開発を行うことになった。
測定装置サブシステムは,温度測定,湿度測定,振動測定の各プロセスから成り,それぞれがセンサを用いて設備の温度・湿度・振動を測定し,センサデータとして保存する。診断サブシステムの測定データ収集プロセスは,これらセンサデータを定期的に収集し,測定データとして蓄積する。
正しいセンサデータは,設備やセンサの種類に応じてそれぞれ定められた範囲の数値データであり,各設備が問題なく運転できる正常値の範囲と,問題となる異常値の範囲に分けられる。正常値でも異常値でもないデータが保存されている場合は,測定データ収集プロセスが,これを不正データとして処理する。不正データの原因には,センサの故障がある。測定装置サブシステムのセンサデータにアクセスし,データを収集するには,B社が提供するセンサデータ読出し関数を診断サブシステムのプログラムから呼び出す必要がある。
設備情報登録プロセスは,各設備の正常値の範囲と異常値の範囲を設備情報として登録する。診断データ作成プロセスは,測定データと設備情報から,診断データを作成する。診断レポート作成プロセスは,診断データを基に,診断レポートを作成する。
図2は,設備診断システム開発プロジェクトの日程である。
工程 | 4月 | 5月 | 6月 | 7月 | 8月 | 9月 | 10月 | 11月 | 12月 | 1月 | 2月 | 3月 | 4月 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
(1) システム要件定義 | |||||||||||||
(2) システム方式設計 | 凡例 | ||||||||||||
(3) ソフトウェア要件定義 | ■:工程の作業期間を表す。 | ||||||||||||
(4) ソフトウェア方式設計 | ▼:運用開始日を表す。 | ||||||||||||
(5) 測定装置サブシステムソフトウェア詳細設計 | |||||||||||||
(6) 測定装置サブシステムプログラム作成,テスト | |||||||||||||
(7) 診断サブシステムソフトウェア詳細設計 | |||||||||||||
(8) 診断サブシステムプログラム作成,テスト | |||||||||||||
(9) ソフトウェア結合テスト | |||||||||||||
(10) ソフトウェア適格性確認テスト | |||||||||||||
(11) システム結合テスト | |||||||||||||
(12) システム適格性確認テスト | |||||||||||||
(13) 運用テスト | |||||||||||||
(14) 運用開始 | ▼ |
図2の中で,運用テストは顧客の分担であり,実運用環境での動作検証,初期データの確認,システムを利用する保守担当者の訓練が目的である。
C君はA社の開発チームに所属し,設備診断システムのテスト計画を立案することになった。担当する範囲は,図2の工程(8)~(12)のテスト工程である。最初にC君は,テスト工程ごとに,そこで確認すべき要求事項がどの工程で定義されているかと,テストの目的とをテスト工程定義として表のように設定した。
テスト工程 | 確認すべき要求事項を定義する工程 | テストの目的 |
---|---|---|
(8) 診断サブシステムプログラム作成,テスト | a | 診断サブシステムのプログラムが,aどおり実現されていることの確認 |
(9) ソフトウェア結合テスト | ソフトウェア方式設計 | 設備診断システムのソフトウェアが,ソフトウェア方式設計どおり実現されていることの確認 |
(10) ソフトウェア適格性確認テスト | b | 設備診断システムのソフトウェアが,bどおり実現されていることの確認 |
(11) システム結合テスト | システム方式設計 | 設備診断システムが,システム方式設計どおり実現されていることの確認 |
(12) システム適格性確認テスト | c | 設備診断システムが,cどおり実現されていることの確認 |
テスト実施方法の検討に当たって,C君は,A社とB社が開発するサブシステム間でのデータ連携の検証が重要であると考えた。A社による診断サブシステムのプログラム作成,テストの工程と,B社による測定装置サブシステムのプログラム作成,テストの工程を並行に実施した後,両サブシステムを初めて組み合わせるソフトウェア結合テストにおいて,設計上の不整合やプログラムミスなどから不具合が発生し,工程遅延を引き起こすリスクがあると予想した。そのため,dにおいて,スタブを有効に活用する必要があると考えた。
また,システム結合テストでは,eを基本とする。具体的には,同値分割やfを行って,テストケースを作成する必要があると考えた。
その後,プロジェクトは予定どおり開始され,現在はシステム結合テストの準備中である。C君は,システム結合テストの準備を担当しているD君が作成したテストケースのレビューを行った。D君は,同値分割において,設備情報で設備ごとに指定されている測定データの正常値の範囲と異常値の範囲を同値クラスとしていた。C君は,これではテストケースとして不十分であり,同値クラスの追加を指示する必要があると考えた。