Основы архитектуры и интеграции информационных систем
Все, что нужно знать начинающим системным и бизнес-аналитикам по основам архитектуры и интеграции информационных систем: архитектурные модели и инструменты их описания, ключевые свойства распределенных систем, отличия монолита от микросервисов, модели OSI и TCP/IP, ACID-требования к транзакциям и CAP-теорема, JDBC и ODBC, способы интеграционного взаимодействия ИС, REST vs SOAP vs GrapQL, схемы данных и форматы документов для обмена информацией, OAuth и OIDC, таблицы маппинга, примеры HTTP-запросов и ответов, принципы работы Apache Kafka и JMS-брокеров на примере RabbitMQ
О курсе
Курс «Основы архитектуры и интеграции информационных систем» ориентирован на начинающих системных и бизнес-аналитиков, которые хотят познакомиться с принципами устройства информационных систем, заглянуть под капот распределенных приложений, понять, что внутри баз данных и каким образом они взаимодействуют между собой через различные способы интеграции.
Эта краткосрочная программа обучения не претендует на то, чтобы сделать из аналитика архитектора ПО, однако, рассмотренные в курсе темы помогут вам чувствовать себя увереннее при разработке ТЗ, особенно в части нефункциональных требований к ИС и интеграционных use case'ов.
Особое внимание уделено прикладным вопросам системного анализа: программа обучения построена на реальных примерах использования аналитических приемов (case studies) в российских и зарубежных компаниях. Каждый раздел курса, помимо теоретического материала, включает командное или индивидуальное практическое задание и самостоятельную работу.
Чему вы научитесь
Вы приобретете базовые знания и навыки, необходимые для разработки требований к архитектурным моделям и интеграционному взаимодействию ИС. Вы сможете:
- понять, что такое трехзвенная архитектура и когда старый добрый монолит лучше модных микросервисов
- описать архитектуру ИС в виде набора C4-диаграмм
- разберетесь, как разные ИС взаимодействуют между собой и при чем здесь модель OSI
- задавать параметры для подключения к БД, зная отличия JDBC от ODBC
- составить инфологическую модель данных ИС
- выбрать наиболее подходящий способ интеграции ИС
- знать, чем реляционные БД отличаются от NoSQL и при чем здесь ACID с CAP-теоремой
- составить пример запроса и ответа для интеграционного взаимодействия через REST API, SOAP и GraphQL
- протестировать API с помощью Postman
- разработать набор функциональных и нефункциональных требований к интеграции ИС
- оценить плюсы и минусы разных способов реализации требований к интеграции систем
- Понятие информационной системы (ИС)
- Послойная структура ИС, типовые архитектуры распределенных систем (двухзвенная и трехзвенная модели, монолит и микросервисы)
- Архитектурная модель C4
- Практическое задание –выбрать систему и составить набор диаграмм C4 для ее описания
- Сетевое взаимодействие. 7-уровневая модель OSI и стек TCP/IP
- Понятие и способы интеграции ИС. Обращение к БД, использование API, брокер сообщений
- Функциональные и нефункциональные требования к интеграции ИС
- Практическое задание –по выбранной системе составить набор ФТ и НФТ к интеграции с внешними ИС. Контекстная диаграмма, UML use case и sequence, текстовое описание ВИ и НФТ
- Основы теории баз данных. Реляционные и NoSQL-базы данных. Модель данных
- ACID-требования к транзакциям и CAP-теорема
- Практическое задание –по выбранной системе составить инфологическую модель данных и таблицу сопоставления моделей данных интегрируемых ИС
- Доступ к БД из приложения, данные для подключения. JDBC и ODBC-драйверы.
- Аутентификация и авторизация. OAuth и OIDC
- Практическое задание –по выбранной системе определить вид API интеграции и набор конечных точек
- HTTP-методы для манипуляций с данными. Схемы данных и форматы документов
- Знакомство с Postman – инструментом для тестирования API
- Практическое задание –по выбранной системе составить HTTP-запросы и примеры ответов, которые реализуют выявленные ФТ к интеграции с внешними ИС
https://babok-school.ru/courses/architecture-and-integration/