Какие можно внедрить методологии разработки и внедрения новых фич?

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

С ноября всё стал сначала делать на тестовом сервере (полный дубликат рабочего), на рабочем развернул git и туда уже вливаю изменения из тестовых веток. Но ошибки всё равно есть, так как видимо я не могу отследить все моменты при тестировании, а хочется внедрять новшества быстрее. Может я слишком спешу?

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

  • Вопрос задан
  • 3289 просмотров
Пригласить эксперта
Ответы на вопрос 5
Rpsl
@Rpsl
Кратко о себе

Тестирование кода?

Ответ написан
LionAlex
@LionAlex

Как уже сказали выше, юнит-тестирование Вас спасет.

Ответ написан
Комментировать
@Afionas

Есть много литературы на тему Разрабатывания ПО) Самые распространяемые это Waterfall Model, V-Model, Spiral Model. Для подробной инфы советую почитать о каждой системе. Но, Вы как планируете продвигать сам проект, сколько пользователей там будет задействовано в будущем? Самый важный момент это в начале писать требования, чтобы не просто в уме у Вас был план что как должно работать, но и на листе, какие именно функциональные возможности, интерфейс какой, чтобы понятно было не только Вам работать над проектом, но и в будущем кто нибудь помочь смог, на словах что к чему не дело, и не по взрослому(имхо)

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

Ответ написан
Комментировать
afiskon
@afiskon

Автоматическое тестирование - функциональное и, желательно, нагрузочное. Не обязательно тестировать совсем все, но хотя бы основной функционал, что пользователь может зарегистрироваться, отправлять там ЛС и все такое. Прямо пишите скрипт, который ходит на ваш тестовый сервер GET/POST запросами. Или через Selenium.

Еще можно выкатывать фичи не на всех пользователей сразу, а только на определенный процент. Например, берете X = crc32(login) % 1000, в конфиге пишите, например, N = 5 (то есть, катим на 0.5%) и в коде, отвечающем за новую фичу, смотрите, если X меньше либо равен N, фича работает, иначе - не работает. Когда выкатите на 100% (N = 1000), проверку из кода можно убрать.

Ответ написан
Комментировать

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

Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
Бюро Цифровых Технологий Санкт-Петербург
от 120 000 до 180 000 ₽
04 мая 2024, в 08:59
40000 руб./за проект
04 мая 2024, в 07:58
1000 руб./в час