ОглавлениеНазадВпередНастройки
Добавить цитату

Итерационные и гибкие методологии, как средства реализации динамической модели требований

Разработка чего бы то ни было, будь то программное обеспечение, опытный образец продукта, методика или иной продукт творческо-производственной деятельности, происходит по одному и тому же укрупненному циклу:

– требования;

– проектирование;

– изготовление;

– проверка соответствия требованиям;

– устранение несоответствий;

… (пока не будет устранено несоответствие требованиями)

– проверка соответствия требованиям;

– приемка (передача в эксплуатацию)

Предсказуемость (да и возможность) выхода из этого цикла зависит от двух параметров:

– фиксированы ли требования,

– возможно ли исправить несоответствие требованиям.

Оба параметра, по сути, есть качества требования, а именно, неизменность и исполнимость. Таким образом, естественным выбором является сформировать исполнимые требования и зафиксировать их до окончания производственного цикла.

Это не что иное, как ранее упомянутая простая модель требований со всеми ее достоинствами и недостатками.

Производство не может работать в условиях динамической модели требований, потому что это станет непредсказуемо по времени и затратам ресурсов.

В то же время простая модель может не отвечать жизненным реалиям, которые скорее описываются динамической моделью.

В этом случае необходимо представить динамическую модель как последовательность простых. То есть, на какое-то время требования фиксируются, затем опять могут изменяться, затем снова фиксируются и т.д. Как это сделать?

Решением являются итерационные и гибкие методологии, которые, по сути, вводят какие-то законченные шаги, следующие друг за другом, на каждом из которых происходит фиксация требований, производство, приемка результата.

Затем требования могут быть пересмотрены, как в динамической модели, с учетом имеющихся уже результатов производства и их использования в будущем.

На следующем шаге требования опять фиксируются, проходит производственный цикл и т.д. до достижения результата.

Подходы могут быть различны: ограничение точности достижения первоначального результата (какие и в какой мере будут реализованы требования изначальной постановки, в частность разного рода прототипы и MVP являются примерами такого ограничения), ограничение количества итераций, ограничение по ресурсам и времени – все это является предметом методологий, создавая им различные сферы применения.

Нам же важно, что требования в жизни отвечают скорее динамической модели, но для производственных нужд мы приближаем эту модель гибридной – набором последовательных простых моделей, которые фиксируем в начале каждой производственной итерации.

Поняв эту специфику требований в целом, вернемся к их жизненному циклу в частности.