Link Search Menu Expand Document
19 Марта 2023 г.

С нуля или переписать

Содержание

Попробуем понять когда систему стоит разработать с нуля, а когда эффективнее будет переписать.

Ничто не вечно

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

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

Важно понимать, что устаревает вся ИТ инфраструктура. Например, к ней отсняться:

  • Пакеты операционной системы.
  • Версии языков программирования, базы данных.
  • Фреймворк на котором написан проект

При увеличении нагрузки база данных не справляется с потоком клиентов. Низкое качество кода не позволяет оперативно вносить изменения. Из-за отсутствия тестов, банально страшно править код, чтобы ничего не сломать.

За всем нужно следить и смотреть.

Что делать

Разобраться в чужом коде намного сложнее, чем сделать все с нуля. Для этого нужен опыт решения подобных задач. Клиент чаще всего соглашается с исполнителем, когда тот просит переписать все с нуля, потому что так проще.

Например, мы в первый раз написали CRM систему за 1 год. Потом приняли решения все переписать. И параллельно с поддержкой старой системы начинаем писать новую. Здесь есть существенный минус. Мы тратим время на поддержку старой системы, вместо того чтобы с головой уйти в новую версию.

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

В итоге это большая нагрузка на клиента и на программистов.

С нуля

Когда же стоит разработать систему с нуля:

  • Используемые технологии безнадежно устарели. Например, php 4 и ubuntu 9.

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

  • CRM написана на CMS

Нестандартные задачи сложно решать. Модернизировать сервис написанный на wordpress или bitrix, невероятно сложно, нужно знать внутренности этих систем.

Модернизация существующей системы

На это влияют несколько факторов:

  • Специалисты высокого уровня. Задача модернизации системы более сложная, чем разработка с нуля, для этого нужны другие специалисты.
  • Время. Модернизация существующей системы всегда дольше по времени, чем разработать с нуля.

Итог

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


Возник вопрос или предложение пиши на почту alexsey_89@bk.ru или в Телеграмм канал

Дата публикации: 19 Марта 2023 г.

Наверх

Последнее изменение страницы: 19 Марта 2023 г.