Читая очередную статью сравнивающую гибкие итеративные методологии разработки с тяжеловесными водопадными моделями пришел к мысли, что блог это один из наиболее ярких примеров иллюстрирующих прелести итеративного подхода.
Если сравнивать блог с книгой по аналогии с методологиями разработки, то блог – это agile, а книга – это waterfall. По сути, каждый человек который пишет блог, на самом деле итеративно пишет книгу, но
вся прелесть в том, что после того как очередная глава (пост в блоге) написана, читатели могут её прочитать, написать свои отзывы, задать вопросы, поделиться дополнительной информацией, а автор, если он адекватен, может скорректировать дальнейшее направление и содержание книги в соответсвии с тем, что он слышит от своих читателей. Автор всё время имеет хорошую обратную связь со своей читательской аудитрией и сразу же получает оценку своей писанине. Читатели же получают новые знания и информацию гораздо раньше и чаще всего именно тогда, когда она им необходима, не дожидаясь когда вся серия постов образующих книгу будет закончена.
В случае с книгой писатель придумывает тему и садится писать книгу на несколько месяцев, а то и лет, изредка показывая куски книги либо близким друзьям/знакомым либо редактору, тоже получая какую-то скудную обратную связь. Главная же проблема в том, что к тому моменту когда книга будет готова, она мало того, что может быть не интересной, но еще и устаревшей потому, что от момента когда писатель начал писать к тому моменту когда он закончил писать может пройти уйма времени.
Вот так же всё и с разработкой программного обеспечения. Когда проект ведется по гибкой итеративной методологии типа XP, SCRUM заказчики/бизнес постоянно получают новые куски функциональности (главы книги, посты блога) достаточно быстро и могут сразу же эту функциональность использовать для решения проблем или получения какой-то другой пользы. Команда разработки в свою очередь получает комментарии и оценку на каждый кусок функциональности и может легко корректировать дальнейшую линию разработки продукта. Если же проект ведется по тяжеловесной методологии, то думаю тут и рассказывать ничего не надо — продукт выходит в свет уже морально устаревшим и выглядит не так как этого первоначально хотели заказчики/бизнес.
Еще один пример это то, как выпускают ОС Apple и Microsoft.
Apple выпускает новую ОС примерно раз в год каждый раз немного её улучшая в соответствии с ранними пожеланиями пользователей.
Microsoft выпускает новую ОС раз в 3-5 лет улучшая её достаточно сильно и делая много изменений, что приводит к тому, что пользователь видя новую версию Windows впадает в ступор не зная как выполнять там привычные операции, что и произошло с Вистой.