「炎上プロジェクト頻発」という黒歴史をいかに乗り越えてきたか
ハートランド・データは、栃木県足利市に本社を置く従業員数約70名のソフトウェア/ハードウェア開発企業で、設立から44年の歴史を持つ。同社は組込み系を中心としたソフトウェア/ハードウェアの受託開発に加え、自社独自に開発したテストツールの外販も手がけている。

同社 セールス&カスタマーサクセス部 部長 新井雅嗣氏によれば、同社では特に2010年頃から自社製品の開発プロジェクトにおいて不具合が多発し、その結果としてプロジェクトの炎上が頻発していた。ここで言う「炎上プロジェクト」とは、「問題が積み重なってスケジュールがどんどん遅延し、想定通りに開発を終えることが困難になったプロジェクト」のことを指す。
本来、プロジェクト管理においては「出荷日程から工程を逆算する」「開発リスクを織り込む」「スケジュールに余裕を持たせるためのバッファを設ける」といった原則を守ることで炎上を防ぐことができる。だが、同社の開発プロジェクトではこれに反して、前工程で生じた作業遅延を後工程で挽回しようとするも追い付かず、結果として無理な負荷がかかり、プロジェクト全体が炎上するというパターンが繰り返されていた。
こうした状況の改善を目指し、開発途中で見つかる大量の不具合とプロジェクト炎上の間の相関関係をあらためて整理した結果、以下の仮説に辿り着いた。
「開発プロセスの各段階でテストというフィルターを掛けるものの、プロジェクトが炎上している状態ではそのフィルターの目が粗くなり、結果的に多くの不具合が検出されないまま次の工程へと流れていきます。こうして徐々に蓄積されていった不具合は、最終的にリリース後に発見され、ユーザーからの厳しい反応を招くことになります」(新井氏)
さらに同社ではこうした状況を理論的に分析するために、「レイリーモデル」を用いてプロジェクトのどのフェーズでどの程度の不具合が発生するかを分析してみた。その結果、不具合発生のピークが単体テストフェーズまでに訪れた場合は、その後のフェーズを通じて不具合を無事収束できることが分かった。
しかし、統合テストフェーズの段階まで不具合発生のピークが遅れると、リリース直前まで不具合が収束せず、結果として製品リリースの延期を余儀なくされるケースも発生していた。新井氏はまた、炎上プロジェクトにおいてエンジニアが陥りがちな「認知バイアスの罠」についても言及した。

「『自分ならできるはず』という過度な自信や、『あの時できたのだから、今回もできる』という過去の成功体験に基づく思い込み、『自分が採用した手段を否定されたくない』といった心理が、適切な判断を妨げる要因になります。従ってプロジェクト炎上を避けるためには、こうした認知バイアスから脱却し、物事や人、自分自身としっかり向き合った上で最善の判断をすることが重要です」(新井氏)
デバッガやprint文では解決できない動作検証や不具合解析に
【動的テストツール DT+(ディーティープラス)】は、プログラムのトレース情報と時間情報を組み合わせたログ収集が可能。実行経路・変数値・実行時間・波形・通信・映像など、多角的なデータ解析ができるから、複雑な不具合の原因特定もスピーディー。
▶ 詳しくはこちら