GetAnalyst - Навыки • Системный анализ • Бизнес-анализ
19.6K subscribers
2.09K photos
75 videos
207 files
1.19K links
Разбор задач на проектирование систем 🚀 Канал для системных аналитиков, бизнес-аналитиков, тестировщиков и менеджеров проектов

Админ @getanalyst
Сайт https://getanalyst.ru
Чат t.me/getanalystchat
Начинающим в IT @getanalyststart

РКН №5013005196
Download Telegram
🟢🟠🟡 Инструменты системного аналитика для тестирования в API 🟢🟠🟡

Проверка API — важная часть работы системного аналитика, особенно при интеграции систем и сервисов, при работе в Backend-команде.

Не всегда API-документация актуальна и отражает все сценарии работы, которые будут использованы в интеграции. Особенно это касается поведения внешней системы при ошибках.

👉 Системному аналитику необходимо убедиться, что API внешней системы будет работать именно так, как описано в документации (если она есть, а если нет - то составить), чтобы затем предоставить информацию разработчикам.

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

Также этап тестирования помогает понимать работу API, чтобы грамотно описывать интеграционные сценарии.

Список инструментов, которые помогают системным аналитикам в тестировании API:

🟠 Postman
🟡 SoapUI
🟣 Insomnia
🟢 Swagger

Подробности в картинках к посту ☝️

#ИнтеграцииGA
🔥24👍157
GetAnalyst_Postman_Практическое_руководство_с_примером_DaData.pdf
9.5 MB
🔥 Новое практическое руководство по Postman - с нуля до результатов 🔥

Один из первых и основных шагов при работе систеных аналитиков с задачами на интеграции — проверка API внешней системы.

Основной инструмент для тестирования и документирования API: Postman.

Если вы еще не использовали его в работе, хотите освоить или получить дополнительную практику, то я подготовила подробную инструкцию с картинками для вас 🧡

В ней вы найдете следующие API DaData:

▫️ Разбор адреса из строки («стандартизация»)
▫️ Автодополнение при вводе («подсказки»)
▫️ Геокодирование

Эти методы нужно было исследовать для работы с интеграционной задачей на структурирование адреса в проекте #ShipEasyGA.

Больше всех подходит "Автодополнение при вводе («подсказки»)". Его и будем использовать для дальнейшей работы 🙂

#ИнтеграцииGA
33🔥18❤‍🔥6👍6
👉 Пример интеграционного Use Case - технические детали в задачах на интеграции 👉

В одном из предыдущих постов я показала пример Use Case заполнения адреса с использованием внешней системы DaData, без технических деталей. Его пока нельзя передавать в разработку, так как в нем отсутствуют требования к вызываемым методам API внешних систем.



Вопрос, на который я хочу ответить в этом посте:
Чем отличается обычный Use Case от интеграционного?


1. В интеграционных сценариях прописывают вызовы API-методов нашего Backend и API внешней системы.

2. Есть обработка ошибок, связанная с проблемами на стороне внешней системы (в том числе ее недоступность, длительное ожидание ответов от нее).



Для полной постановки задачи нужно будет также сделать:
- Описать маппинг данных: БД, наш UI, наш API, API внешней системы.
- Выделить задачи для Frontend и Backend разработчиков.

В картинках к посту выделила места в Use Case, которые добавила после исследования API внешней системы через Postman☝️☝️☝️

#ИнтеграцииGA
32👍7❤‍🔥3👎2
Предзапись на практическую программу Интеграции завершается сегодня

🎓 Старт с 25 сентября
🎁 До 19 сентября скидка + доп. курс по БД в подарок

🔗 Подробности и регистрация

На проекте удаётся прожить самый настоящий опыт, со всеми “подводными камнями”, которые встречаются в реальной работе


Участников ждёт:
◽️ 10 живых онлайн-встреч
◽️ Работа над ОДНИМ проектом в течение всей программы
◽️ Разбор всех этапов проектирования интеграций от А до Я на его примере
◽️ Возможность задать вопросы и получить обратную связь от экспертов сразу

Ключевые темы:
🔸 определение точек интеграций в сложной системе,
🔸 REST API, GraphQL, SOAP API и другие способы интеграции систем,
🔸 работа в Postman,
🔸 архитектура систем, нотация C4,
🔸 интеграционные Use Case, нотация UML,
🔸 маппинг данных,
🔹 ведение документации в Confluence,
🔹 создание и распределение задач на разработчиков.

Вопросы по обучению можно задать
@getanalyst или заполнить анкету предзаписи на сайте. Мы свяжемся с вами, и проконсультируем по вопросам и актуальности программы для вас.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥32
Если меня спросят сколько диаграмм есть в разработке, и сколько я реально применяю на практике как системный аналитик, то числа будут сильно отличаться.

На практике я использую всего несколько диаграмм:

💎 UML Sequence - для описания интеграционных сценариев
💎 ER-диаграмма - для проектирования БД, не путать с UML-диаграммой классов
💎 C4 - для проектирования архитектуры (альтернатива - ArchiMate)
💎 BPMN - для описания бизнес-процессов
💎 Диаграмма состояний (статусная модель) - из нотации UML, но не всегда строго по ней делаю

Всё остальное не использую, либо использовала 1-2 раза за всё время после университета.

Когда начала писать этот пост, то хотела перейти к рассказу о UML Sequence, но поняла, что у меня есть важный вопрос к вам.

Коллеги, проголосуйте за диаграммы, которые вы используете в работе, пожалуйста.

