GetAnalyst - Навыки • Системный анализ • Бизнес-анализ
22.2K subscribers
2.49K photos
89 videos
260 files
1.39K links
Разбор задач на проектирование систем 🚀 Канал для системных аналитиков, бизнес-аналитиков, тестировщиков и менеджеров проектов

Админ @getanalyst
Сайт https://getanalyst.ru
Чат t.me/getanalystchat
Начинающим в IT @getanalyststart
Download Telegram
GetAnalyst_Пример_кода_PlantUML_для_UML_Sequence.pdf
92.2 KB
🔖 Полное руководство по UML-Sequence + бесплатный AI-бот от GetAnalyst 🤖


💡 UML Sequence
Диаграмма, которая показывает последовательность обмена данными между участниками в интеграционном сценарии (Use Case).


📌 Ключевые элементы
▫️ Lifeline (линия жизни): вертикальная линия для каждого участника
▫️ Вызовы методов (отправка данных): сплошные стрелки
▫️ Получение ответов (данные): пунктирные стрелки
▫️ Бары активации: показывают, когда объект «активен»
▫️ Прямоугольники с alt, loop, opt: условия и циклы


Зачем?
• Дополнение к текстовому описанию Use Case (текст главнее)
• Визуализирует последовательность шагов
• Помогает найти «дыры» в алгоритмах
• Облегчает восприятие сложных алгоритмов разработчиками


🛠️ Где делать?
PlantUML — через код, бесплатный
Draw.io — визуальный редактор, бесплатный + есть встроенный AI, но работает не очень
MermaidChart — через код, частично бесплатный + есть AI



🤖 UML-диаграмма через AI + PlantUML за 3 минуты

1. Откройте:
ChatGPT (VPN для России)
GeminiAI (VPN для России)
Claude (VPN для России)
DeepSeek
Qwen
Алиса AI

2. Вставьте промпт (текст запроса) в новый чат:

Работай как системный аналитик с опытом более 10 лет.

Сгенерируй код для UML Sequence-диаграммы в формате PlantUML.

Интеграционный Use Case:
👉 <подставить ваше описание>

Требования к оформлению кода:
+ на каждый запрос — ответ;
+ обязательно делай бары активации;
+ брокер = обозначай как queue;
+ база данных = обозначай как database;
+ используйте alt/loop/opt, если необходимо.

Образец моего идеального кода на другой процесс, придерживайся этого стиля:
👉 <подставить ваш пример кода, или можно забрать пример PlantUML-кода из PDF документа к посту>


3. Отправьте запрос в чат и подождите до 1 минуты.

4. Вставьте полученный код в PlantUML редактор.


Готово! 🎉
AI сделал UML-диаграмму за вас.
Вставляйте в требования. Не забудьте сохранить код рядом с диаграммой для возможных изменений.




🎁 Бесплатный AI-бот для UML Sequence от GetAnalyst

Ссылка на AI-бот (под VPN для России)
Пример использования

В боте настроен продвинутый системный промпт, который поможет делать диаграммы идеальными.
Без регистрации и СМС, только в ChatGPT войти и готово 🤝



#ИнтеграцииGA #AI_for_analysts
Please open Telegram to view this post
VIEW IN TELEGRAM
22🔥12👍1
☀️ Летняя неделя знаний от GetAnalyst: скидка 25% на все материалы для самостоятельного обучения ☀️

Если вы всерьёз решили расти в системном анализе — начните с практики 😉

📌 До 24 июля — скидка 25%
на все материалы для самостоятельного обучения:
✔️ разборы задач с проектов
✔️ структурные подходы к анализу требований
✔️ чек-листы, инструменты, шаблоны
✔️ подготовка к собеседованиям и разбор рабочих задач

🎁 Промокод: LETO2026

👉 Выбрать материалы со скидкой

Темы:
▫️ Интеграции
▫️ REST API
▫️ Архитектура
▫️ БД и SQL, ER-диаграммы
▫️ Резюме и собеседования
▫️ Анализ требований
▫️ AI


Это не теория ради теории — это практическая база, которая формирует мышление системного аналитика и помогает действовать увереннее в рабочих проектах.

Формат для тех, кто предпочитает учиться самостоятельно 🙌


Вопросы? Пишите @getanalyst или info@getanalyst.ru 📩


📱 Tg | 💙 ВК | 💬 Max
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥85
UML_Sequence_Сценарий_диалога_с_AI_чатом_MedAssistGA_Исходный.puml
8.4 KB
🤖 Ещё один бесплатный AI-скилл от GetAnalyst — для создания UML Sequence-диаграмм 🤖

