第1回~第7回までの記事は「開発生産性の多角的視点 〜開発チームから事業経営に開発生産性を波及させるには?〜」からご確認いただけます。
8.1 システム構成イメージ
まず、ダッシュボード設計を見ていく前にざっくりとしたシステム構成を考えていきましょう。 前回の最後の項目(開発生産性と「技術投資」「人的資本」を接続するー7.4 データの可視化方法は、あらゆる社内データを集めるところから)でも触れた通り、まずは何事もデータを集めるところから開始していきます。
基本的には、各チームの細かい生産性データ(例えば、Four Keys)は別のツール(FindyTeam+)を利用しているため、その他のデータをどう集めるかを考えていきます。ひとつキードライバーとなるのが、管理会計のデータとのつなぎ込みです。きちんと開発生産性と事業数値との関連性を見出すにはここのデータをより細かく取得していきます。その中で、最も重要度が高いと思っているのが、P/LやB/Sのデータとしても使われている勤怠とひもづいた工数×実額データです。
つまり、どのプロジェクトにどのぐらいの工数とコストをかけたかというデータのことです。これはP/Lでいうコスト部分(人材関連費)になりますし、B/Sで言えばソフトウェア資産を指します。
各社、何かしらの方法で工数データとその実額データ(人件費など)は存在していると思います(給与を支払ったり貸借対照表(B/S)のデータとして利用するため) 。それらを開発生産性のデータとして利用するための工数管理は、主に2つのケースがあります。
- 勤怠に紐づけて工数入力を同時に行っているケース(そのプロジェクトに何時間作業したかが勤怠データと紐づいている)
- 勤怠とは別に、工数入力ツールを用いて行っているケース(勤怠入力と工数入力がバラバラ)
おすすめは1.の手段を採用することです。 工数だけでも重要なデータですが、工数に紐づいた実額データ(そのプロジェクトにかかった人件費)を表出化するには、対象のプロジェクトコードと勤怠(投入工数)が紐づいている状態であれば、ビジュアライズも楽になります。逆に勤怠と工数入力が紐づいていないと、どの工数請求プロジェクトにいくら使ったかがひもづけしづらいのと同時に、メンバーは二重で入力コストがかかるため、負荷が上がります。
また、第7回で見た技術投資のデータや人的資本データとして、人事データの一部やデータストアに貯めていきます。もちろん、すべてをデータストアに入れられるわけではないため、適切に判断して投入していきます。例えば、チームに関連データを入れる際、個人名は不要なため入れません。
データストアとしてはBigQueryを使うケースが多いですが、ここはビジュアライズするためのDWH(データウェアハウス)のツールであれば何でも良いでしょう。
一番の勘所は、こうした活動についてエンジニア組織だけで推し進めるのではなく、経理や財務・人事部などのバックオフィスのメンバーを巻き込みながらデータ収集を進めることです。そうしないと歯抜けなデータになり、目的である開発生産性と技術投資コスト、および人的資本データとの接続(点と点が線にならない)が難しくなります。