動作するソフトウェアは進歩の主要な尺度です
「動作するソフトウェアは、進歩の主要な尺度です。」
ソフトウェア開発プロジェクトの進捗状況を測定することは、困難で問題になる可能性があります。従来の方法は、プロジェクトをタスクに分割し、進捗状況を測定する方法としてそれらのタスクの完了率を追跡することです。ただし、これは非常に誤解を招く可能性があります。タスクのリストが不完全であることが多く、完了レベルには主観的な判断が必要な場合が多く、これを行うのは困難であり、不正確であることがよくあります。
テストはこれのもう1つの要因です。過去には、開発プロセス全体とテストプロセスが連続していた可能性がありました。その結果、ソフトウェアの開発は完了したように見えたとしても、テストと検証が完了するまで、実際にどれだけ完了しているかはわかりません。アジャイルアプローチは、ソフトウェアの開発と同時にテストを行うことを強調しています。アジャイルには、よく耳にする「完了」の定義と呼ばれる概念があります。チームは、行われたことの意味を明確に定義する必要があります。これは通常、ソフトウェアがテストされ、ユーザーによって受け入れられたことを意味します。他の環境では、doneの定義ははるかにあいまいであり、解釈の対象となる可能性があります。完了の明確な定義がない場合は、完了率の見積もりが疑わしい可能性があります。
進捗状況のより正確な尺度は、ソフトウェアプロジェクトを機能のチャンクに分割することです。ここで、ソフトウェアの各チャンクには完了の明確な定義があり、フィードバックと受け入れのためにユーザーに示すことができます。