Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архитектура ПО на практике.doc
Скачиваний:
3
Добавлен:
01.05.2025
Размер:
63 Мб
Скачать
☆

Глава 8

Моделирование условий полета. Конкретный пример архитектуры, ориентированной на интегрируемость

Удивительно, но факт: на протяжении последних тридцати лет вычислительные мощности [в области моделирования условий полета] увеличивались почти экспоненциально. Сегодня у нас нет оснований предпо­лагать, что эта тенденция претерпит изменения.

Лоренс Фогэрти [Fogarty 67]

Мы вряд ли погрешим против истины, если заявим, что современные системы моделирования условий полета — это самые сложные из всех существующих программных систем. Они отличаются сильной распределенностью и жесточай­шими требованиями по времени; помимо этого, они должны быть подготовлены к регулярным обновлениям, обеспечивающим высочайшую точность и соответ­ствие непрерывно совершенствующимся воздушным судам и среде, которую они имитируют. Создание и сопровождение столь масштабных систем сопряжено с су­щественной трудностью проектирования ряда элементов:

  • функционирование в жестких условиях реального времени;

  • модифицируемость, необходимая для отражения эволюции моделируемых воздушных судов и изменения их окружения;

  • масштабируемость функций (одна из разновидностей модифицируемости) как средство расширения систем, с тем чтобы они могли как можно точней моделировать реальные условия.

Как бы то ни было, даже по подзаголовку главы видно, что основной заботой Экторов систем моделирования условий полета остается обеспечение интегрируемости (integrability). Несмотря на то что мы не рассматривали этот атрибут качества систем в главе 4, в контексте крупных систем — в особенности тех, которые разрабатываются распределенными группами или несколькими компаниями - он часто оказывается определяющим. Интегрируемость выражает легкость сочетания элементов, разработанных не связанными друг с другом рабочими и группами (в том числе и сторонними организациями), в целях удовлетво­рения предъявляемых к программному продукту требований. Аналогично всем бальным атрибутам качества, реализации интегрируемости служат архитектур­ные тактики (причем некоторые из них одновременно направлены на достиже­ние модифицируемости). Эти тактики, в частности, предусматривают ком­пактность, простоту и стабильность интерфейсов; применение предписанных протоколов; низкое сцепление и минимизацию зависимостей между элементами; использование компонентных каркасов; а также сопровождение ряда версий ин­терфейсов, которые, с одной стороны, допускают расширение, а с другой преду­сматривают функционирование существующих элементов в условиях исходных ограничений

В этой главе мы обсудим трудности разработки систем моделирования усло­вий полета, а также ориентированный на их преодоление архитектурный обра­зец. Известный под названием «структурной модели» (Structural Model), он де­лает упор на следующие аспекты:

  • простоту и общность подструктур системы;

  • минимизацию сцепления вычислительных процессов, с одной стороны, и стратегий передачи данных и управления, — с другой;

  • минимизацию типов модулей;

  • минимизацию стратегий общесистемной координации;

  • прозрачность решения.

Архитектурный образец, основывающийся на этом принципе, обеспечивает не только высокую интегрируемость, но и реализацию других атрибутов качества, необходимых для моделирования условий полета. Образец этот состоит из ряда Лее мелких элементарных образцов.