プログラマー回顧録(21)

~ エンデベッドシステム開発経験を回顧する ~

結合試験で流れ出るバグ

詳細設計では「サーバーから受信したデータをメモリに展開する」対応としたわけだ。

では、それに対し、どのような結合試験を行ったのだろうか?

2つの観点に基づき結合試験項目は作成されていた。

(観点1.データフロー)

・データがセットされていない場合、されている場合、2つの状態においてサーバーから受信したデータがメモリに展開されること

改修機能全般を確認する試験であり、サーバーとの通信からメモリ管理まで、データフローに着目した試験である。

(観点2.データ参照)

・データエリアが参照できること

メモリに展開されたデータ群の1ブロック目と最終ブロック(新たに定義されたデータの1つ手前)を参照する機能を抜粋し、その機能に対するデグレードを確認する試験である。

以上が結合試験の内容であった。

詳細設計において予備エリアに新たにセットされたデータを参照する機能がないと結論付けていた。

その結果、結合試験の試験設計において「予備エリアを参照する機能の動作確認」という観点が抽出できなかったわけである。

どうすれば結合試験でバグの流出を防げただろうか?

参照する機能がない(と実は勘違いしていた)データエリアを参照する機能のデグレードを結合試験で炙り出すのは不可能ではないか。

結合試験の限界との結論に至ったのであった。

だがしかし、検証でバグを流出させるわけにはいかないわけで。

結果として総合試験の見直しに至ったのである。

これは個人的体験談を元にした回顧録です。企業名、人名などは架空の名称です。
毎週日曜日更新。
随時、加筆、修正を行います。

投稿日2022.07.03更新日0000.00.00

プログラマー回顧録