Аналитика на проекте: точка опоры развития!
Ещё Архимед говорил: «Дайте мне точку опоры, и я переверну мир». По большому счёту, аналитика фич и документация являются этой самой точкой опоры для развития любого проекта.
Аналитика на проекте очень важна. Даже если в проекте нет формальной аналитики, очень важно писать её самому, особенно разработчику, для того кода и фич, которые он создает.
Когда вы пишете аналитику по фиче, вы вынуждены думать о том, зачем она нужна, как она работает и почему реализована именно так.
Пример аналитики фичи “Автоматическое сохранение черновиков”:
Цель:
Как работает:
Почему выбрали такой подход:
В дальнейшем будут люди смотреть, как работает та или иная фича, и если она не работает, некоторые не смогут разобраться без аналитики.
Когда через полгода вы сами не помните, зачем реализовали фичу именно так, аналитика спасёт вас от переписывания работающего решения.
Современные реалии нам позволяют очень легко писать аналитику по фичам. Её можно сохранить в любом формате:
Самый простой способ — вести документацию в формате Markdown в папке docs проекта.
Пример структуры документации:
Фича: Уведомления о завершении задач
Цель: Повысить вовлечённость пользователей и улучшить завершение задач.
Реализация:
Альтернативы:
В современном мире писать аналитику стало проще простого. Нейросети могут автоматически генерировать аналитику на основе кода:
Аналитику можно:
Зачем нужна фича? Какую проблему решает?
Фича: Экспорт отчётов в Excel Бизнес-цель: Позволить менеджерам работать с данными в привычном формате Пользовательская ценность: Экономия времени на ручной перенос данных (~15 мин/день)
Как реализована фича? Почему выбран такой подход?
Фича:lazy loading изображений Реализация: Intersection Observer API Почему не просто скролл-события:
Какие альтернативы рассматривали? Почему выбрали текущий?
Фича: Авторизация через соцсети Рассмотренные варианты:
Представьте, что вы будете разбираться с этой фичей через 6 месяцев, ничего не помните, и вам нужно срочно починить баг.
Плохой пример: Используем Redux
Хороший пример: Используем Redux для управления состоянием формы, потому что:
Аналитика — это часть фичи. Если меняете логику, меняйте и аналитику.
Раньше я тоже считал, что если фича работает, то и аналитика не нужна. Потом мне пришлось разбираться с моей же фичей спустя 3 месяца.
Я потратил 6 часов на то, чтобы понять, зачем я реализовал сложную систему кэширования, которая казалась избыточной. А если бы я оставил аналитику, мне хватило бы 10 минут.
С тех пор я:
Результат: меньше времени на разбор чужих фич, меньше багов, быстрее онboarding новых разработчиков.
Аналитика фич на проекте — это не траты времени, а инвестиции в будущее. Современные инструменты, включая нейросети, позволяют очень легко создавать и поддерживать аналитику в любом удобном формате.
Аналитика — это love letter к будущему себе.
В следующий раз, когда захотите пропустить аналитику по фиче или не описать архитектурное решение, вспомните: вы экономите 15 минут сейчас, но можете потратить 15 часов потом. Пишите аналитику. Ваша команда и будущий вы скажут вам спасибо.