1. Идея
Любое обновление в своем истоке начинается с идеи. Менеджеры и руководители проектов отбирают самые востребованные идеи, которые могут быть реализованы в системе за определенный промежуток времени. Эти идеи приходят из службы поддержки, uWishlist, социальных сетей и форума uCoz. Угодить всем, конечно же, сложно, но мы стараемся отбирать самое реальное и реализуемое, а главное, самое важное с точки зрения потребностей обычного пользователя.
Идея, поступившая на конвейер, проходит несколько этапов реализации (в зависимости от ее сложности и масштаба):
- написание ТЗ;
- создание макетов/набросков будущего функционала;
- верстка макетов;
- разработка функционала.
2. Реализация
Самый сложный этап — это, конечно же, реализация и разработка. Это сложно, но очень интересно в плане коммуникации сотрудников. Многие знают, что в команду uCoz входят люди из разных стран и городов. Руководитель проекта и разработчик физически могут находиться в разных офисах, однако это никак не влияет на коммуникацию между ними.
Разработка идеи ведется на DEV-серверах. Для каждого обновления или новой функции существует отдельный DEV-сервер, и разработка на этом уровне ведется независимо друг от друга. Позже, когда “сырая” версия превращается в первичную готовую функцию или продукт, обновление заливается на ALPHA-сервер для первых тестов.
Изначально разработчик пишет код для нового функционала или багфикса на своем локальном компьютере. Когда все готово, он заливает код на DEV-сервер (это копия реального сервера для нужд разработчиков). После того как код пройдет первичную внутреннюю проверку, багфиксы и новые фичи попадают на ALPHA-сервер для дальнейшего тестирования.
3. Этап тестирования: ALPHA
Как только руководитель или менеджер задачи подтвердил готовность функции на DEV-сервере, обновление становится доступным на ALPHA-сервере, а наш отдел тестирования получает список обновлений и технические описания всего нового функционала, при каких условиях и настройках его тестировать, на какие моменты обратить особое внимание и т.д.
Кроме штатных сотрудников по тестированию, доступ к ALPHA-серверу дается также и нашим завсегдатаям: группе “uЗнатоки” на форуме сообщества uCoz или активным участникам обсуждений в наших социальных сетях. Мы учитываем пожелания и мнения опытных пользователей системы.
Если багов после первичного тестирования функционала не обнаружено, тестировщики дают добро на заливку функционала на финальный BETA-сервер. Именно на BETA-сервере все обновления со всех ALPHA-серверов от разных программистов сливаются воедино для тестирования релиза на совместимость. Ведь может выйти так, что обновления конфликтуют. Такое бывает, и даже часто. :)
На этом этапе грядущему апдейту дается кодовое название, под которым будет происходить релиз. Читатели нашего блога видят эти обновления под номерами, например:
- Новые возможности "Оригинальных текстов" SEO-модуля (UP. 16-2015).
4. Финал: Beta-тест и релиз обновления!
Все тесты пройдены, все ошибки исправлены, можем идти в релиз!
После финального теста всех грядущих обновлений на отсутствие багов и совместимость на BETA-сервере мы начинаем наш релиз. Но и на этом не все. У нас более сотни серверов, и довольно опасно выкладывать обновление на все сервера сразу. У каждого сайта своя собственная конфигурация, уникальный набор модулей и сочетание тысяч настроек, а у большинства — собственный персональный дизайн.
Поэтому первый удар мы принимаем на себя и начинаем релиз с нашего любимого сервера s4, на котором расположено большинство официальных проектов uCoz, в том числе наш форум и этот блог. Сначала мы все проверяем на своей шкуре, а потом даем пользоваться всем нашим пользователям, постепенно.
Хотя есть, конечно, и счастливчики с сайтами на сервере s4. Но обычно после сервера s4 мы не задерживаем обновление и постепенно заливаем его на остальные сервера в следующем порядке:
- s4;
- s1-8, 33, 36, 39, 100, 101;
- все сервера uCoz;
- сервера uWeb и VIP.
Обычно, если нет никаких серьезных багов и проблем с обновлением, за неделю оно появляется на всех серверах.
Если до пятницы обновление не вышло на всех серверах, в пятницу и выходные оно не заливается. Движение возобновляется лишь в понедельник.
А кто дочитал этот пост до конца, получает бонус: возможность принять участие в тестировании нового административного бара uCoz.
Для этого отправьте письмо на ящик top@ucoz.net (с пометкой “Тест админбара”).
На этом пока все, до скорых релизов!