🍀BitBitGo🍀 Системный Анализ
3.22K subscribers
219 photos
154 videos
112 links
Курс «Системный анализ»
https://bitbitgo.by/
Пишем про системный анализ.
Поможем стартануть в карьере IT. Присоединяйся!
Download Telegram
№19 категория вопросов: #BA #REQUIREMENTS
🔤🔤🔤🔤🔤🔤🔤🔤🔤🔤🔤
(несёт рекомендательный характер)
Junior (0–7 баллов)
Рекомендация — изучить основы моделирования, сбора требований и работы с REST API.
Middle (8–14 балл)
Рекомендация — развивать навыки проектирования систем, интеграции и работы с данными.
Senior (15–19 балл)
Рекомендация — совершенствоваться в стратегиях, архитектурных подходах и работе с бизнес-процессами.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍2
🍀BitBitGo🍀 Системный Анализ pinned «№1 категория вопросов: #BA #REQUIREMENTS»
📚 Типы баз данных и их применение: что выбрать?

Выбор базы данных — ключевой этап проектирования любой системы. Каждый тип имеет свои особенности и лучше всего подходит для определённых задач:

1️⃣ Реляционные базы данных
Идеальны для структурированных данных с чёткими связями (таблицы, ключи).
Популярные СУБД: MySQL, PostgreSQL, Oracle.

2️⃣ Объектно-реляционные базы данных
Комбинируют преимущества реляционных и объектно-ориентированных подходов.
Популярные СУБД: PostgreSQL, IBM Db2.

3️⃣ NoSQL базы данных (нереляционные)
Отличный выбор для гибких схем и работы с большими данными.
Типы NoSQL:
• Документоориентированные (MongoDB, Couchbase).
• Колоночные (Apache Cassandra, HBase).
• Графовые (Neo4j).
• Ключ-значение (Redis).

4️⃣ Колоночные базы данных
Оптимальны для анализа больших объёмов данных с высокой скоростью чтения.
Популярные СУБД: Apache Cassandra, ClickHouse.

5️⃣ Текстовые базы данных
Для поиска по тексту и анализа.
Популярные СУБД: Elasticsearch.

💡 Как выбрать?
Реляционные подходят для CRM, ERP.
Документоориентированные — для гибких приложений, как чаты.
Колоночные — для аналитики.
Графовые — для социальных сетей.

🗄 #DBMS
2👍1🔥1👌1
This media is not supported in your browser
VIEW IN TELEGRAM
Вы тоже готовы на всё ради своих?)😉
😁9👍1
📚 Как организованы реляционные базы данных и зачем нужны правила проектирования

🔍 Принципы реляционных баз данных
Все данные хранятся в виде таблиц, где строки — это записи, а столбцы — атрибуты. Для каждой записи в таблице обязателен уникальный идентификатор — первичный ключ.

📋 Типы данных
Каждый столбец имеет строгий тип: например, INTEGER для чисел, VARCHAR для текста, DATE для дат. Это обеспечивает целостность данных.

♻️ Нормализация
Процесс разбиения данных на таблицы, чтобы устранить дублирование и минимизировать аномалии. Основные формы:
1NF: атомарные значения в столбцах.
2NF: отсутствие частичных зависимостей.
3NF: устранение транзитивных зависимостей.

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

NULL и пустые значения
NULL означает отсутствие значения, тогда как пустое значение может быть строкой "" или числом 0.

Ограничения
Чтобы гарантировать целостность данных:
NOT NULL: поле не может быть пустым.
UNIQUE: обеспечивает уникальность значений.
PRIMARY KEY: уникальный идентификатор записи.
FOREIGN KEY: связь с другой таблицей.
CHECK: проверка условия.
DEFAULT: значение по умолчанию.
INDEX: ускоряет поиск.
AUTO_INCREMENT: автоматическое увеличение значения.

🗄 #DBMS
👍2
Зачем системному аналитику взаимодействовать с UI/UX дизайнером

Системный аналитик и UX/UI дизайнер работают в тесной связке, чтобы создать продукт, сочетающий в себе удобство для пользователя и техническую реализацию. Взаимодействие этих ролей помогает:

🔄 Согласовывать требования. Аналитик передаёт дизайнеру бизнес-требования и ограничения системы, а дизайнер адаптирует их в понятный интерфейс.

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

🧩 Создавать комфортный пользовательский опыт. Дизайнер формирует интерфейс, а аналитик тестирует его на соответствие функциональным требованиям.

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

