実際に実行されているプログラムの挙動を動的に解析する『動的テスト』。
ソフトウェアテストの重要性が高まる中、その「動的テスト」に取り組んでいる企業も
増加しています。

「他の会社ではどのように取り組んでいるのか」、「時間短縮・工数削減など、具体的
な数字が知りたい」と気になっている方のために、
今回は、弊社の「動的テストツール DT10」の活用事例を紹介します。

今回ご紹介する事例は、2017年9月に開催された、ユーザー様限定のセミナーで発表
された事例です。
オーバル社、キヤノンITソリューションズ社、ホンダロック社の3つの事例を、
2回の記事に分けてご紹介します。

> 後編はコチラ!

再現頻度の低い不具合解析を1カ月から1週間に短縮した
オーバルのDT10活用

流量計専業メーカーとして国内最大手のオーバルは、配管などの経路を流体が通過する量
を測定する流量計の製造・販売を行う企業だが、精密計測機器は精度が命」だと同社研究開
発部 研究開発二グループの森本康照氏は語る。

例えばタレのような複合調味料の製造工程では、みりんやしょうゆなどの計測で流量計が
用いられるが、それらの合成比率が変わると味が変わるため、バグによる誤差発生はあって
はならない。通常のデバッガでは再現しないバグやどうしても潜伏してしまうバグを除去す
るため、同社は試用期間を経て2016年にDT10を導入している。

オーバル 研究開発部 研究開発二グループ 森本康照氏

 開発品のテスト時の不具合として、流量計から発信する流量に応じて変化するパルス
信号出力に、数十万カウントに1回の割合で表示値との差異が発生したという。
このバグを再現するには長時間を要すると同時に再現性も乏しいため、DT10を用いて
長時間トレースによる不具合解析を行った。

具体的には変数値の出力ポイントを数カ所に挿入して、1~2日かけたトレース結果を
解析したところ、変数値の変化を可視化する「変数モニタ」で再現ポイントを発見。
ある値が特定部分で同じ結果になるため、そこからコードを見直し、バグの修正に成功した。
DT10導入前は約1カ月間かけても原因の特定に至らなかったが、導入後は再現待ち時間
などを含めても、たったの1週間で解決に至っている。

次はカバレッジ(網羅率)測定による総合テスト評価だ。開発中のコード約1万行に対して、
通常のスクリプトテストを実施後、特に流量計算など重要な部分に絞ってテストポイントを挿入し、
C0(ステートメントカバレッジ)を実施したところ、カバレッジの計測結果とは別に、
スクリプトテストの漏れ分から不具合を1件、仕様不明確部分を1件発見したという。
加えて不用なコードやデッドコードも複数発見され、森本氏は「(未実行処理をコードレベルで
確認し、テスト漏れを防ぐ「カバレッジレポート」で)DT10の価値を自社内でアピールできた」
と語る。

加えて紹介したのが、アナログ信号計測ユニット「Analog Box」を併用した信号制御評価
の事例だ。流量計内部では、現象を電気的変化に変換するセンサーの信号を元に時間計測
(流量算出)し、負荷に応じて最適な制御を行うためのゲイン調整を行っている。
だが、その計測量は1秒間に約100回に及び、全てのデータを取得してデータの成否や
測定値の分布から部品性能を判断する必要があるために、同社ではその設計段階でAnalog Boxを
用いた。

A/D変換前後のデータを「マルチウェーブスコープ」で簡易的に比較評価し、さらにトレース
データをCSV形式で出力して、測定値が不規則に分布する状態をナノ秒レベルで確認した。
従来は部品に応じたアプリケーションをカスタマイズし、データを取得していたが、
「DT10を使えば単独で完了する。評価用ツール作成工数の削減につながり、開発効率化に至った」
と森本氏は高く評価した。さらにAnalog Box の入力チャンネル増加などをハートランド・データ
に求めたところ、当日中に中継ユニット「Connect Box C」と一体化した”カスタムAnalog Box”
が提案され、迅速な対応に驚いたと述べている。

まとめ

いかがだったでしょうか。前編では、オーバル社が取り組んだ流量計測機器開発における
事例をご紹介しました。様々な分野で使用される動的テストツールDT10。
後編では、キヤノンITソリューションズ社と、ホンダロック社の事例をご紹介します。
> 後編はコチラ!

はじめてみませんか?本気で役立つ動的テスト


14日間の無料トライアルでDT+を試せます。まずは自分の環境でじっくり試してみたいという方は、ぜひ無料トライアルにお申し込みください。

お申し込みはこちら

【大好評配信中!】動的テストの事例紹介ウェビナー

組込み機器開発特有のソフトウェアデバッグ、テストにお困りではありませんか?
初期化処理や処理時間、複数CPUのシーケンス処理など、どのようにテストしていますか?
複数の機器で構成されたシステムでは、
「機器同士のやりとりを把握することができない」
「デバッガを使ってブレークをかけることができない」
といった問題にぶつかり、ソフトウェア内部の動きを把握することは困難です。
そこで今回は、動的テストツールDT+ユーザー様を講師にお迎えし、
このような課題に対する活用事例をご紹介させていただきます。

ご視聴はこちら!

出典:TechFacory 2017年10月24日掲載記事「車載製品用コード開発を最大90%改善、「動的テスト」3つの事例」
http://techfactory.itmedia.co.jp/tf/articles/1710/24/news005.html