Найти в Дзене
GraphQL: Мощный инструмент или сложная абстракция? Взгляд системного аналитика
В последние годы GraphQL всё чаще становится центром обсуждений в архитектурных дискуссиях. Что началось как внутреннее решение Facebook для устранения болей их мобильных приложений, сегодня используется такими гигантами, как GitHub, Shopify и Netflix. GraphQL позиционируется как эволюционный шаг после REST — более гибкий, точный и ориентированный на клиента. Но как системный аналитик, я вижу не только преимущества, но и серьёзные компромиссы, которые нужно учитывать при выборе технологии. В этой...
1 месяц назад
Методология проектирования API: анализ подхода Майка Амундсена (2014) и его актуальность сегодня
Статья Майка Амундсена «7 шагов проектирования API», опубликованная в 2014 году, предлагает структурированный подход к созданию интерфейсов. Хотя за прошедшие годы инструменты и стандарты эволюционировали, некоторые принципы методологии остаются полезными. При этом ряд рекомендаций требует корректировки с учётом современных практик. Разберём ключевые этапы и их применимость в 2024 году. Первый шаг предполагает сбор всех данных, необходимых клиентскому приложению для взаимодействия с API. Эти элементы (названия полей, статусы, параметры) формируют «словарь данных» с точки зрения клиента...
1 месяц назад
SOAP: когда стандарты важнее скорости
В мире интеграции информационных систем, где данные должны перемещаться между разнородными платформами, протоколы обмена играют ключевую роль. Одним из первых и наиболее строгих подходов к межсервисному взаимодействию стал SOAP (Simple Object Access Protocol) — протокол удалённого вызова процедур, основанный на XML. Разработанный в конце 1990-х компанией Microsoft и позже стандартизированный W3C, SOAP долгое время был «золотым стандартом» для корпоративных интеграций. Несмотря на то что сегодня его...
1 месяц назад
REST: принципы, архитектура и роль в проектировании современных систем
REST (Representational State Transfer) — это архитектурный стиль для создания масштабируемых и гибких веб-сервисов. Этот термин впервые был использован Роем Филдингом в его диссертации 2000 года, где он описал REST как подход, позволяющий использовать стандартные протоколы, такие как HTTP, для создания распределённых систем. Основная идея REST — представление ресурсов (данных, объектов) через унифицированные интерфейсы, что упрощает взаимодействие между клиентами и серверами. В отличие от строгих стандартов вроде SOAP, REST не регламентирует детали реализации, а предлагает общие принципы...
1 месяц назад
API: Типы и практика глазами системного аналитика
В мире современной разработки фраза "интеграция через API" звучит так же часто, как "сделаем кофе". Но что скрывается за этим термином, почему API так критичны и как правильно выбрать их тип для решения бизнес-задач? Давайте разберемся с практической точки зрения системного аналитика. Представьте ресторан. Вы (клиент) видите меню (интерфейс), делаете заказ (запрос) и получаете блюдо (ответ). Вы не идете на кухню и не говорите с поварами напрямую – вы взаимодействуете через официанта. API (Application Programming Interface) – это и есть такой "официант" для программ...
1 месяц назад
Метод PUT в HTTP: Полное руководство для системного аналитика
PUT — это идемпотентный метод протокола HTTP, предназначенный для полного замещения ресурса по указанному URI. Клиент передаёт серверу новое представление ресурса, а сервер либо создаёт новый ресурс (если URI не существовал), либо полностью заменяет старый (если URI уже был занят). Ключевая концепция: PUT = "Сохранить это представление ресурса по этому адресу (URI)". PUT /api/users/123 HTTP/1.1 Host: example.com Content-Type: application/json Authorization: Bearer xyz123 If-Match: "a1b2c3d4" //...
1 месяц назад
Когда водопад льется лучше, или где Waterfall побеждает Scrum
В мире разработки ПО доминируют гибкие методологии, особенно Scrum. Он стал синонимом современности, адаптивности и скорости. Однако, как системный аналитик, наблюдающий полный жизненный цикл проектов, я утверждаю: модель Waterfall (водопад) не просто устарела — она остается лучшим, а иногда и единственно возможным выбором в определенных ситуациях. Глупо отвергать инструмент только потому, что он не модный. Ключ — в понимании контекста проекта. Факторы выбора: Что анализировать системному аналитику?...
1 месяц назад
Что такое MMP в IT-проектах: ключ к успешному запуску на рынок
В мире гибкой разработки IT-продуктов, где скорость и адаптация решают все, постоянно возникают концепции, помогающие командам фокусироваться на самом важном. Две из них — MVP (Minimum Viable Product) и MMP (Minimum Marketable Product) — часто упоминаются вместе, но служат разным целям. Если MVP помогает проверить идею, то MMP — это шаг к реальным пользователям и доходам. Давайте разберемся, что же такое MMP и почему он так важен. Проще говоря: MVP — это прототип для теста в лаборатории. MMP — это первая партия товара, которую можно смело отправить в магазин...
1 месяц назад
Аутентификация, Авторизация и Идентификация
В мире информационных технологий и безопасности постоянно звучат термины "идентификация", "аутентификация" и "авторизация". Хотя они тесно связаны и часто используются вместе, они обозначают совершенно разные этапы процесса предоставления доступа к ресурсам. Понимание разницы между ними критически важно для обеспечения безопасности как в цифровом пространстве, так и в реальной жизни. Давайте разберемся по порядку. Представьте себе строгую охрану на входе в важный объект: Идентификация, аутентификация...
1 месяц назад
Идентификация в IT-системах
Казалось бы, что может быть проще, чем понять, кто или что взаимодействует с системой? Однако именно на этапе идентификации закладывается основа для безопасности, персонализации, корректной обработки данных и эффективной работы всего приложения или сервиса. Как системный аналитик, я постоянно сталкиваюсь с последствиями как продуманной, так и небрежной идентификации. Давайте разберемся, почему это критически важно и как делать это правильно. В самом широком смысле, идентификация – это процесс распознавания...
1 месяц назад
Авторизация: За дверью с табличкой "Доступ ограничен"
Коллеги, разработчики, заказчики! Сегодня поговорим о краеугольном камне безопасности и функциональности любого современного приложения – об авторизации. Если аутентификация отвечает на вопрос "Кто ты?" (проверяя логин/пароль, отпечаток, токен), то авторизация решает куда более тонкую задачу: "Что тебе можно делать?". Представьте роскошный офис. Аутентификация – это пропуск на входе в здание. Он подтверждает, что вы сотрудник компании. Но вот вы внутри. Можете ли вы зайти в кабинет генерального...
1 месяц назад
Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA, Событийно-Ориентированная Архитектура) — это подход к проектированию систем, где основой взаимодействия между компонентами являются события. Вместо прямых вызовов по HTTP или другим синхронным протоколам сервисы общаются, генерируя и обрабатывая события. Ключевая особенность EDA — слабая связность (loose coupling): сервис, создавший событие, не знает о существовании или количестве его обработчиков, и наоборот. Этот принцип делает EDA особенно популярной в мире микросервисов...
1 месяц назад