Пока кто-то продаёт AI-скиллы для аналитиков, я отдаю свои бесплатно 🙌


На этот раз — Skill для создания UML Sequence-диаграмм в PlantUML.

Я передала ему описание прямого сценария записи к врачу с AI-ассистентом через приложение MedAssistGA — и получила готовый каркас диаграммы:

✔️ участники процесса
✔️ последовательность запросов
✔️ ответы на запросы
✔️ взаимодействие с Backend и БД
✔️ бары активации
= готовый код PlantUML

На картинке я выделила ошибки, которые нашла при проверке. Но их оказалось всего 2.



Важно понимать:

👉 UML-диаграмма — это дополнение к текстовым требованиям, а не их замена.

Она вообще необязательна.

Но очень удобно, когда за несколько секунд можно получить визуальный каркас процесса, проверить последовательность шагов и приложить диаграмму к Use Case 🙌



Чтобы результат был максимально точным, AI нужно передавать полное описание процесса текстом или файлом:

▫️ основной сценарий
▫️ альтернативные сценарии
▫️ ошибки
▫️ участников
▫️ запросы и ответы к API
▫️ работу с БД и внешними системами

❗️ Чем полнее требования на входе — тем меньше ошибок и исправлений в диаграмме.

‼️ Если требований пока нет, то лучше сначала проработать их, и только потом переходить к UML.

Если передать только краткое описание процесса, AI всё равно может собрать нормальный каркас. Просто аналитику придётся больше дополнять и исправлять.



И да — результат AI нужно проверять.

Но проверить и поправить готовую диаграмму обычно намного быстрее, чем создавать её самостоятельно с пустого листа.



🛠 AI не отменяет работу аналитика. Он убирает часть рутины и ускоряет её в несколько раз.

Если вы уже умеете нормально ставить задачи AI — вы, скорее всего, давно делаете часть своей работы быстрее на 30-50%.

Если ещё нет — забирайте готовый Skill и начинайте с него!



👉 Бесплатный Skill от GetAnalyst для создания UML Sequence-диаграмм прикреплен к посту 📎

пример элементарного запроса к ИИ без сложного промпта, но с вызовом скилла
картинка и исходный код диаграммы для процесса записи к врачу через AI-чат



Связанные материалы:

🔗 Инструкция по установке скилла в ChatGPT Plus и Claude

🔗 Готовый бесплатный AI-агент по генерации UML Sequence (альтернатива skill)

🔗 Пример требований на AI-чат MedAssistGA для записи к врачу



#AI_for_analysts #ИнтеграцииGA #RestApiGA

📱 Tg | 💙 ВК | 💬 Max
Please open Telegram to view this post
VIEW IN TELEGRAM
25🔥9
А вам оплачивают ночные переработки? 😃
😁5711😢5
🔥 HTTP-методы в REST API — с самым актуальным обновлением 2026 по QUERY 🔥

GET, POST, PUT, PATCH и DELETE знают почти все.

Но в июне 2026 года появился ещё один стандартизированный метод — QUERY. Он закрывает сценарий сложного чтения данных, для которого раньше часто использовали POST.

Собрала актуальную шпаргалку по HTTP-методам на карточках к посту: назначение, Body, идемпотентность, кэширование и примеры запросов.


🩷 GET
Получение данных, используем для получения одного ресурса или списка ресурсов.

💚 POST
Используется для создания нового объекта или запуска асинхронной операции.

💛 QUERY
Предназначен для безопасного и идемпотентного получения данных с содержимым запроса в Body.
Новый HTTP-метод, стандартизированный в июне 2026 года в RFC 10008.
Подробнее

💜 PUT
Полная замена или создание ресурса.
В Body передаётся полное представление объекта, включая поля, которые не менялись.

💙 PATCH
Частичное изменение ресурса.
В Body передаются только изменяемые поля или операции изменения.

❤️ DELETE
Удаление ресурса.
Используется для физического или логического удаления.

🤍 TRACE, HEAD, OPTIONS, CONNECT
Также существуют.
Могут быть заменены GET-ом. Используются редко.
Очень маленький шанс встретить или применить на практике.


Дополнительно для повторения может пригодиться:
подкаст про идемпотентность и коммутативность в API


Сохраняйте, это самая актуальная шпаргалка по HTTP-методам на 2026 год 👌


