
SA-PRG-002 Системный аналитик. Уровень Специалист
Описание курса
Программа "Системный аналитик. Уровень Специалист" подробно расскажет о работе в системном анализе. Данная программа позволит в совершенстве овладеть инструментами моделирования и освоить основные архитектурные практики, и особенности работы с интеграционными требованиями.
- 1. Основы теории систем: понятия, принципы и подходы к анализу, синтезу и моделированию информационных систем, процессов и технологий.
- 2. Методология системного анализа. Роль системного аналитика.
- 3. Как тренировать системное мышление.
- 4. Основные технологические стеки в разработке ПО. Тренды и перспективы развития.
- 5. Особенности работы с каждым типом ПО: веб, десктоп и мобильное программное обеспечение.
- 6. Искусственный интеллект и Machine Learning.
- 7. Применение ChatGPT в работе системного аналитика.
- 8. Принципы объектно-ориентированного анализа и проектирования.
- 9. Применение «лучших практик» программной инженерии (паттерны проектирования).
Практика: Описание предметной области для E-commerce проекта. Создание концептуальной модели. Бизнес-игра на интервьюирование заказчика и создание модели предметной области. Практика направлена на тренировку применения объектно-ориентированного анализа и системного мышления.
Итого на курс 17 часов: теория — 10 ч., практика — 7 ч.
- 1. Процессы итерационной разработки и инкрементальной поставки ПО (включая SDLC). Номенклатуры проектной документации.
- 2. Релизный цикл, CI/CD.
- 3. Управление неопределенными требованиями. Управление рисками.
- 4. Управление заинтересованными сторонами и их группами. Управление ожиданиями. RACI-матрица.
Практика: Выбор методологии разработки приложения для омниканального интернет-магазина. В ходе практики участники не только выбирают подход, но и анализируют его влияние на бэклог, приоритезируют доработки, используя User Story Map.
Итого на курс 16 часов: теория — 6 ч., практика — 10 ч.
- 1. Описание бизнес-процессов по модели “Как есть” (AS IS).
- 2. Описание бизнес-процессов по модели “Как должно быть” (TO BE).
- 3. Изучение методов сбора требований. Разбор расширенных вопросов проведения «мозговых штурмов», фокус-групп, анкетирования, опросов, наблюдений и интервью. Прямое и опосредованное взаимодействие с заказчиком методами симуляций (деловых игр), рабочих сессий (workshops).
- 4. Анализ и декомпозиция требований. Работа с переходными требованиями. Влияние нефункциональных требований на архитектуру.
- 5. Документирование, описание и анализ требований. Применение Use Case, User Story. Разработка артефактов системного анализа. Применение корпоративных стандартов в разработке документации.
- 6. Верификация и валидация требований.
- 7. Жизненный цикл требований.
- 8. Выбор и согласование критериев и подходов к приоритизации требований. Определение приоритетов в реализации требований и их пересмотр на регулярной основе.
- 9. Требования в продуктовой разработке: понятие дорожной карты продукта, MVP.
- 10. Подготовка требований к повторному использованию. Оценка и управление изменениями в требованиях.
- 11. Прямая и обратная взаимная трассировка требований на компоненты решения и тестовые сценарии.
- 12. Согласование и утверждение требований.
- 13. Прототипирование пользовательских интерфейсов: wireframe, Balsamiq, DrawIO, FigJam. Основы работы с Figma. Карта клиентского опыта: CJM.
Практика: Выделение функциональных требований на основе контекста и формулирование их в виде user story. Определение критериев приемки user story. Разработка диаграммы вариантов использования (use case) и ее описание по шаблону. Проектирование макета экранной формы для мобильного приложения под соответствующий сценарий.
Итого на курс 39 часов: теория — 15 ч., практика — 24 ч.
- 1. Расширенные вопросы моделирования и документирования требований к архитектуре ПО, в том числе на уровне компонентов.
- 2. Диаграммы информационных потоков (IFD) и их место в анализе и проектировании систем.
- 3. Нотации семейства IDEF: IDEF0/1X.
- 4. Нотация моделирования бизнес-процессов BPMN 2.0.
- 5. Язык UML 2.x (продвинутый уровень): диаграммы классов, вариантов использования, последовательности, деятельности, состояний, компонентов, развертывания.
Практика: моделирование бизнес-процессов проекта в нотации BPMN. Проектирование деталей решения с использованием диаграмм UML.
Итого на курс 32 часов: теория — 8 ч., практика — 24 ч.
- 1. Понятия архитектуры: основные термины и определения, критерии качества архитектуры. Клиент-серверная архитектура.
- 2. Монолит и микросервисы: какой архитектурный стиль выбрать. Современные подходы к архитектурному проектированию.
- 3. Виды требований и атрибуты качества. Архитектурно значимые требования.
- 4. Применение архитектурных паттернов: от базовых до продвинутых стратегий проектирования.
- 5. Как управлять критериями надежности сервисов (SLA, SLO, SLI).
- 6. Использование ArchiMate как инструмента моделирования и проектирования систем.
- 7. Погружение в методику C4 для наглядного и эффективного проектирования архитектуры.
- 8. Освоение нотации 4+1 для анализа и проектирования архитектуры.
- 9. Принципы предметно-ориентированного проектирования (DDD).
- 10. Архитектурные стили: событийно управляемая архитектура.
Практика: выбор архитектурных стилей в соответствии с бизнес-целями проекта. Разработка контекстной диаграммы. Разбиение системы на модули\микросервисы и их отображение на компонентной диаграмме.
Итого на курс 34 часов: теория — 14 ч., практика — 20 ч.
- 1. Проектирование моделей данных. Построение логической и физической модели. ER-диаграмма. Проектирование типов связей для реляционной СУБД.
- 2. Реляционные и нереляционные базы данных: обзор, особенности и гарантии доступности.
- 3. Современные тактики производительности реляционной базы данных: нормализация, денормализация, индексация, Read Replica.
- 4. Хранилища данных. Основы ETL: сильные стороны, метрики и методы оптимизации.
- 5. SQL: основные и сложные запросы. Операторы DDL.
Практика: проектирование и документирование модели данных приложения. Разработка ER-диаграммы. Выбор типа БД.
Итого на курс 30 часов: теория — 12 ч., практика — 18 ч.
- 1. Интеграционные требования.
- 2. Роль аналитика в разработке интеграционных решений.
- 3. Как выбрать вид интеграционного решения в зависимости от бизнес-потребности.
- 4. Описание интеграционного взаимодействия в нотации PlantUML.
- 5. Документирование интеграционного взаимодействия.
- 6. Как описать обработку ошибок и нештатных ситуаций.
- 7. Интеграции в архитектуре. Понятие шины данных ESB.
- 8. Основы построения информационных сетей.
- 9. Технологии виртуализации. Отличие виртуализации от контейнеризации, stateless и stateful приложений.
- 10. Выбор между синхронной и асинхронной коммуникацией: анализ преимуществ и влияние на надежность системы.
- 11. Шаблоны коммуникации в контексте приложений и микросервисной архитектуры: применение и практические сценарии.
- 12. Синхронное взаимодействие и REST: основы, генерация API и управление версиями.
- 13. REST API: рекомендации по дизайну, блокировкам, кешированию и версионированию.
- 14. OpenAPI Spec: интеграция и API First подход в создании удобных и гибких интерфейсов.
- 15. Понимание концепции CRUD. Разработка дизайна REST API.
- 16. Работа с различными форматами хранения и передачи данных (сообщения JSON, документы XML, XSD).
- 17. Основы протокола SOAP (XML, XSD).
- 18. Использование инструментов: Swagger, Postman.
- 19. Обзор GraphQL.
- 20. AsyncAPI и принципы асинхронного взаимодействия: организация топиков и безопасность сообщений.
- 21. Технологии асинхронного обмена сообщениями: RabbitMQ и Kafka в сравнении.
Практика: проектирование интеграционного решения для приложения. Проектирование REST API. Разработка диаграммы потоков данных.
Итого на курс 42 часов: теория — 20 ч., практика — 22 ч.
- 1. Разработка требований в области информационной безопасности. Описание передаваемых и принимаемых данных, обработка ошибок, нештатных ситуаций, журнализация.
- 2. Идентификация. Основные схемы и протоколы аутентификации.
- 3. Авторизация и доступ к информационным ресурсам. Ролевая модель. Токены.
- 4. Разбор логов.
- 5. Популярные панели мониторинга для анализа данных, визуализации и оповещения: Kibana и Grafana.
- 6. Отказоустойчивость и восстановление данных.
- 7. Сертификаты безопасности.
- 8. Мониторинг и наблюдаемость системы: паттерны, инструменты и протоколы.
- 9. Обзор паттернов, целей и средств мониторинга, сбора логов приложений и инфраструктуры.
Практика: формулирование нефункциональных требований к системе в виде сценариев атрибутов качества: производительность, доступность, надежность, защищенность. Описание сценариев аутентификации с использованием внешнего сервиса. Описание основных ролей и их полномочий.
Итого на курс 22 часов: теория — 10 ч., практика — 12 ч.
- 1. Типы и уровни тестирования.
- 2. Тестирование функциональных и нефункциональных требований.
- 3. Управление дефектами и роль аналитика в этом процессе.
- 4. Проведение демо заказчику.
- 5. Поддержка и обслуживание ИС. Управление инцидентами и проблемами, ITIL, роль аналитика в поддержке ПО.
- 6. Обучение пользователей. Уровни службы поддержки.
- 7. Оценка результатов реализации.
- 8. План раскатки релиза и пилотирования. Особенности децентрализованных и централизованных систем.
Практика: составление детального описания тестового сценария для части проектируемого функционала. Подробная проработка альтернативных сценариев. Разработка BPMN-диаграммы для обработки инцидента аналитика. Выбор настроек для обеспечения контролируемого внедрения в продуктивную среду.
Итого на курс 18 часов: теория — 8 ч., практика — 10 ч.
Разработка омниканального интернет-магазина по продаже продуктов питания для крупной торговой компании, на основе микросервисной архитектуры с учётом интеграции с существующим IT-ландшафтом заказчика.