- Сourse
- Location
Основная задача курса – дать представление об основных принципах и подходах, используемых при проектировании программных систем с повышенными требованиями к производительности.
В рамках курса также рассматриваются принципы, паттерны и антипаттерны, применяемые при проектировании систем с повышенными требованиями к производительности. Для принципов и паттернов приводятся примеры применения.
Курс также дает практические навыки анализа требований при проектировании, проектирования и применения перформанс-паттернов и принципов.
Также внимание уделяется методике, позволяющей провести количественную оценку производительности системы, которая делает акцент на архитектуре и дизайне.
Каждая тема курса сопровождается упражнениями для самостоятельного выполнения, составленными с целью научить слушателя применять описанные методы в реальных задачах.
В рамках курса также рассматриваются принципы, паттерны и антипаттерны, применяемые при проектировании систем с повышенными требованиями к производительности. Для принципов и паттернов приводятся примеры применения.
Курс также дает практические навыки анализа требований при проектировании, проектирования и применения перформанс-паттернов и принципов.
Также внимание уделяется методике, позволяющей провести количественную оценку производительности системы, которая делает акцент на архитектуре и дизайне.
Каждая тема курса сопровождается упражнениями для самостоятельного выполнения, составленными с целью научить слушателя применять описанные методы в реальных задачах.
Цели:
После завершения обучения слушатели будут:
После завершения обучения слушатели смогут:
- Понимать, как необходимо реализовывать производительность на этапе анализа требований и проектирования системы
- Разбираться в понятиях качеств архитектуры программной системы, атрибутах качеств архитектуры и сценариях атрибутов качеств
- Уметь анализировать требования при проектировании высокопроизводительных систем
- Знать стратегии, применяемые при разработке архитектуры программных систем
- Разбираться в перформанс принципах, перформанс паттернах и антипаттернах, в методике SPE
После завершения обучения слушатели смогут:
- Формулировать требования к системе в измеряемом и количественном виде
- Анализировать требования к производительности в ходе проектирования системы
- Проектировать системы для достижения заданной производительности
- Применять перформанс принципы и паттерны при проектировании системы
- Провести оценку производительности системы на разных этапах проекта
Разбираемые темы:
- Модуль 1.
- Краткий обзор курса (preview)
- Производительность: Основные термины
- Анализ требований при проектировании
- Практическое упражнение 1. Анализ требований
- Измерения и инструментирование
- Проектирование
- Производительность как атрибут качества архитектуры
- Подходы по реализации атрибута качества производительности
- Практическое упражнение 2. Проектирование
- Модуль 2.
- Перформанс принципы
- Принцип управления производительностью (Performance control principles)
- Performance Objective Principle
- Принцип инструментирования
- Практическое упражнение 3. Применение принципов управления производительностью
- Независимые принципы (Independent Principles)
- Centering principle
- Fixing-point principle
- Locality principle
- Processing versus Frequency Principle
- Синергетические принципы (Synergetic principles)
- Принцип совместного использования ресурсов
- Принцип параллельной обработки
- Принцип распределения нагрузки
- Практическое упражнение 4. Применение независимых и cинергетических принципов
- Паттерны
- Fast Path
- First Things First
- Практическое упражнение 5. Применение паттернов Fast Path и First Things First
- Batching
- Alternate Routes
- Flex Time
- Slender Cyclic Functions
- Практическое упражнение 6. Применение паттернов Batching, Flex Time, Slender Cyclic Functions
- Примеры использования принципов и паттернов
- Практическое упражнение 7. Детальное проектирование
- Модуль 3. Обзор методологии SPE
- Описание методологии SPE
- Модели SPE
- Стратегии худшего и лучшего случая
- Моделирование в SPE
- Решение модели выполнения программной системы
- Конструирование модели программной системы
- Граф выполнения модели программной системы
- Вычисление модели
- Матрица накладных расходов
- Имена устройств
- Пример вычисления модели программной системы
- Вычисления модели системы
Целевая аудитория:
Курс предназначен для ведущих разработчиков, проектировщиков, архитекторов и аналитиков, участвующих в проектировании и разработке программных продуктов.
Сертификат:
По итогам обучения каждому слушателю выдается сертификат о прохождении курсов Luxoft Training. Слушатели онлайн курсов получают электронную версию сертификата (на указанный email) по запросу.
Предварительная подготовка – общее:
- Основные концепции ООП
- Нотация UML
- Концепция Use case