Эффективное взаимодействие аналитика и дизайнера делает процесс разработки более слаженным и результативным, а продукт — удобным и функциональным.

📚 #OTHER
👍52🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Как нужно разговаривать с технарями
🤣81🔥1
📡 Pull и Push модели: простыми словами

Когда разные системы или приложения должны обмениваться данными, используется одна из двух моделей: pull или push. Они определяют, кто инициирует передачу данных — клиент (pull) или поставщик (push).

🔄 Pull-модель

Представьте, что вы голодны и хотите поесть. Вы идёте в магазин, чтобы купить продукты. Это и есть pull-модель: вы сами решаете, когда и что вам нужно, и отправляетесь за этим.

Как работает?
Клиент (например, приложение или система) отправляет запрос и запрашивает данные, когда это нужно.

Пример:
Вы обновляете прогноз погоды в приложении вручную.

Плюсы:
• Клиент сам контролирует, когда нужны данные.
• Простая реализация.

Минусы:
• Если делать запросы слишком часто, сервер перегружается.
• Если не запросить данные вовремя, вы их не получите.

🔗 #INTEGRATION
Please open Telegram to view this post
VIEW IN TELEGRAM
3
📤 Push-модель

Теперь представьте, что еду доставляют прямо к вам домой, как в случае с доставкой. Это push-модель: поставщик (сервер) сам решает, когда отправить вам данные, исходя из договорённости.

Как работает?
Сервер отправляет данные клиенту автоматически, когда они становятся доступны.

Пример:
Уведомления о новых сообщениях в мессенджерах или автоматическое обновление курсов валют.

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

Минусы:
• Более сложная реализация.
• Клиент полностью зависит от поставщика данных.

Когда что использовать?

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

🔗 #INTEGRATION
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
🌐 Принципы REST архитектуры: как строить эффективные API

REST — это один из самых популярных подходов к проектированию веб-сервисов. Чтобы API были простыми, гибкими и эффективными, нужно соблюдать ключевые принципы REST:

🔹 Stateless (без состояния)
Сервер не хранит информацию о состоянии клиента между запросами. Каждый запрос содержит всю необходимую информацию для обработки.

🔹 Resource Identification (идентификация ресурсов)
Каждый ресурс должен иметь уникальный URL, например: /api/users/123.

🔹 Uniform Interface (единый интерфейс)
Взаимодействие между клиентом и сервером стандартизировано. Используются методы:
GET — получить ресурс
POST — создать ресурс
PUT — обновить ресурс
DELETE — удалить ресурс

🔹 Cacheable (кэшируемость)
Ответы сервера могут кэшироваться на клиенте для повышения производительности и уменьшения нагрузки.

🔹 Layered System (многоуровневость)
Архитектура может быть разделена на слои, чтобы клиент не зависел от внутренней реализации сервера.

🔹 Code on Demand (исполняемый код по требованию)
Дополнительно сервер может передавать исполняемый код (например, скрипты) для выполнения на стороне клиента.

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

🔗 #INTEGRATION
👍3👏3🔥1
🌐 Что такое HTTP-запросы и как они работают?

Каждый раз, когда вы вводите URL в браузере, происходит магия — ваше устройство отправляет HTTP-запрос серверу. Это сообщение может запрашивать данные, например HTML-страницу, или передавать информацию. HTTP — это основной протокол для обмена данными в интернете, определяющий, как устройства должны общаться.

🔍 Как устроен HTTP-запрос?
HTTP-запросы состоят из трёх основных частей:
1️⃣ Стартовая строка. Указывает метод (например, GET или POST), URI и версию протокола.
2️⃣ Заголовки. Это параметры, описывающие запрос (например, Host, Content-Type, Content-Length).
3️⃣ Тело сообщения. Используется для передачи данных, например при отправке формы через POST.

Пример запроса:
GET /blog/examplepage HTTP/1.1  
Host: example.com



⚙️ Методы HTTP-запросов
Каждый метод описывает цель запроса:
GET. Запрашивает ресурс (например, страницу).
POST. Передаёт данные в теле запроса.
PUT. Создаёт или заменяет ресурс.
DELETE. Удаляет ресурс.
OPTIONS. Возвращает методы, поддерживаемые сервером.

🔗 #OTHER
👍4
🌐 Методы запросов и коды состояния