#RestApiGA


📱 Tg | 💙 ВК | 💬 Max
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2084
☀️ Скидка 25% на все мини-курсы: летняя неделя знаний до 24 июля ☀️

Внутри не несколько видео на 30 минут, а целые мини-курсы по 6–12 занятий, каждое из которых от 2 до 4 часов разбора задач.

Например:

▫️ БД и SQL: продвинутый уровень
Это три отдельных больших проекта с нуля: маркетплейс, страховая компания, медицинская система. В каждом — путь от анализа требований и ER-диаграммы до реальной БД, рабочих SQL и настройку ИИ-агентов.

▫️ Интеграции
практика в Postman по REST, GraphQL, gRPC, WebSocket и отдельный разбор типичных ошибок в интеграционных задачах на реальных проектах.

▫️ Архитектура
Разбор конкретных задач: как спроектировать взаимодействие между микросервисами и как выбрать между хореографией и оркестрацией в сложном асинхронном бизнес-процессе.

И другие темы.


☀️ До 24 июля — всё это на 25% дешевле

🎁 Промокод: LETO2026
👉 Смотреть каталог материалов


Формат для тех, кто предпочитает учиться самостоятельно 🤝


Вопросы? Мы на связи: @getanalyst или info@getanalyst.ru 💬


📱 Tg | 💙 ВК | 💬 Max
Please open Telegram to view this post
VIEW IN TELEGRAM
3
⚠️ «Настроить кэширование» — плохое требование. Вот какие 3 уровня вы упустили ⚠️


Браузер, CDN, сервер — кэш может одновременно использоваться на всех трёх уровнях.

А в требованиях чаще всего фигурирует только заголовок Cache-Control где-то на бэкенде, будто остальных двух уровней не существует.



👉 Разбираемся, что за что отвечает:


1️⃣ Клиентский кэш: браузер или мобильное приложение

Браузер может хранить HTTP-ответ локально и повторно использовать его, пока он считается актуальным.

Заголовок Cache-Control от сервера определяет, как долго ответ остаётся свежим, а заголовок ETag позволяет проверить его актуальность через условный запрос с If-None-Match. Если ресурс не изменился, сервер может вернуть 304 Not Modified без повторной передачи тела ответа.


2️⃣ CDN / edge-кэш

CDN (Content Delivery Network) — это сеть распределённых серверов, расположенных ближе к пользователям.

Она хранит копии ответов и может отдавать их без повторного обращения к основному серверу системы (origin-серверу). Один сохранённый ответ при этом может использоваться для множества пользователей.

Здесь особенно важно определить:
▫️ можно ли хранить ответ в общем кэше: public, private, no-store;
▫️ как долго он должен храниться: s-maxage, Edge TTL или другие настройки CDN;
▫️ какие параметры, заголовки и cookies входят в cache key;
▫️ нужен ли заголовок Vary;
▫️ как обрабатываются авторизованные и персонализированные ответы.

При неправильной конфигурации CDN может отдать пользователю вариант ответа, сформированный для другого контекста. Поэтому одной фразы «закэшировать ответ» недостаточно.

Отдельно нужна стратегия обновления CDN-кэша: дождаться окончания TTL, выполнить purge/invalidation или использовать версионирование URL.



3️⃣ Внутренний кэш приложения: Redis, in-memory и другие решения

Это временное хранилище данных внутри серверной части системы (Backend).

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

Это ускоряет работу приложения и снижает нагрузку на другие компоненты.

Но возникает риск: данные в базе уже изменились, а в кэше всё ещё хранится старая версия. Тогда пользователь продолжит видеть неактуальную информацию.

Поэтому в требованиях важно определить:

▫️ какие данные можно хранить в кэше;
▫️ как долго они могут там находиться;
▫️ после каких изменений кэш нужно обновить или очистить;
▫️ насколько допустимо показывать устаревшие данные;
▫️ что должна делать система, если кэш недоступен.



📌 Фраза «настроить кэширование» без указания уровня, цели и требований к актуальности данных слишком неоднозначна.

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


👉 Аналитику важно зафиксировать:

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

Иначе кэширование может не ускорить продукт, а стать источником устаревших данных, утечек и трудноуловимых ошибок.


А в ваших требованиях кэширование описано одной строчкой или отдельно для каждого уровня?


#RestApiGA #АрхитектураGA


