「データの関係性」とは、あるデータが別のデータとどんな関係性があるかを把握することです。関係性が分かるメリットは、戦略の幅が広がることにあると思います。どのデータとどれに強い相関関係があるかが分かれば、戦略を進める上で、非常に有利になります。
ソフトウェア開発の場合、レビュー時間が多いほど、最終バグが減るという関係性が分かっているとすると、「このソフトウェアは高品質を求められているので、レビュー回数を増やそう」と開発方針を決められます。
関係性を把握できると、その関係性を使用してデータの推測が可能となります。天気予報から競馬の予想に至るまで、現在の何らかのデータが未来のデータに影響すると考えています。どれほど影響するかが分かれば、「未来予測」が可能になります。
推測は、ソフトウェア開発では、特に見積もりで重要です。例えば、見積もりツールの「SLIM(Software Life Cycle Management)」は、世界中の6300の開発プロジェクトを分析し、5つの要素(工数、開発期間、機能総量、生産性、品質)の関係性を数式に表し、最短開発期間などを見積もれるというものでした(SLIMの詳細と適用法は、本コラムの38号を参照ください)。
ソフトウェア開発において、見積もりミスは命とりになります。利益幅は多くて30%ほどですが、赤字には際限がありません。99のプロジェクトで平均20%の利益を出しても、1つの大赤字プロジェクトで投資コストの100倍の赤字を出せば、全ての利益が吹っ飛びます。精度の高い予測ができることは非常に重要です。
見積もりツールは、いろいろな種類が販売されています。市販の見積もりツールを使う上で重要なことは、自社の開発組織にどの程度フィットするかを分析することです。その時に、統計処理の知識があると、見積もりの精度が飛躍的に上がります。
今回は、エンジニアがデータ解析を知る「御利益」についてご説明しました。数字嫌いなソフトウェア・エンジニアにとってデータ解析は、足を向けたくない鬼門でしょうが、今回の「御利益」を参考に少しでも数字アレルギーを解消していただければ幸いです。
東海大学 大学院 組込み技術研究科 准教授(工学博士)
Copyright © ITmedia, Inc. All Rights Reserved.