見出し画像

アジャイルではどこを測る?(ソフトウェア分析)

アジャイル開発でもプロジェクトデータを計測することは重要です。アジャイルを言い訳にデータ計測を疎かにするのは駄目です。それではアジャイルではどこを測ればいいのでしょうか。アジャイルはウォーターフォールと比べて仕様や開発対象が不確定なことが多いでしょう。アジャイルでは今の繰り返し開発で対象としている箇所、以降の繰り返し開発で対象とする箇所、既に開発が完了して凍結した箇所が混在しています。これらを今だけでも明確にして、計測するのが吉です。図引用元:IPA ソフトウェア開発分析データ集 FAQ

アジャイルでは場合分けが多い

アジャイル開発をしていると、1回の繰り返し開発(スクラムではスプリント)の中では、開発状況に応じて開発対象が色々と場合分けできます。
 
今回の繰り返し開発でまさに対象としている箇所(ホットスポット)、既に開発が終わった冷たい箇所(コールドスポット)、さらに仕様が凍結された箇所(フローズンスポット)、面倒なのが開発は終わったが仕様変更がありそうな箇所(ウォームスポット)などがあります。そしてこれから開発対象となる箇所(アンノウンスポット)があります。
 
このように開発対象が多岐に渡りますので、アジャイルではプロジェクトデータの計測は複雑怪奇になります。なお開発対象の呼び名は通称です。公称ではありませんので論文や始末書には決して書かないでください。
 
なおスクラムのDone(完了)との対応は、コールドとフローズンは何らかのテストやレビューで合格している(と思う)のでDoneです。ウォームはテストやレビューの確認は弱いので、Doneにするかは、プロジェクトの性格によって異なります。
 
ウォーターフォール開発では繰り返し開発ではないので、開発対象の場合分けは単純になり、プロジェクトデータの計測もアジャイルと比較して単純になります。伝統的な方法で機械的に計測できます。
・・・と言うのは公式発言で、実際はウォーターフォールでもアジャイルのように温度計測が必要です。つまりアジャイルと変わりません。

アジャイル計測が失敗する理由

前節で紹介したように、アジャイルではどこを計測するのかを、それぞれの開発対象の状況に応じて決める必要があります。そして問題なのは、その対象の箇所がどんな状況、どんなスポットであるかが、不明確なことです。
 
そのスポットが熱いのか、温かいのか、冷たいのか、凍っているのか、未知なのかがわからないのです。決められないのです。
 
決めるためには、アジャイルに限ったことではありませんが、経験と勘という職人技が必要になるのです。まるで天ぷら職人が油の泡と音だけで温度がわかるような経験と勘が必要です。そして経験と勘に頼る計測は時間が過ぎると失敗します。

アジャイル計測を成功させるには

逆に言えば、アジャイル開発で仕様変更の可能性を見極める、その箇所の温度を掴むことができれば、計測の度合を制御できます。経験と勘に依らずに、それを見極めることができるようにすれば、大丈夫です。
 
これには職人技の可視化が必要で、これには昔ながらの方法になりますが、チェックリストなどのアナログ手法がいいでしょう。口伝よりはましです。
 
ということで今日の結論。「アジャイル計測は温度の見極め大事」以上です。

以下のグループで今回のメトリクスに関する情報を紹介しています。
ソフトウェア研究会「とある技術のソフトウェアエンジニアリング」 | Facebook

マンガFAQの引用元:ソフトウェア開発分析データ集2022 | 社会・産業のデジタル変革 | IPA 独立行政法人 情報処理推進機構


よろしければサポートをお願いします!