アドレスバグのように、「うっかり」作り込んでしまいがちな「単純な」不具合は、出来れば他人に指摘される前に自分でつぶしておきたいものです。
しかし残念ながら自分が作り込んでしまったアドレスバグが不具合として見える形になるのは、他のプログラムと組み合わせてテストしたときなのではないでしょうか。
例えば表示している動画が予期しないタイミングで停止してしまったので、動画処理部を解析していたら、その原因が画像とは全く関係のないネットワーク処理部の配列オーバーによる表示処理部のワークメモリ破壊だった、という事もあり得ます。
SOLIDではバグ動作が起きた瞬間に、他のプログラム動作に何の影響が起きていなくても、アドレスバグを自動検出しますので、アドレスバグを現行犯で逮捕できるところが、従来のモグラたたきでバグを追い詰めるデバッグ方法と大きく異なる点です。
アドレスバグのように、「うっかり」作り込んでしまいがちな不具合を、単体レベルで自動的にあぶりだし事前につぶしておくことでソフトウエアの品質は大きく向上します。開発全体のスケジュールの中で、単体モジュールの検証という比較的初期段階でアドレスバグがつぶせるのと、結合テストが進んで様々なバージョンのコンフィグレーションのうち特定の組み合わせで時々発生する不具合症状をデバッグするのでは、デバッグコストも大きく異なります。また悪いことに、時期的にも開発終盤でデバッグにかけられる残り時間が少ない、ということもしばしばです。
特に開発規模が大きくなり、多拠点で分散開発をするような場合は、不具合再現をするだけでも大きな労力を要するものです。委託先協力企業など、社外とのやりとりや段取りだけでも多大な時間を取られてしまうのが現実ではないでしょうか。
SOLIDの実行時アドレスバグ自動検出機能を利用し、自信をもって単体モジュールをリリースできれば何よりです。
SOLIDは、既存の組込み系開発環境に先駆けて、これらのバグ自動検出機能を利用できるようにした初の開発プラットフォームです。テスト用入力パターンをわざわざ作成することなく、簡単な手順でバグ自動検出機能が使えるため、誰もがスマートにデバッグ作業を進める事ができます。
実行時アドレスバグ自動検出機能を使って開発効率をアップし、皆さんのソフトウエア開発パワーをよりクリエイティブな作業に集中していただきたいと思います。
(第二回 につづく)