Кто постигает новое, лелея старое, Тот может быть учителем.
Конфуций
По мотивам.
Начинающие команды разработчиков. Как оно случается.
Разработка программного обеспечения - процесс итеративный. Что значит итеративный? Продукт проходит сквозь все фазы за сравнительно короткий промежуток времени. Несколько итерация - релиз. Это эволюционный процесс, в котором основная задача команды - узнавание требований, выуживание их из заказчика. Чем грешат начинающие команды? У них не отлажен процесс: мало внимания тестированию (если оно вообще есть), слабая архитектура, качество кода, медленное быстродействие. Наслаивание этих недостатков от итерации к итерации - неблагодарное дело, но что поделаешь...
Наконец, худо-бедно проект сдаётся. Начинается его сопровождение, которое включает расширение функциональности. Вот тут-то и всплывают все недостатки: сроки исправления ошибок - дни, сроки добавления новшеств - недели. Встаёт вопрос о переработке архитектуры, кода. Вот здесь нужно уяснить: разрабатывать с нуля можно, но крайне нежелательно. Исходить лучше из наработок: улучшение и рефакторинг существующего. Во-первых, наглядный пример как оно быть не должно, во-вторых, требования уже включены в существующий код, их не нужно переосмысливать глобально.
Комментариев нет:
Отправить комментарий