組み込みエンジニアの現場力養成ドリル(1)
若き組み込みエンジニア、B君の憂鬱(2/3 ページ)
テスト項目設計の適切さ
■表1.B君のデバッグ進捗
| プログラム名称 | ステップ数 | テスト項目総数 | 実施済テスト項目数 | 検出バグ数 | 修正済みバグ数 |
|---|---|---|---|---|---|
| モジュール_01 | 352 | 31 | 31 | 4 | 4 |
| モジュール_02 | 299 | 35 | 35 | 0 | 0 |
| モジュール_03 | 1227 | 481 | 481 | 3 | 3 |
| モジュール_04 | 584 | 24 | 2 | 13 | 6 |
| モジュール_05 | 207 | 85 | 85 | 0 | 0 |
| モジュール_06 | 306 | 68 | 68 | 37 | 37 |
| モジュール_07 | 471 | 11 | 11 | 0 | 0 |
| モジュール_08 | 392 | 9 | 9 | 0 | 0 |
| モジュール_09 | 227 | 35 | 5 | 0 | 0 |
| モジュール_10 | 82 | 9 | 9 | 0 | 0 |
| モジュール_11 | 102 | 10 | 10 | 0 | 0 |
| 合計 | 4247 | 798 | 746 | 57 | 50 |
診断:テスト項目設計の妥当性は、「モジュールのソースコードのステップ数とテスト件数の比率」を見ると、ある程度、判断できます。平均的には「ソースコード10ステップにつきテスト項目1件」で、一般には以下の比率になることが多いようです。
| ソースコードの種類 | ステップ数とテスト項目の比率 |
|---|---|
| バッチ系のソフトウェア | 15~10ステップで1件 |
| コンパイラやOS系 | 10ステップで1件 |
| リアルタイム制御系 | 5ステップで1件 |
優先度の高いプロセスが後から割り込んできて、CPU時間をはじめとするリソースを全て独占するリアルタイム系ではいろいろな事態を想定するため(自動車ならばエンジン制御より、衝突事故を検知してエアバッグを膨らませるプロセスが最優先になります)、テスト件数は膨大な数になります。
上記はあくまで目安であり、正当な理由があって上記の範囲をはみ出る場合もあります。まずは、B君のテスト項目をチェックする必要があります。上記のデータを見ると、以下の2点が気になります。
(1)ソースコード行数に比べ、テスト項目が異常に多い
「モジュール_03」「モジュール_05」は、3ステップで1件のテスト項目を作っており、これは多いと判断できます。このテスト項目数過多の原因は大きく分けて2つあります。1つは「自分がよく理解しているモジュールであるため、細かいテストもしたくなる」場合、もう1つは「複数の入力パラメータ、例えば、『入場料割引き判定』で、割引する曜日、時間帯、高齢者、サービス券持参、ポイント割引などの要素を全部組み合わせて、妥当性を判断している」場合です。
前者であればそれほど害はありませんが、後者はバグを摘出する「打率」の低いテスト項目を大量に作っているため、効率の良いテスト項目の設計法を指導する必要があるでしょう。
(2)ソースコード行数に比べ、テスト項目が異常に少ない
「モジュール_04」「モジュール_07」「モジュール_08」は、30~40ステップにテスト項目が1件しかなく、「テスト件数過少」です。これも、正当な理由があればいいのですが、件数過少になり得る原因も挙げられます。
1つは「設計している時間がなかった」、もう1つは「モジュールの機能を十分理解していない」です。B君の場合、他のモジュールでは、「テスト項目数過多」になっているため、「テスト項目を設計する時間がなかった」が原因ではありません。「モジュール_04」は、デバッグが進んでおらず苦戦していますが、その原因は、「機能の理解不足」と推測できます。ベテラン技術者にB君を指導させ、機能の整理をするといいでしょう。
Copyright © ITmedia, Inc. All Rights Reserved.
組み込みエンジニアの現場力養成ドリル
このコラムでは、組み込みエンジニアが日々の開発で実際に遭遇する「小さなトラブルを」取り上げ、演習形式で解説します。
この記事の著者
新着ホワイトペーパー 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をフォロー