И поделитесь в комментариях, если чего-то не учла, и вы этим реально сейчас пользуетесь на работе 👇👇👇
❤‍🔥18👍84
Есть такое выражение: оказался в нужное время в нужном месте 🙌

Но согласитесь, важно не только оказаться в нужном месте, но и ещё и постараться взять максимум от этого.

Всю мою жизнь, когда я понимала, что сейчас в НУЖНОМ месте, старалась пользоваться шансом и получить от этой возможности максимум пользы.

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

В работе всегда “донимаю” более опытных коллег, потому что мне важно дойти до сути и разобраться. Я не выношу “пробелы” в понимании. И да, я дотошная 😅

Если в моменте я что-то не понимаю - будь то учеба или работа, то это знак, что именно сейчас я нахожусь в нужном для меня месте и могу воспользоваться ситуацией: узнать новое, подтвердить или опровергнуть своё мнение.

👉 Боюсь ли я показаться тупой?
Перед клиентами, которые излагают суть их бизнеса, о котором я ничего не знаю.
Или на конференции с сотнями человек в зале, когда задаю вопрос в микрофон, который может оказаться простым?

Уже нет.

Но эта уверенность стоила мне долгих лет:
Лучше вовремя спросить и получить информацию за 5 минут, чем потом часами безуспешно разбираться самой.

Поэтому предлагаю и вам во время встреч GetAnalyst побыть немного занудами 😎

В хорошем смысле!

✔️ Задавайте вопросы мне и спикерам команды
✔️ Дискутируйте в комментариях
✔️ Сомневайтесь и опровергайте
✔️ Подтверждайте своими примерами
✔️ Учитесь уверенно себя вести на публике

Это путь к успеху!

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

Мы здесь, чтобы помочь. Все ваши вопросы важны! Вообще все! ❤️

Всегда можно идти длинным путём "я сам разберусь". Упускать возможности даже в нужном месте и в нужное время.

А можно воспользоваться шансом и сделать простой шаг: задать вопрос и показать себя. И помните, ответ на ваш вопрос может помочь не только вам, но и сотням других людей 🙌
36👍176👏3😴1
💥 UML-Sequence: основная диаграмма для Cистемных аналитиков 💥

Интеграционный сценарий написан. Но иногда в нем много текста. Слишком много текста 😁

А разработчики много читать не любят. И вообще, для быстрого понимания “о чем тут вообще” помогают картинки и схемы. Особенно, когда речь идет о сложных интеграционных сценариях.

➡️ Прекрасным дополнением к интеграционному Use Case служит UML диаграмма последовательности. Она же UML-Sequence.

UML-Sequence
– это тип диаграммы, который показывает, как компоненты в системе взаимодействуют друг с другом в хронологическом порядке.


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

Она может являться как дополнением, так и заменой текстового описания. Но текст всё же лучше держать рядом с ней, как показазывает опыт.

Основные инструменты для построения UML-диаграммы:
🔸 Draw.io (diagrams.net)
🔸 PlantUML
🔸 Microsoft Visio (аналог Draw.io)
🔸 Lucidchart (аналог Draw.io)
🔸 Enterprise Architect


🖼 На картинке к посту UML-Sequence диаграмма процесса регистрации пользователя.

Попробуйте прочитать её и обратить внимание на следующие моменты:

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


👉 2. Не хватает технических деталей.
В какие таблицы БД записывать данные, как именно проверяется формат имени, email и телефона, по каким правилам генерируется ссылка на подтверждение УЗ (учетной записи клиента).


👉 3. Стрелки вправо всегда действия (глаголы), а пунктирные стрелки влево - данные или сообщения о результатах.
Это правило построения UML Sequence.


Диаграмма создана в Draw.io.

#ИнтеграцииGA
33👍16❤‍🔥10
GetAnalyst_ShipEasyGA_Структурирование_адреса_через_DaData_drawio.png
181.9 KB
💥 Пример UML-Sequence для проекта #ShipEasyGA 💥

Для системы #ShipEasyGA, интеграционный сценарий работы со структурированием адреса охватывает взаимодействие между:
◽️ Frontend: iOS / Android / Web,
◽️ Backend ShipEasyGA
◽️ БД
◽️ DaData


Применение UML-Sequence диаграммы для него позволяет наглядно показать:


🔹 Как и когда пользователь инициирует запрос на Frontend

🔹 Последовательность обработки запроса между фронтендом, бэкендом ShipEasyGA, БД и сервисом DaData

🔹 Наличие сложной логики: обработку и очистку результата от DaData от лишней информации, поиск ближайших пунктов курьерской службы.

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

🖼 Диаграмма UML-Sequence для #ShipEasyGA прикреплена к посту.


❗️ P.S. Стоит обратить внимание, что я описала этот сценарий структурирования адреса отдельно от основного процесса заполнения данных об Отправлении и Получении посылки. И UML Sequence рисую отдельно.

Так сделано, по нескольким причинам:

1. Я делаю эту задачу в готовой системе, когда пользователи вводят данные без структурирования адресов и они проверяются вручную. Это отдельная доработка, новый сценарий.

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

3. UML-диаграмма на эту интеграцию будет отдельная, т.к. в основном процессе оформления заказа курьера и так будет много шагов. Это может привести к нечитаемости и усложнению диаграммы.

Диаграмма - дополнение к тексту сценария, чтобы лучше понять процесс.

Лучше делать её проще, понятнее и читаемее. Убирать с неё лишние детали.

Никто не любит много читать. Мы не должны создать дополнительную сложность в изучении постановки задачи 🙂

#ИнтеграцииGA
Please open Telegram to view this post
VIEW IN TELEGRAM
👍179🔥5