Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Modelirovanie_sistem_uch_posobie_izdatelstvo.doc
Скачиваний:
107
Добавлен:
15.04.2019
Размер:
5.93 Mб
Скачать

7.2.3. Использование uml при моделировании систем реального времени

Встраиваемые системы реального времени, встречающиеся в таких прикладных областях, как телекоммуникации, аэрокосми-ческие и оборонные приложения, обычно имеют тенденцию быть большими и сложными. Решающим для таких систем является то, что они должны быть разработаны в соответствии с разумной архитектурой. Хорошая архитектура не только упрощает создание первоначальной системы, но и, что более важно, обеспечивает адаптивность системы к изменениям, вызываемым постоянным появлением новых требований. Конструкции, полученные из подтвержденных практикой концепций, изначально описанные в языке моделирования RT UML (Real-Time UML), включены в спецификации языка UML, начиная с версии 2.0.

Предметная область распределённых приложений реального времени. Одним из наиболее общих свойств программных систем реального времени является детерминизм, т.е. требование корректного отклика системы в рамках приемлемого временного интервала. Однако, это как будто простое свойство характеризует широкий спектр очень разных систем ‑ от систем работающих исключительно по временному расписанию и до систем, работающих исключительно под управлением происходящих событий. С течением времени, для каждой из этих категорий систем были разработаны собственные идиомы, шаблоны проектирования и стили моделирования, которые объединили коллективный опыт многих проектов.

Сконцентрируем внимание на основной категории систем реального времени (СРВ), которые можно охарактеризовать как сложные системы, работающие под управлением событиями и использующие (в потенциале) распределенную обработку. Такие системы наиболее часто встречаются в телекоммуникациях, аэрокосмических и оборонных приложениях и в системах автоматизированного управления. Размеры и сложность этих систем требуют значительных первоначальных затрат на проектирование, обычно с привлечением больших коллективов разработчиков, за которыми следует длительный период эволюционного роста. Со временем обнаруживаются новые требования, и система частично модифицируется для их удовлетворения.

Хорошим примером объектно-ориентированной методики архитектурного проектирования и моделирования распределенных систем и систем реального времени является метод COMET (Concurrent Object Modeling and Architectural Design Method), базирующийся на языке UML и его расширении для моделирования систем реального времени ‑ Real-Time UML, [16]. В основе COMET лежит унифицированный процесс разработки объектно-ориентированного ПО компании Rational (RUP) и концепция прецедентов (вариантов) использования (Use-Case) языка UML.

Краткое описание методики COMET. На этапе моделирования требований (Requirements Modeling) система рассматривается как черный ящик. Формируется модель прецедентов, где определяются функциональные требования к системе в терминах исполнителей (Actors) и прецедентов (Use-Case).

На этапе аналитического моделирования (Analysis Modeling) строятся статическая и динамическая модели системы. Статическая модель описывает структурные отношения между классами предметной области. Для выявления объектов, рассматриваемых в аналитической модели, применяется критерий разбиения на объекты. После этого разрабатывается динамическая модель, и уточняются описанные в модели требований прецеденты с целью представить объекты, участвующие в каждом прецеденте, и взаимодействия между ними. В динамической модели с помощью диаграмм состояний определяются объекты, зависящие от состояния.

На этапе проектного моделирования (Design Modeling) продумывается архитектура системы:

  1. Аналитическая модель, в которой основное внимание уделялось предметной области, соотносится со средой, где будет эксплуатироваться программа, и с проектной моделью, где акцент ставится на область решения.

  2. Формулируются критерии разбиения системы на подсистемы.

  3. В случае распределенной системы наиболее важным является разделение ответственности между клиентами и серверами, в том числе с точки зрения централизации и распределения данных и управления.

  4. Проектируются интерфейсы для обмена сообщениями, рассматриваются синхронные, асинхронные, групповые коммуникации и брокерские сервисы.

  5. Затем наступает очередь проектирования отдельных подсистем. Проектирование параллельных приложений, в том числе и систем реального времени, сводится в основном к выделению параллельно выполняемых объектно-ориентированных задач.

  6. И, наконец, создаются интерфейсы для обмена данными между задачами и синхронизации.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]