鴫原 一人 富士ソフト(株) ASI事業部 エグゼクティブフェロー |
キーワード
リアルタイムOS | μITRON | テスト手法 |
[背景]高機能を持つリアルタイムOSの品質確保
[問題]マルチプロセッサ,メモリ保護機能に対するテスト手法
[貢献]リアルタイムOSのテスト手法の確立
[貢献]リアルタイムOSのテスト手法の確立
IoTや自動車の高度化に伴い,組込みシステムの重要性が一層高まっている.また,組込みシステムの高機能化・大規模化に伴い,マルチプロセッサやメモリ保護機能も必要となっている.一方で複雑化した組込みソフトウェアの不具合が問題視されている.組込みソフトウェア開発においては,プログラムの再利用性や,リアルタイム性を確保するために,組込み向けリアルタイムOS(RTOS)を採用して開発することが一般的である.つまりRTOSは,組込みシステムの品質を支える重要なソフトウェアであると言える.
RTOSの品質確保は重要な課題であるが,RTOSに特化したテスト手法やツールなどで,一般的に知られているものは存在しない.また,マルチプロセッサやメモリ保護に対応したRTOSは,歴史が浅く,テスト手法が確立されていないという問題がある.実際に,RTOSに対してテスト分析を行った結果,RTOS特有の性質から,スクラッチでテストプログラムを開発・保守することが困難であることや,マルチプロセッサ環境やメモリ保護機能におけるテストの実現に課題があることが明確となった.本研究では,これらの問題を解決するために,RTOSに対するテストの課題や規模を明確にし,RTOSをテストするための手法やツールを考案した.
まず,μITRONベースのRTOSを対象に,テストプログラムを直接コーディングするのではなく,テストプログラムより抽象度の高いテストシナリオから,テストプログラムを生成するツールを開発した.テストシナリオを形式的に表現するために,TESRY(TEst Scenario for Rtos by Yaml)記法と呼ぶ記法を考案し,TESRY記法で記述されたテストシナリオから,テストプログラムを生成するツールとして,TTG(Toppers Test Generator)を開発した.マルチプロセッサ向けRTOSに対しては,テストで必要となるプロセッサ間の同期を実現するプロセッサ間同期制御ライブラリを開発し,TTGに組み込んだ.
次に,AUTOSAR OSベースのRTOSを題材として,メモリ保護機能に対するテストを実施した.AUTOSAR OS仕様は,μITRON仕様と比べて,OSオブジェクトに設定可能なパラメータが多く,テストケース数が膨大となる問題に対しては,テストケースの組合せツールを用いたテストケース生成を行った.また,メモリ保護機能に対するテストパターンを導出し,テストのポータビリティ向上のため,プロセッサに依存する部分の明確化を行った.
本研究で開発したμITRONベースのRTOS向けのテストスイートは,以下から公開している.
http://www.toppers.jp/ttsp.html
RTOSの品質確保は重要な課題であるが,RTOSに特化したテスト手法やツールなどで,一般的に知られているものは存在しない.また,マルチプロセッサやメモリ保護に対応したRTOSは,歴史が浅く,テスト手法が確立されていないという問題がある.実際に,RTOSに対してテスト分析を行った結果,RTOS特有の性質から,スクラッチでテストプログラムを開発・保守することが困難であることや,マルチプロセッサ環境やメモリ保護機能におけるテストの実現に課題があることが明確となった.本研究では,これらの問題を解決するために,RTOSに対するテストの課題や規模を明確にし,RTOSをテストするための手法やツールを考案した.
まず,μITRONベースのRTOSを対象に,テストプログラムを直接コーディングするのではなく,テストプログラムより抽象度の高いテストシナリオから,テストプログラムを生成するツールを開発した.テストシナリオを形式的に表現するために,TESRY(TEst Scenario for Rtos by Yaml)記法と呼ぶ記法を考案し,TESRY記法で記述されたテストシナリオから,テストプログラムを生成するツールとして,TTG(Toppers Test Generator)を開発した.マルチプロセッサ向けRTOSに対しては,テストで必要となるプロセッサ間の同期を実現するプロセッサ間同期制御ライブラリを開発し,TTGに組み込んだ.
次に,AUTOSAR OSベースのRTOSを題材として,メモリ保護機能に対するテストを実施した.AUTOSAR OS仕様は,μITRON仕様と比べて,OSオブジェクトに設定可能なパラメータが多く,テストケース数が膨大となる問題に対しては,テストケースの組合せツールを用いたテストケース生成を行った.また,メモリ保護機能に対するテストパターンを導出し,テストのポータビリティ向上のため,プロセッサに依存する部分の明確化を行った.
本研究で開発したμITRONベースのRTOS向けのテストスイートは,以下から公開している.
http://www.toppers.jp/ttsp.html

(2019年5月8日受付)