Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовой по СРВ.doc
Скачиваний:
118
Добавлен:
02.05.2014
Размер:
2.59 Mб
Скачать

10. Разработка детального проекта программы

Итак, задачи и скрывающие информацию классы определены. Далее нужно выполнить детальное проектирование. Сюда входит проектирование объектов-разъемов и составных задач, в которые вкладываются скрывающие информацию объекты.

10.1. Проектирование объектов-разъемов

На этапе детального проектирования ин­терфейсы описываются более точно с помощью объектов-разъемов, как показано на рис.26. Так, объекту Диспетчер поступают сильно связанные со­общения, не требующие ответа. Данный интерфейс отображается на объект-разъем Буфер сообщений диспетчера. Обычно такого рода разъем су­ществует между одним производителем и одним потребителем, однако в нашем случае есть две задачи-производителя – Интерфейс датчика наличия неполадок и Интерфейс датчика исправления ошибок, которые отправляют сообщения Диспетчеру (при этом последний находится в различных состояниях).

Диспетчер является производителем в трех интерфейсах со слабо связанным обменом. Во всех трех случаях потребители находятся в других распределенных подсистемах. Следовательно, мы будем использовать три очереди-разъема (см. рис.26), которые скрывают детали асинхронного обмена сообщениями с потенциально удаленными задачами, Очередь сообщений диспетчера инкапсулирует детали обмена с Диспетчером, а Очередь сообщений датчика наличия неполадок и Очередь сообщений датчика исправления ошибок – детали обмена с Подсистемой шлюзов.

В распределенном приложении разъемы сле­дует проектировать так, чтобы они могли во время выполнения определить, находится задача-получа­тель в том же или в удаленном узле. Отправители не должны знать о расположении получателей. Такая независимость от места позво­лит реализовать гибкую стратегию конфигурирова­ния, при которой распределенные подсистемы проектируются в виде распределенных компонентов. Экземпляры таких компонентов отображаются на физические узлы на этапе конфигурирования.

Рис. 26. Проектирование разъемов диспетчера

10.2. Проектирование составных задач

Рассмотрим теперь проектирование составной сгруппированной задачи Диспетчер, чтобы показать вложенные в нее объекты, скрывающие информа­цию. Объекты, описывающие каждое исправление ошибок, размещаются внутри Диспетчера. Это зависящий от состояния объект Управление исправлением ошибок. На рис.27 приведен деталь­ный проект задачи Диспетчер.

Любой объект интерфейса асинхронного устройства ввода/вывода помещает­ся внутрь асинхронной задачи, поддерживающей это устройство. Например, все экземпляры объектов Интерфейс кнопки включения, Интерфейс кнопки выключения, Интерфейс кнопки включения автомата, Интерфейс кнопки исправления ошибок принадлежат задаче Интерфейс кнопок.

Рис. 27. Детальный проект диспетчера

11. Конфигурирование целевой системы.

На этапе конфигурирования целевой системы производится отображение подсистем на физические узлы. Одна из возможных конфигураций такова: по одному узлу для каждого экземпляра Подсистемы

Рис.24. Диаграмма развертывания нераспределенной системы управления дамбой.

12. Анализ производительности системы управления дамбой.

В этом разделе мы применим теорию планирования в реальном времени к ана­лизу производительности распределенного варианта системы управления дамбой.