Работающее программное обеспечение — основной показатель прогресса
« Работающее программное обеспечение является основным мерилом прогресса. ”
Измерение прогресса в проекте разработки программного обеспечения может быть трудным и проблематичным. Традиционный метод состоит в том, чтобы разбить проект на задачи и отслеживать процент выполнения этих задач как способ измерения прогресса; однако это может ввести в заблуждение, потому что часто список задач неполный, а уровень выполнения часто требует некоторого субъективного суждения, которое трудно сделать и которое часто является неточным.
Тестирование является еще одним фактором в этом — очень часто в прошлом весь процесс разработки и процесс тестирования могли быть последовательными. В результате, хотя разработка программного обеспечения может показаться завершенной, вы не узнаете, насколько она завершена на самом деле, пока она не будет протестирована и подтверждена как завершенная. Гибкий подход делает упор на одновременном тестировании по мере разработки программного обеспечения. В agile есть понятие, называемое определением готовности, о котором вы будете слышать довольно часто. Команда должна четко определить, что означает «сделано» — обычно это означает, что программа была протестирована и принята пользователем. В других средах определение «готово» может быть гораздо более двусмысленным и подвержено интерпретации. Если у вас нет четкого определения «готово», любая оценка процента завершения, скорее всего, будет сомнительной.
Более точной мерой прогресса является разбиение программного проекта на части функциональности, где каждая часть программного обеспечения имеет четкое определение готовности и может быть продемонстрирована пользователю для обратной связи и одобрения.