Быстрая открытая бета или долгая закрытая разработка

21.12.2007

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

Попробую сравнить два подхода.

Быстрый запуск простого сайта при продолжающейся разработке

Долгая разработка, запуск функционального сайта

Небольшие стартовые вложения, низкие риски.

Серьезные вложения, высокие риски.

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

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

Запуск проходит тихо, рост аудитории плавный, часть аудитории теряется, поскольку не находит интересных фишечек.

Громкий запуск, взрывной рост, сайт «цепляет» больше людей.

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

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

Удается концентрироваться на качестве материалов сайта.

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

Выпускать новые версии раз в неделю — хлопотно.

Разработчиков не отвлекают внешние факторы.

Заказчик видит, что работа идет.

Ожидания заказчика растут и могут в итоге не сойтись с результатом.

Постепенная разработка выглядит менее рискованной, требует меньше вложений, продукт получается качественнее. Однако, высокие риски при длительной разработке иногда оправдываются супер-бонусами. Кроме того, некоторые сложные системы не получится релизить раз в неделю.

Поскольку у большинства проектов ресурсов немного, альтернативы постепенной разработке для них нет. Хотя есть целый пласт сайтов, которые напрасно разрабатываются «как большие».

Комментарии

Pashka R., 21.12.2007 20:53

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

Дмитрий Сергеев, 21.12.2007 21:02

Несомненно. Я описал всё очень упрощенно и с большими допущениями.

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

Максим, 21.12.2007 21:20

Интересная тема. Я задумался. :)

Скорее всего оптимальным будет разбиение разработки на несколько «закрытых» этапов. То есть заказчику предоставляется некий план развития, где четко указано что за чем следует.

Дмитрий Сергеев, 21.12.2007 21:30

Привет :)

Я делаю сайты обычно с «быстрым запуском», но вижу, что большинство делает по-другому. И я не уверен, что прав. Хотя, может быть дело в бюрократии, которая неизбежна в масштабных проектах. Понятно, что когда топовая студия делает сайт для крупного банка, там еще те ритуалы.

А из разумного вижу у второго подхода одно преимущество: если ресурсов много и просчитанная идея, можно «рвануть», наделать много шуму, обогнать конкурентов, не отвлекаясь на частые релизы.

Максим, 21.12.2007 21:43

Ну значит мы оба неправы. :) Если дело касается сайта, то я всегда говорю клиенту, что выложенная версия сайта/шаблона тестовая. Потому что если заявить, что «вот, всё готово», то оказывается, что ты что-то упустил, а где-то не так понял, а в других местах клиент не смог нормально объяснить, или вообще передумал, но забыл сказать. :) А так и ему спокойней и я не дергаюсь.

Но вообще, я думаю, что многое зависит от поставленной задачи. У меня есть клиенты, которые требуют точности до одного пиксела. И в принципе с ними довольно легко работать, потому что я знаю, что они укажут на мои ошибки и я их смогу быстро поправить. Но есть и другие, которым +/- километр не помеха - они могут найти ошибку через месяц. Это я к чему? Если ставится задача не очень сложная «типовая» с мелкими изменениями, то можно выкладывать и частями, и недоделывая. Но если делается что-то совсем сложное, но лучше подзадержаться с выпуском, а тестировать в закрытом режиме.

Vladislav Ukhov, 23.12.2007 15:54

> Я делаю сайты обычно с «быстрым запуском», но вижу, что большинство делает по-другому. И я не уверен, что прав. Хотя, может быть дело в бюрократии, которая неизбежна в масштабных проектах.

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

> Понятно, что когда топовая студия делает сайт для крупного банка, там еще те ритуалы.

Воля "студии" - танцевать ритуальные танцы или не танцевать. Связи с обсуждаемыми типами запуска проектов не вижу.

"Быстрый" запуск ещё очень хорош с точки зрения финансирования разработки.

Дмитрий Сергеев, 23.12.2007 22:30

>> Бюрократические механизмы для «быстрого запуска» давно придуманы и очень успешно работают в реальной жизни.

Расскажете подробнее?

Есть, конечно, методологии, где частые релизы являются одним из принципов. И даже придумано что-то на счет документирования. Но, честно говоря, плохо представляю, как это всё стыкуется, например, с разработкой по госзаказам. Судя по моему опыту, там очень «классические» схемы: бумаги пишутся, решения согласовываются с высоким начальством.

Если встречаются две глыбы, «быстрый запуск» практически не достижим.

Денис, 22.12.2007 00:20

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

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

Дмитрий Сергеев, 23.12.2007 22:22

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

Славс, 22.12.2007 18:27