📱 Tg | 💙 ВК | 💬 Max
Please open Telegram to view this post
VIEW IN TELEGRAM
17🔥9👍3
📌 Шпаргалка по свойствам HTTP-методов: безопасность, идемпотентность, кэшируемость и тело JSON 📌

В англоязычной Wikipedia уже обновили таблицу свойств HTTP-методов: в ней появился новый метод QUERY, описанный в RFC 10008.
https://en.wikipedia.org/wiki/HTTP#Request_methods

Эта таблица — моя вечная шпаргалка для подготовки к собеседованиям.


Свойства методов из таблицы 👇


📤 Запрос может содержать тело — Request payload
Показывает, может ли запрос содержать данные в body.
Для POST, PUT, PATCH и QUERY тело является обычной частью запроса.
Для GET, HEAD и DELETE тело технически может быть передано, но его общая семантика стандартом не определена. Более того, некоторые серверы и промежуточные компоненты могут отклонить такой запрос.



📥 Ответ может содержать тело — Response payload
Показывает, может ли сервер вернуть данные в body.
Например, HEAD возвращает только заголовки.
У ответов 204 No Content и 304 Not Modified тела быть не должно.



🛡 Safe — безопасный
Метод считается безопасным, если клиент не запрашивает изменение состояния целевого ресурса.
Например:
▫️ GET получает данные
▫️ HEAD получает заголовки
▫️ QUERY получает данные
При этом логирование, сбор статистики и другие внутренние побочные действия сервера не делают метод небезопасным.



🔁 Idempotent — идемпотентный
Несколько одинаковых запросов должны иметь тот же ожидаемый эффект, что и один.
Например, первый DELETE может вернуть 204, а повторный — 404, но ресурс в обоих случаях удалён.
POST и PATCH по умолчанию не считаются идемпотентными.



🗄 Cacheable — кэшируемый
Ответ можно сохранить и повторно использовать по правилам HTTP-кэширования.
Это зависит от:
▫️ Cache-Control
▫️ клиента и сервера
▫️ CDN и прокси
▫️ реализации метода
Даже POST и PATCH могут кэшироваться при выполнении специальных условий. Спорные случаи лучше проверять по RFC.



Сохраняйте, если готовитесь к собеседованиям или изучаете HTTP и REST API 💙

#RestApiGA


📱 Tg | 💙 ВК | 💬 Max
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1510
🔴 "no-cache" не означает «не кэшировать»: 4 директивы заголовка Cache-Control, которые важно различать 🔴

Посмотрите на заголовок (header):

Cache-Control: no-cache


Кажется, что ответ нельзя сохранить в кэше.

Но на самом деле no-cache означает другое.



Разбираемся подробно, чем отличаются основные директивы Cache-Control 👇



1️⃣ no-cache
Сохранить можно, использовать без проверки нельзя.

Cache-Control: no-cache
ETag: "product-v7"


Клиент может сохранить ответ.
Но при следующем обращении он должен спросить у сервера «Версия product-v7 всё ещё актуальна?»

Если данные не изменились, сервер вернёт:

304 Not Modified


И клиент использует сохранённый ответ.


2️⃣ no-store
Сохранять нельзя вообще.

Cache-Control: no-store


Запрос и ответ не должны сохраняться в HTTP-кэше.

Обычно используется для чувствительных данных:
▫️ токенов
▫️ одноразовых кодов
▫️ платёжной информации
▫️ результатов аутентификации


3️⃣ private
Хранить можно только в персональном кэше.

Cache-Control: private, max-age=60


Ответ может сохранить браузер конкретного пользователя.

Но общий кэш — например, CDN или Proxy — не должен сохранять его для других клиентов.

Подходит для персонализированных данных:

GET /profile
GET /orders
GET /recommendations



4️⃣ public
Ответ можно хранить в общем кэше

Cache-Control: public, max-age=300


Ответ могут сохранять не только браузеры, но и общие кэши:
▫️ CDN
▫️ Reverse Proxy
▫️ API Gateway

Подходит для публичных данных:
▫️ справочников
▫️ статей
▫️ общего каталога
▫️ публичной конфигурации



Что должен определить системный аналитик
при разработке требований к кэшу, чтобы Cache-Control помогал, а не вредил системе:
:
можно ли вообще сохранять ответ
допустим ли кэш только на устройстве пользователя
можно ли использовать общий кэш
нужна ли проверка актуальности перед использованием
содержит ли ответ персональные или чувствительные данные


Cache-Control определяет не только скорость работы API.
От него зависят актуальность и безопасность данных 👌

#RestApiGA
👍206