IoTとAI、ビッグデータ時代のソフトウェアテスト(8)
ソフトウェアテストの施策と運用(前編)――IoT時代を生き抜くテスト施策(5/6 ページ)
テストと設計の関係
不確定で不安定な要求を入力として設計を行うときは、防御的な設計になりがちである。不確定な要求に対する仕様をホットスポット(*)として、将来、どのようになろうとも対処できるよう事前に手を入れておく。その結果、やがて設計はホットスポットだらけになる(図4)。
(*)ホットスポット(hot spot) 「熱い場所」という意味で、設計においては現在仕様が未確定の部分や将来の仕様変更が予想される場所を指す。設計ではホットスポットに対して、実装を抽象化するなどの何らかの対処をしないとやけどする
設計ではホットスポットに対して、多くは回りくどい設計(教科書的にはこれを柔軟性とか拡張性とか呼ぶ)をして、ホットスポットがどのようになっても対処できるようにする。例えば、何個ものインタフェースを追加したり、プログラムをデータにして取替え自由にしたり、ありとあらゆるテクニックを使う。しかし当然、設計は複雑になり、見にくくなり、実装は大変になり、実行は重く遅くなる。
一方、設計に対応するテストケースをホットスポットにしてはならない。テストケースは具象的であり、それは全てが確定しているコールドスポットまたはフローズンスポットである。そこでこの設計とテストのアンバランスを埋める施策が必要になる。
設計のホットスポットのような複雑さをそのままテストケースにすると、後でやけどをする。設計が複雑になってもテストケースはシンプルであるべきだ。ホットスポットを無視し、自分が分かる範囲の仕様でシンプルなテストケースを作るのだ。
将来の変更に備える設計に付き合う必要はない。現時点で分かっている特定のインタフェースで、特定のプログラムが、特定のデータで実行されるとして、テストケースをシンプルに作る。テストケースはコールドスポットで作るのである。この思い切りが大事である。
しかしこのように作ったテストは十分ではない。将来に設計のホットスポットで追加や変更、削除があったときのことを考慮していないからだ。そのような事態に陥った際にはテストケースを作り直す必要があり、コストは大きくなる。テストケースでホットスポットを無視した罰が当たったのである。
これを効率的にするためにはホットスポットの温度を推測し、それに応じたテストケースを作ることだ。ホットスポットかコールドスポットかの2値でなく、もっと段階を増やし、アナログ的に捉える。そしてそれに応じたテストケースを作る。沸騰しそうなホットスポットでは、潔く諦めて、何もしない。
ただ将来のテストの覚悟だけをする。ぬるま湯のときは比較的対処しやすい。テストケースを共通部の他に、将来予想される設計変更部分に対するテストケースを2種類用意するという方法で対処できるかもしれない。その変動部も多くはないので、2倍のコストを必要としない。もちろん、ぬるま湯ぐらいのホットスポットであれば、今まで通り無視してもいいだろう。
とあるテスト現場より(4)
A:「ホットスポットって温泉のことじゃないんですか」
B:「まぁよく似ているな。どちらも体が熱くなってきて、湯あたりに注意かな」
A:「何をうまいこと……言おうとして失敗してるんですか。頭の中はぬるま湯ですか」
B:「テストは熱湯風呂だ!」
Copyright © ITmedia, Inc. All Rights Reserved.
IoTとAI、ビッグデータ時代のソフトウェアテスト
言うまでもなくソフトウェアテストは重要だが、IoTやAIなどの新しい概念によってソフトウェア自体の在り方が変わりつつある中、旧来からのテストを踏襲するだけでは成果は得られない。新時代のソフトウェアテストについて、考察する。
この記事の著者
新着ホワイトペーパー PR
-
製品資料
[株式会社 Green AI] AIで脱炭素計画を最適化、初年度からエネルギーコストとCO2を削減する方法 -
市場調査・トレンド
[スマートジャパン編集部] 「ペロブスカイト太陽電池」の普及戦略が公表 政府が目指すコスト・導入量のロードマップを解説 -
市場調査・トレンド
[スマートジャパン編集部] 導入が加速する再エネ・系統向け蓄電システム コスト・収益性の現状分析 -
技術文書・技術解説
[スマートジャパン編集部] いまさら聞けない「ペロブスカイト太陽電池」の基礎知識と政策動向 -
技術文書・技術解説
[スマートジャパン編集部] 「ペロブスカイト太陽電池」の開発動向、日本の投資戦略やコスト目標の見通しは?
関連記事
こんなメディアも見られています
TechFactoryに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
特集
- マテリアルズ・インフォマティクスの動向調査
- 研究・開発職のデジタル活用調査
- 設計・解析業務におけるAI活用
- 3Dプリンタ利用動向調査
- CAD利用動向調査
- つながる工場の現状と課題
- 製造業におけるAI開発および活用の実態
- 設計・製造現場における品質管理
ホワイトペーパーランキング PR
-
1
EE Times Japan×EDN Japan 統合電子版:フィジカルAIが生み出す新たな「設計思想」――電子版2026年8月号
-
2
半導体装置メーカー 業績まとめ【2027年3月期第1四半期】
-
3
新入社員に読んで欲しい鉄鋼材料の基礎知識まとめ(Part4)
-
4
一時は時価総額トヨタ超え キオクシア2026年度の動向
-
5
微細配線間の絶縁劣化をどう捉える? 先端パッケージ評価の最前線
-
6
新入社員に読んで欲しい鉄鋼材料の基礎知識まとめ(Part1)
-
7
EE Times Japan×EDN Japan 統合電子版:2026年上半期の半導体業界を振り返る――電子版2026年7月号
-
8
新入社員に読んで欲しい鉄鋼材料の基礎知識まとめ(Part3)
-
9
CADツールの見直しは本当に必要? 切り替えの理由と効果を7つの質問で検証
-
10
新入社員に読んで欲しい鉄鋼材料の基礎知識まとめ(Part2)
TechFactory SNS
インフォメーション
注目情報をチェック
TechFactoryをフォロー