⚙️ Методы HTTP-запросов
Каждый метод описывает цель запроса:
GET. Запрашивает ресурс (например, страницу).
POST. Передаёт данные в теле запроса.
PUT. Создаёт или заменяет ресурс.
DELETE. Удаляет ресурс.
OPTIONS. Возвращает методы, поддерживаемые сервером.


📋 Коды состояния HTTP
Сервер отвечает трёхзначным кодом, показывающим статус запроса:
200 OK. Запрос успешен.
404 Not Found. Ресурс не найден.
500 Internal Server Error. Внутренняя ошибка сервера.

Коды делятся на классы:
• 1xx — информационные,
• 2xx — успешные,
• 3xx — перенаправления,
• 4xx — ошибки клиента,
• 5xx — ошибки сервера.

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


🔗 #OTHER
👍31
🗺 Что такое Customer Journey Map (CJM) и зачем она нужна?

Customer Journey Map (CJM) — это визуальная карта пути клиента, которая отражает весь его опыт взаимодействия с продуктом или услугой. Это мощный инструмент для анализа пользовательского поведения и улучшения UX/UI.

🔍 Зачем нужна CJM?
CJM помогает понять, как пользователь взаимодействует с вашим продуктом: от первого касания до финальной точки. Выявляя болевые точки, моменты радости и проблемные зоны, вы можете улучшить каждый этап пути клиента.

💡 Основные этапы создания CJM:
1️⃣ Сбор данных. Исследуйте свою целевую аудиторию: проведите интервью, опросы и анализируйте пользовательские данные.
2️⃣ Определение точек взаимодействия. Укажите, где клиент взаимодействует с продуктом: веб-сайт, приложение, офлайн-магазин.
3️⃣ Идентификация болевых точек. Найдите, где пользователи сталкиваются с проблемами: сложная регистрация, непонятный интерфейс, долгое ожидание.
4️⃣ Создание карты. Визуализируйте путь клиента в виде графика или схемы. Укажите, как клиент чувствует себя на каждом этапе.
5️⃣ Поиск решений. Разработайте шаги для устранения проблем и улучшения опыта.

🎯 Где используется CJM?
• В проектировании интерфейсов и UX.
• При создании стратегий повышения лояльности клиентов.
• Для анализа маркетинговых кампаний.
• При проектировании новых продуктов.

📊 Пример простого CJM:
Представьте интернет-магазин. Клиент ищет товар, добавляет его в корзину, оплачивает и ждёт доставку. Если на этапе оплаты возникают сложности, клиент может уйти. CJM поможет выявить эту проблему и устранить её.

🔗 #OTHER
1👍1🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Ждём чистосердечные признания в комментариях😂
🤣10🙈41
🚀 Теперь мы в Instagram! 📲

Всё, что можно сказать в двух словах о системном анализе и показать в картинках, теперь в нашем аккаунте bitbitgo.by

Подписывайся!
👍2
💼 Инструменты для интеграции систем

Современные компании используют сложные архитектуры, где взаимодействуют десятки и даже сотни систем. Для их интеграции применяются ESB, MOM и MQ.

🔗 ESB (Enterprise Service Bus)
Сервисная шина предприятия, которая объединяет разные системы и управляет их взаимодействием. Она обеспечивает:
• Маршрутизацию данных
• Преобразование форматов
• Оркестрацию процессов

📨 MOM (Message-oriented Middleware)
ПО, ориентированное на обмен сообщениями в распределённых системах. MOM делает передачу данных между приложениями асинхронной, устраняя необходимость прямой связи между ними.

📬 MQ (Message Queue)
Очередь сообщений, обеспечивающая гарантированную доставку данных между отправителем и получателем. MQ позволяет реализовать две модели:
• Очередь (каждое сообщение обрабатывает один потребитель)
• Топик (издатель отправляет сообщение всем подписчикам).


🔗 #BROKER
🆚 В чём разница между ключевыми инструментами ESB vs MQ vs ETL?

🔄 Отличия ESB и MQ:
• MQ — это очередь сообщений, гарантирующая доставку данных от отправителя к получателю.
• ESB включает функции MQ, но предоставляет дополнительные возможности, такие как маршрутизация, преобразование данных и оркестрация процессов. ESB — это платформа для интеграции систем.

📊 Отличия ESB и ETL:
• ESB работает в режиме реального времени, передавая данные между системами и управляя их взаимодействием.
• ETL (Extract, Transform, Load) — инструмент для извлечения, преобразования и загрузки данных в хранилище для аналитики.


🔗 #BROKER
👍2