Telegram Web Link
​​Алоха! Сегодня продолжаем разбирать вопросы, которые любят задавать на собеседовании на роль BA/SA и поговорим на тему интеграции и проектирования:

#вопросыссобеседования | @ba_and_sa

Часть 19:

📍Вопрос 1: Что такое брокеры сообщений? Приведи пример

Краткий ответ:
Брокеры сообщений
- это программные компоненты, которые используются для обмена информацией между различными приложениями или сервисами. Они работают как посредники, принимая сообщения от одного приложения и передавая их другому.

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

Примером брокера сообщений является
- Apache Kafka
- RabbitMQ
- Redis
Они позволяют разным компонентам системы обмениваться информацией без необходимости знать друг о друге напрямую.

📎Материалы по теме:
- Брокеры сообщений - что это, из чего состоят, плюсы и минусы: сравниваем APACHE KAFKA, REDIS и RABBITMQ
- Message broker per service

📍Вопрос 2: Что такое корпоративная шина? Приведи пример

Краткий ответ:
Корпоративная сервисная шина (ESB) – это архитектурный паттерн в информационных технологиях, который представляет собой программное обеспечение, обеспечивающее интеграцию различных систем и приложений внутри компании. ESB позволяет легко связывать и обмениваться данными между разными сервисами, приложениями и устройствами, что облегчает работу и повышает эффективность бизнес-процессов.

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

Примеры ESB:
- Mule ESB - одна из самых популярных открытых платформ для интеграции приложений и систем.

- Apache ServiceMix - еще одна популярная открытая платформа, основанная на Apache Camel, Apache ActiveMQ и Apache CXF. ServiceMix предоставляет решения для интеграции, маршрутизации и обмена данными между различными системами.

- IBM Integration Bus - универсальная платформа для интеграции различных систем и приложений в предприятии.

📎Материалы по теме:
-
ESB (Корпоративная сервисная шина)
- Разработка сервисной шины предприятия (ESB)

📍Вопрос 3: Чем брокер сообщений отличается от корпоративной шины?

Краткий ответ:
Брокеры сообщений и корпоративные сервисные шины (ESB) - это два различных подхода к интеграции систем в предприятии. Вот основные различия между ними:
1. Назначение:
- Брокер сообщений обеспечивает асинхронную коммуникацию между различными компонентами системы путем пересылки сообщений через посредника (брокера) без прямого взаимодействия компонентов.
- Корпоративная сервисная шина, с другой стороны, предоставляет интегрированную платформу для создания, управления и контроля интеграционных процессов и приложений в предприятии.

2. Архитектура:
- Брокер сообщений имеет типичную централизованную архитектуру, где все сообщения проходят через брокера перед доставкой получателю.
- Корпоративная сервисная шина, в свою очередь, использует распределенную архитектуру, позволяющую создавать сложные интеграционные процессы и маршрутизировать сообщения между различными системами.

3. Функциональность:
- Брокер сообщений прежде всего ориентирован на передачу и обработку сообщений, не предоставляя большого количества инструментов для обработки данных и выполнения бизнес-логики.
- Корпоративная сервисная шина обладает обширным набором функций, таких как маршрутизация, преобразование сообщений, мониторинг и управление интеграционными процессами.

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


Источник: @ba_and_sa

‼️Предыдущие части смотрите по #собеседование #вопросыссобеседования
Процесс перехода с монолитиной архитектуры на микросервсную

Перейти | BA|SA
​​Алоха! Недавно выкладывала материал на тему «Системное проектирование или System Design», и решила затронуть данную тему еще раз, и обсудить ее со стороны БА/СА.

Для начала немного теории «Системное проектирование / дизайн системы / System Design» - это процесс создания и описания архитектуры сложных программных, аппаратных или информационных систем, учитывая их требования, характеристики и взаимодействия компонентов. Это важный этап разработки любого IT-проекта, который позволяет инженерам создать эффективную, масштабируемую и надежную систему.

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

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

Давайте рассмотрим конкретный пример участия в системном проектировании бизнес/системным аналитиком на практике, исходя из моего опыта:

❗️Представим ситуацию, когда крупная торговая компания с множеством торговых точек решила запустить онлайн-платформу для продажи своих товаров или услуг на заказ. В этом проекте бизнес/системный аналитик (далее - аналитик) принимает активное участие, занимаясь анализом бизнес-требований, разработкой технических спецификаций и созданием архитектуры системы (вместе с архитектором)

В рамках данного проекта системному аналитику необходимо выполнить следующие задачи:

1. Собрать и проанализировать требования бизнеса: аналитик провел встречи с заказчиками, выявил их потребности и преобразовал их в технические требования.

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

На основании собранных данных и разработанных спецификаций идет системное проектирование ⬇️

3. Создать архитектуру системы: аналитик разработал архитектурную модель онлайн-платформы, определил основные компоненты системы, их взаимосвязи и данные, которые будут передаваться между компонентами (командная работа с архитектором)

4. Создать дизайн: аналитик сам либо с дизайнерами разрабатывает макеты платформы с детальным описанием

5. Участие в выборе технических решений: аналитик принимал участие в выборе технологий, инструментов и платформ для реализации проекта, учитывая технические требования и возможности компании (командная работа с архитектором и разработчиками)

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

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

Это была идеальная картина мира 🙈 я не описывала риски, нюансы, трудозатраты, и тд

P.s. Данную тему почти всегда спрашивают на собесах, будьте к этому готовы!!))

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

📎 Что такое компоненты системного проектирования
📎 Что такое System Design
📎 System Design. Общие принцип прохождения интервью по проектированию ИТ-систем

Источник @ba_and_sa
2025/07/06 23:36:25
Back to Top
HTML Embed Code: