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

杉浦英樹

tag: 組み込み

技術解説 2004年3月16日

 ソフトウェア開発者とテスト担当者がそれぞれ分担して作業を行う場合,納期に追われたソフトウェア開発者は,わらをもつかむ思いでテスト担当者にソフトウェアの品質の検証をゆだねてしまうことがあります.こうなると,テスト工程で多くの欠陥が検出され,ソフトウェア開発者はその欠陥の修正作業に追われることになります.テスト担当者にソフトウェアの品質の検証をゆだねたソフトウェア開発者の甘えが,悪循環を引き起こすわけです(図5)

 また,単体テストはソフトウェア開発者が行います.その際のテスト内容については,ソフトウェア開発者自身が作成した内容をテストすることになるため,ソフトウェア開発者が要求を誤解していた場合,誤解したとおりに制御していることを確認することになってしまいます.単体テストにパスすると,全体との整合性やシステム動作を検証するシステム・テストの段階まで,この欠陥は検出されません.欠陥の発見が遅れると,対策に費やすことのできる期間が短くなり,最悪の場合,製品の市場投入時期を遅らせることにもなります.

 ソフトウェア開発者がテストを行うと設計品質は改善されますが,より多くの目でソフトウェアをテストしなければ,要求の誤解や抜け,漏れなどを防止することはできません.つまり,ソフトウェア開発者自身によるテストには限界があるということです(表2)

f05_01.gif
〔図5〕ソフトウェア・テストの悪循環
ソフトウェア開発者がリリースするソフトウェアの品質が低いと,テスト担当者の負担が増える.その対策に追われるため,結局,ソフトウェア開発者の作業も増えることになる.

表2〕分析,設計,実装,テストの工程を一人のエンジニアが担当した場合の利害得失

長 所
短 所
  • システムの中の自分の担当部分が理解でき,開発の全体を見渡しやすい
  • 作業全体を知ることで,製品開発の流れと作業上の問題箇所を把握できる
  • 工程上の自分の向き,不向きがわかる
  • 実装する機能が多い場合は混乱しがち
  • 開発工程ごとの成果物をきちんと作成しなくても次の工程に進めるので,設計資料の品質が落ちる傾向がある
  • 自分に向かない作業も行わなければならず,最適な担当者が割り当てられた場合と比べると,効率が良いとは言えない
組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! 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日