Полезная статья, пасибо автору )

Александр Кучеренко, 23.12.2007 21:23

На мой взгляд, автор некорректно описал проблему (поставил вопрос).

Допустим мне нужно сделать большой сайт с нетривиальным функционалом. Я бы выполнил следующие действия:
1. Проектирование сайта или Предварительное проектирование сайта (если сложно сразу определить конечный масштаб сайта)
2. Составление плана работ - разбиение разработки сайта на задачи во времени и присвоение им приоритетов реализации, как объективных, так и субъективных. Субъективный приоритет может быть выставлен в результате желания Заказчика запустить сайт в два этапа, например, сначала сделать статичный сайт с формой обратной связи (быстрый запуск), а потом сделать динамичный сайт с CMS и интеграцией с внутрикорпоративной системой/базой данных (запуск в полном объеме).
3. Выполнение работ – реализация сайта или последовательная реализация работоспособных версий сайта в соответствии с планом работ

Хочу обратить внимание на два понятия и разницу между ними:

1) Быстрый запуск сайта – это разработка и размещение в Интернете (по адресу сайта Заказчика) работоспособной, но не окончательной по набору содержания и/или функций (относительно набора запланированного на этапе проектирования) версии сайта. При этом работоспособная быстрая версия сайта может быть как стабильной (c проведенным тестированием и отладкой), так и нестабильной (alfa, beta и т.п.).

2) Создание прототипа сайта – это часть проектирования (разработки) сайта, результатом которой является создание прототипа сайта или его частей с целью дальнейшего тестирования, обсуждения, доработки, утверждения Заказчиком и Исполнителем. Для тестирования и доработки также могут привлекаться сторонние тестеры и проектировщики. Прототип сайта или его частей не является работоспособной версией сайта.

В свете вышесказанного, проблема поставленная автором для меня является некорректно поставленной.

Дмитрий Сергеев, 23.12.2007 22:44

>> На мой взгляд, автор некорректно описал проблему (поставил вопрос).

А как было бы корректно? Сравниваются поздняя тяжелая сборка и ранняя легкая с последующим наращиванием функциональности.

Любопытная идея про субъективные и объективные приоритеты. Действительно, иногда приходится балансировать.

Александр Кучеренко, 24.12.2007 00:29

Есть некоторая нелогичность, поверхностность, неконкретность изложения.

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

Смысл первой фразы, как я его понял, в том, что есть процесс, результатом которого является выпуск конечной версии сайта. Собственно это все о чем она говорит и в чем заключается 1-ый подход. По сути, в ней сказано, что подход к разработке сайта заключается в разработке сайта. В общем, из этой фразы я не вижу ничего такого, что можно было бы выделить как “подход”.

Смысл второй фразы в том, что есть процесс, результатом которого является выпуск конечной версии сайта, и который дополняется выпуском на ранней стадии разработки урезанной по функциональности, но при этом работоспособной версии сайта. Это тоже не тянет на понятие “подход”, а сравнение и противопоставление друг другу этих фраз вообще некорректно.

По сути, я не вижу здесь никаких противоположных подходов, да и подходов вообще. Я хочу сказать, что вторая фраза не противоречит, а немного дополняет (сопутствует) первой, что никак не вяжется с фразой “два противоположных подхода к разработке сайта”.

С таблицей сравнения то же приколы. Например, “Быстрый запуск” это часть (один из этапов) “долгой разработки”. По-моему некорректно их сравнивать да еще рисовать таблицу сравнения.

Дмитрий Сергеев, 24.12.2007 01:06

М... Ну ладно :)

Eric Nord, 27.12.2007 10:36

А что такое "SEO — долгий процесс"??? И как правильно "индексировать поисковики"???

Дмитрий Сергеев, 28.12.2007 02:55

Кажется, я не понимаю смысл вопросов.

Eric Nord, 09.01.2008 12:16

Человек написал "SEO — долгий процесс". Вот я и спрашиваю что такое "SEO"???

Дмитрий Сергеев, 09.01.2008 16:15

SEO (Search Engine Optimization) — оптимизация сайта под поисковые системы. Это комплекс работ, которые проводятся как на самом сайте, так и за его пределами. Цель этих работ — добиться высоких позиций в выдаче поисковых систем по нужным запросам.

Скажем, у вас сайт про хоккей, а по запросу «хоккей» в Яндексе он не находится. SEO должно в этом помочь.

Eric Nord, 03.03.2008 00:25

Можете посодействовать с том, что бы сайт "находился в яндексе по запросу "хоккей"??? Не бескорыстно...

Дмитрий Сергеев, 03.03.2008 10:42

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