4852. В проекте 20 микросервисов, каждый имеет свою модель данных. Нужно показать зависимости между сервисами на высоком уровне (кто кого вызывает). Какая диаграмма UML подходит лучше всего?
Anonymous Quiz
23%
Диаграмма последовательности
69%
Диаграмма компонентов (с интерфейсами и зависимостями)
6%
Диаграмма классов
2%
Диаграмма деятельности
Почему не другие диаграммы:
Диаграмма последовательности слишком детальна (показывает обмен сообщениями во времени).
Диаграмма классов не отражает архитектуру на уровне сервисов.
Диаграмма деятельности — для процессов, а не для структуры.
Реальный пример: В проекте с 50 микросервисами архитектор нарисовал диаграмму компонентов и сразу увидел циклические зависимости, которые пришлось разорвать.
Вывод: Аналитик может использовать диаграмму компонентов для документирования архитектуры и анализа связанности сервисов.
Please open Telegram to view this post
VIEW IN TELEGRAM
4853. Сервис оплаты иногда недоступен. Нужно, чтобы при его падении заказ всё равно создавался, но помечался как «Ожидает оплаты». Какой паттерн обеспечивает graceful degradation?
Anonymous Quiz
4%
Circuit Breaker
95%
Graceful degradation с fallback (сохранение запроса в очереди, уведомление клиента)
1%
Только ретраи
0%
Отказ от приёма заказов
При недоступности платежного сервиса заказ создаётся со статусом «Ожидает оплаты».
Клиент получает уведомление: «Заказ оформлен, ссылка на оплату придёт позже».
Запрос на оплату сохраняется в очередь и будет обработан при восстановлении.
Чем отличается от Circuit Breaker?
Circuit Breaker отключает проблемный сервис, но не предлагает fallback-действие, а просто возвращает ошибку. Здесь же бизнес-процесс не прерывается.
Реальный пример: В Ozon при временной недоступности оплаты заказ всё равно принимается, а клиенту приходит смс с кнопкой оплатить позже.
Что должен зафиксировать аналитик:
Альтернативные сценарии при недоступности внешних систем.
Сохранение состояния и уведомление пользователя.
Механизм повторной обработки.
Please open Telegram to view this post
VIEW IN TELEGRAM
4854. В середине спринта заказчик просит добавить поле «скидка» в отчёт. Оценка — 2 дня. В спринте осталось 3 дня, но есть незавершённая задача высокой важности. Что делает аналитик?
Anonymous Quiz
0%
Добавляет поле без обсуждения, чтобы угодить заказчику
95%
Организует встречу с заказчиком и командой, показывает последствия, ищет компромисс
3%
Отказывает, потому что требования уже утверждены
2%
Передаёт решение тимлиду
Процесс:
Оценить трудозатраты (2 дня).
Выяснить у команды, какую задачу можно отложить или сократить.
Показать заказчику варианты:
Добавить поле, но сдвинуть релиз на 2 дня.
Добавить поле вместо другой задачи (какую именно?).
Отложить поле на следующий спринт.
Зафиксировать решение (протокол).
Реальный кейс: В компании по разработке CRM аналитик сразу согласился добавить поле «скидка» в отчёт без обсуждения. В итоге сломали отчёт по выручке, так как новая задача не была протестирована. После внедрения процедуры change request подобное прекратилось.
Вывод: Аналитик — не просто исполнитель, а фасилитатор, который управляет приоритетами и информирует о рисках.
Please open Telegram to view this post
VIEW IN TELEGRAM
4855. Платежный шлюз присылает callback на ваш endpoint. Злоумышленник может подделать запрос и сымитировать успешную оплату. Как защититься?
Anonymous Quiz
0%
Проверять IP-адрес отправителя
95%
Использовать цифровую подпись (HMAC) каждого запроса, сверять её с секретным ключом
1%
Требовать пароль в теле запроса
4%
Принимать callback только из внутренней сети
Почему не подходят другие:
IP может быть подделан или динамический.
Пароль в теле может быть перехвачен (не передавайте в открытом виде).
Ограничение по внутренней сети не работает для внешних webhook.
Реальный пример: Stripe подписывает каждый callback заголовком
Stripe-SignatureВывод: В требованиях к интеграции аналитик должен указать: «Callback-запросы должны содержать HMAC-подпись, вычисленную с использованием секретного ключа».
Please open Telegram to view this post
VIEW IN TELEGRAM
4856. В системе категорий товаров (меню) глубина вложенности не ограничена. Запросы: «найти все подкатегории заданной категории». Какой способ хранения иерархии оптимален для чтения?
Anonymous Quiz
45%
Поле parent_id + рекурсивный CTE
34%
Хранить предков в отдельной таблице (Closure Table)
11%
Хранить path в виде строки (например, "1/3/5/")
9%
Хранить сразу все уровни в отдельных столбцах (level1_id, level2_id...)
SELECT descendant FROM closure WHERE ancestor = 1parent_id + CTE — рекурсивный запрос, при глубоких деревьях и больших объёмах данных может быть медленным.
path — хорошо, если не нужно часто искать поддеревья и не очень много записей.
отдельные колонки — ограничивает глубину.
Реальный пример: В каталоге интернет-магазина с 10 000 категорий и глубиной 5 уровней Closure Table позволяет получить все товары раздела за 20 мс, тогда как рекурсивный CTE — за 200 мс.
Вывод: Аналитик, проектируя структуру для иерархий с частым чтением поддеревьев, должен рекомендовать Closure Table.
Please open Telegram to view this post
VIEW IN TELEGRAM
4857. Заказчик просит сделать «фильтр товаров по многим параметрам с мгновенной выдачей результатов». После реализации выясняется, что «мгновенно» — 0.5 секунды, а разработчик заложил 2 секунды. Что нужно было сделать аналитику до начала разработки?
Anonymous Quiz
7%
Передать требование архитектору для технической оценки
89%
Зафиксировать числовое значение в нефункциональном требовании
2%
Уменьшить количество параметров фильтрации
2%
Добавить в команду профессионального тестировщика
Please open Telegram to view this post
VIEW IN TELEGRAM
4858. В интернет-магазине при одновременном заказе последнего товара двумя пользователями оба заказа проходят, и остаток становится отрицательным. Какой механизм БД предотвратит эту ситуацию?
Anonymous Quiz
3%
Увеличить количество реплик базы данных
86%
Использовать пессимистическую блокировку строки
11%
Создать индекс на поле остатка
1%
Переключиться на NoSQL базу данных
ПРОМТ, КОТОРЫЙ УЛУЧШИТ ВАШ БЛОГ ИЛИ ПРОДУКТ
⠀
- нормально сегментирует ЦА, а не напишет «женщины 30+»
- подскажет, что нужно докрутить
⠀
В одной ПАПКЕ с топовыми каналами по бизнесу, IT и AI
⠀
▪️AI песочница инженера
…. и ещё много полезных каналов, из которых вы получите
⠀
- нейросети, которые генерят контент за минуты, ведут переписки и приводят новых клиентов
- набор топовых инструментов для IT
- небанальные связки по привлечению трафика
⠀
❗️через 3 дня удалю пост
⠀
ПОПАСТЬ В ПОДБОРКУ КАНАЛОВ
⠀
- нормально сегментирует ЦА, а не напишет «женщины 30+»
- подскажет, что нужно докрутить
⠀
В одной ПАПКЕ с топовыми каналами по бизнесу, IT и AI
⠀
▪️AI песочница инженера
…. и ещё много полезных каналов, из которых вы получите
⠀
- нейросети, которые генерят контент за минуты, ведут переписки и приводят новых клиентов
- набор топовых инструментов для IT
- небанальные связки по привлечению трафика
⠀
❗️через 3 дня удалю пост
⠀
ПОПАСТЬ В ПОДБОРКУ КАНАЛОВ
Telegram
B&IT
Анна Гладкова invites you to add the folder “B&IT”, which includes 23 chats.