Модуль 1
Разработка требований к интеграции
- Определение целей и задач интеграции
- Чеклист интеграции
- Системные функциональные требований к интеграции
- Диаграммы потоков данных (Data Flow Diagram)
- Ограничения на интеграцию, требования к качеству интеграции
- Регламенты передачи данных
- Требования к журналированию и обработке ошибок
Модуль 2
Моделирование структур данных для интеграции
- Модель данных, типы данных, связи
- Декомпозиция монолита на микросервисы
- Мастер-система данных
- Описание преобразований данных (Data Mapping)
Модуль 3
Проектирование межсистемного взаимодействия
Сценарии интеграции
- Диаграммы последовательности (UML Sequence Diagram)
- Текстовые сценариев интеграции (Use Cases)
Обзор 4 интеграционных стилей
- Передача файлов
- Общая база данных
- Удалённый вызов процедур
- Обмен сообщениями
Модуль 4
Основы интернет-технологий
Форматы передачи данных
- JSON: объекты и атрибуты, типы данных, схема
- XML: элементы и атрибуты, валидация с помощью XSD
Протоколы интернета
- HTTP: заголовки, аутентификация, версии, идемпотентность, HTTPS
- FTP/SFTP, протоколы потокового мультимедиа
- Стек протоколов TCP/IP
Модуль 5
Проектирование интеграции через API
REST
- Принципы REST, 3-уровневая архитектура, API, Endpoint
Тестирование и документирование интеграционных методов
- Postman: построение запросов, авторизация, коды ответа, коллекции, переменные
- Swagger: запросы и ответы, формат описания YAML
Правила проектирования и документирование API-методов
- Шаблон описания методов
- Входные и выходные параметры
- Нейминг параметров
Модуль 6
Проектирование интеграции через обмен сообщениями
SOAP
- Сравнение REST и SOAP
- Интеграция с применением SOAP
- Описание сервисов на WSDL
- Применение SOAPUI
Интеграционные шины и брокеры
- Как работают брокеры сообщений
- Rabbit MQ, Apache Kafka и интеграция с помощью шины
- Отказоустойчивость и высокая доступность
- Интегратор wso2
- Принципы ETL
- Преобразование данных при передаче (XSLT+)
Модуль 7
Современные технологии интеграции
- GraphQL
- gRPC
- Webhooks
- Websockets