Что такое распределенная система? Определение распределенной системы.
Способы описания систем. Влияние взгляда на систему на синтез систем.
Эволюция определения системы
Зачем нужны распределенные системы? Примеры глобальных распределенных приложений
Характеристики масштаба распределенных систем. Какие проблемы существуют при построении распределенных систем?
Как строить распределенную систему. Архитектура. Эволюция понятия программной архитектуры. Модели архитектуры.
Принципы разделения распределенной системы на компоненты
Проблемы распределенных систем: Распространение приложения, Гетерогенность, Открытость, Безопасность, Масштабируемость, Обработка ошибок и восстановление после сбоев, Параллелизм, Прозрачность, Управляемость
Модель взаимодействия в распределенной системе
Модель защиты от сбоев в распределенной системе
Модель безопасности в распределенной системе
Итоги.
Что такое элемент
Что такое компонент
Что такое подсистема. Отличие компонента от подсистемы
Что такое связь
Характеристики связей
Обратная связь. Типы обратной связи
Цель. Виды целей
Что такое структура
Структурные связи
Состояние
Поведение
Равновесие
Устойчивость
Развитие
Самоорганизующиеся системы
Саморазвивающиеся системы
Концепция событийно-управляемой архитектуры. Предпосылки создания событийно-управляемой архитектуры
Основные элементы программ, построенных согласно событийно-управляемой архитектуре
Задачи системной шины
Преимущества событийно-управляемой архитектуры
Архитектура системы передачи сообщений
Что такое цель. Фиксация назначения и списка функций продукта.
Требования. Виды требований. Способ фиксации требований.
Что такое критерии успеха. Способ фиксации критерия успеха
Методика борьбы со сложностью конструирования распределенной системы
Принципы разработки
Схема процесса проектирования
Каков существенный предел разбиения системы?
Элемент системы, модуль, единица поведения, агент.
Элемент распределенного приложения. Харакетристики элемента (цель, модель поведения, способность к размножению).
Основные принципы архитектуры
Императивный и декларативный подходы
Элемент распределенной системы как агент
Коммуникационная среда
Общий язык общения модулей
Структура сообщения
Перечислимые типы
Поколения протоколов
Мета-информация в распределенной системе
Язык M : основы
Язык М : блоки мета-данных и точки монтирования
Описание протоколов на языке M
Модули и протоколы
Кодирование протоколов и сообщений
Формат описания протокола
Протокол как модель. Что могут создать по модели машины преобразования.
Базовый протокол
Что такое композитное приложение
Схема. Виды схем
Конструкция композитного приложения
Конструкция среды исполнения
Устройство коммуникационной среды
Требования к шине передачи сообщений
Функции шины
Основные элементы шины сообщений
Логическая шина
Как экономить усилия при разработке кода агентов
Элементарный модуль
Фабрика
Способы организации фабрики
Организация модуля
Способы кодирования поведения
Декларативный принцип определения поведения. Универсальный плеер поведений
Машины состояний
Модель поведения модуля
Графическое представление машины состояний
Функционирование модуля
Где модуль работает?
Реакция модуля на сообщение
Диалог модулей
Таймеры
Отделение модели машины состояний от кода обработчиков
Декларативное описание машины состояний на языке M
Трансляция из графической модели в модель на языке M
Построение машины состояний
Отладка машин состояний
Модуль как продукт
Структура модуля
Декларативное описание модуля
Формат описания модуля
Структура типового модуля
Создание заготовок модулей
Порядок реализации кода модуля
Главный класс
Карта регистрации обработчиков
Способы регистрации обработчиков
Повторное использование обработчиков
Универсальный тестирующий модуль
Архитектура средства тестирования
Скрипт тестирования. Структура скрипта тестирования. Секция Modules. Секция Script.
Команда Send
Команда Receive. Анализ принятого события.
Переменные в скриптах тестирования
Процедуры. Формат процедур. Вызов процедуры.
Тестирование коопераций модулей. Режим черного ящика. Режим наблюдения (observe). Режим вмешательства (intercept).
Систематический подход к тестированию. Связь сценариев и тест-кейсов. Чек-листы.
Типовые современные задачи
Технологические проблемы
Сервис-ориентированная архитектура
Цели внедрения SOA
Принципы SOA
Свойства SOA
Сервис
Структура сервиса
Составная природа сервиса
Особенности реализации сервисов
Композитные приложения
Упрощенная модель SOA
EDA как основа SOA
Жизненный цикл сервис-ориентированной архитектуры
Отделение бизнес-логики от кода. Визуальное проектирование в SOA