組み込みソフトウェア・テスト・クライシスの「傾向と対策」 ――「品質」をつねに念頭に置きながらソフトウェアを開発する

杉浦英樹

tag: 組み込み

技術解説 2004年3月16日

●周辺機能との整合性を保証するのもソフト開発者の責任

 開発工程を守り,ソフトウェア開発者による品質確認を行っているにもかかわらず,リリース後のソフトウェアに欠陥が見つかってしまうことはよくあります.テストして品質が確認されているはずなのに,どうしてすべての欠陥を取り除けないのでしょうか.テスト担当者がテストしている内容と,ソフトウェア開発者がテストしている内容の差に着目すると,その内容がまったく異なることに気づくはずです.

 例えば,ソフトウェア開発者が自分の開発した機能についてのみ,完全に確認したとしても,周囲の別のソフトウェアがそのソフトウェアを利用する際の制約を無視した場合には,全体の挙動がおかしくなってしまいます.ソフトウェア・テストでは,結合テストによってこのような欠陥をチェックします.結合テストの段階で,ひとかたまりになったソフトウェアがどのように動作するのか,その動作をどのように保証するのかは,ソフトウェア開発者の責任となります.

 ソフトウェア開発者によるテストにおいて,思いもかけないハングアップが起こることがあります.その原因の多くはソフトウェア開発者のシステム仕様に対する理解不足です.こうした問題は,ソフトウェア開発者の開発対象が狭い範囲に限定されており,システム全体を見渡すことができないために起こります.例えば,直接関与している部分以外のモジュールに変更があった場合,その変更内容を知らなくてもしごとは進んでいきます.このときの問題は,結合テストの段階にならないと発見できないわけです.

 ソフトウェア開発者は最新の仕様を理解しないまま自分のソフトウェアをテストするので,そのテストにパスしても,システム全体でテストしたときに問題が生じる可能性があります.ソフトウェア開発者はシステム仕様に関心を持ち,自分の担当部分がシステムの中でどのような役割を果たすのか,何を期待されているのかということを理解するように心がけなければなりません.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日