Программа для моделирования движения 2d механизмов. Универсальный механизм Lite

  • 21.05.2019

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

    В самом начале проекта вам придется построить статическую сборку будущего механизма. То есть, все детали будущего механизма должны располагаться друг относительно друга так, как это имеет место в реальном механизме (рис.2). При этом, естественно, навсе детали предварительно вам придется наложитьограничения сборки (рис.6).

    После построения статической сборки вы должны обязательно сохранить построенную сборку обычным способом. Это будет нашим первых сохранением !! Позднее, мы выполним и второе сохранение.

Два режима работы в процессе анализа

    После построения и сохранения статической сборки вы должны впервые перейти из режима (из приложения)Моделирование в режим (в приложение)

    При этом нужно четко представлять себе, что в процессе нашего анализа вы можете по мере надобности, попеременно находиться:

    • И в режиме Моделирование

      И в режиме Симуляция кинематических механизмов

То есть, в процессе работы вы сможете неоднократно переходить и возвращаться из одного режима другой.

    Как только вы окажетесь в режиме Симуляция кинематических механизмов , вы сразу обратите внимание на новые инструментальные панели (рис.7).

    Позднее мы подробнее рассмотрим многие из команд этих панелей, а пока только обратите внимание на то, как отличаются инструментальные панели в режимах Моделирование иСимуляция кинематических механизмов.

Преобразование ограничений сборки в кинематические пары

    Наверное вы помните, что в кинематике отдельные детали механизма связываются между собой с помощью кинематических пар , илисвязей типа:вращательный шарнир, цилиндрический шарнир, сферический шарнир, ползун и др.

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

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

Основы PBS анализа в программном комплексе Универсальный Механизм

В презентации приведены примеры использования программного комплекса Универсальный Механизм для расчета PBS анализа.

Компьютерное моделирование взаимодействия подвижного состава, пути и упругого основания

Модуль UM Flexible Railway Track является дополнением к модулю UM Loco (модуль моделирования динамики рельсовых экипажей) и позволяет исследовать взаимодействие подвижного состава с путевой структурой при описании последней детальными пространственными моделями. Для моделирования контакта «колесо-рельс» используется специальная модель контактных сил, основанная на виртуальном взаимопроникновении профилей колеса и рельса. Для описания основания пути (мост, эстакада, туннель и т.п) могут быть использованы конечноэлементные модели, импортированные из МКЭ пакетов (ANSYS, MSC.NASTRAN).

Компьютерное моделирование взаимодействия железнодорожных экипажей и мостов

Представлена методика компьютерного моделирования взаимодействия железнодорожного моста и поезда.

Формальное символическое описание механических систем

Для произвольной механической системы вводится формальное символическое описание.

Быстрые алгоритмы решения контактной задачи колесо-рельс в задачах моделирования динамики рельсовых экипажей

В презентации описывается безитерационная модель расчёта нормальной силы в контакте колесо-рельс, основанная на условии непроникновения начальной точки контакта. Представленные алгоритмы реализованы в программном комплексе моделирования динамики систем тел «Универсальны механизм».

Совместное моделирование процессов износа и накопления контактно-усталостных повреждений в железнодорожных колёсах

В презентации рассмотрены алгоритмы совместного компьютерного моделирования процессов износа и накопления контактно-усталостных повреждений в колёсах железнодорожного подвижного состава, реализованные в программном комплексе «Универсальный механизм».

Моделирование динамики упругого железнодорожного пути

Описывается подход к моделированию динамики упругого железнодорожного пути. Подход предполагает моделирование рельсов балкой Тимошенко, а шпал - твердыми телами или балками Эйлера-Бернулли.

Моделирование динамики гусеничных машин в реальном времени

Разработана безынерционная модель гусеницы, которая позволяет моделировать динамику гусеничных машин в реальном времени. Модель разработана с учетом возможного движения гусеничной машины по сильно негладкой поверхности, например, индустриальный или городской пейзаж.

UM VBI: опыт пользователей

О программе UM Lite

Universal Mechanism Lite - отдельный продукт Лаборатории вычислительной механики. Представляет собой упрощенный вариант основной программы и рассчитан на широкий круг пользователей: студентов, аспирантов и преподавателей ВУЗов, инженеров-конструкторов, а также просто любителей механики. Подробнее о линейке программ Лаборатории см. .

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

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

Поддерживается импорт данных из следующих CAD-программ: КОМПАС-3D, SolidWorks и Autodesk Inventor. Таким образом UM Lite можно рассматривать как недорогое приложение для анализа кинематики и динамики систем, спроектированных в упомянутых выше CAD-программах. Подробнее об импорте данных из внешних программ см. .

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

В настоящее время разработано большое число программных продуктов, предоставляющие пользователю широкие возможности в данной области. Понимая важность и сложность проблем, связанных с моделированием динамики систем тел, создатели UM Lite преследовали следующие цели.

- Упростить процесс создания динамических моделей и их численного анализа, сделав доступным моделирование динамики систем тел широкому кругу инженеров-исследователей и конструкторов.

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

Подготовить массового пользователя к использованию более сложных и функционально полных программ, в том числе программы UM.

Детальное сравнение функциональности UM и UM Lite рассмотрено

Программа имеет интерфейс и руководство пользователя на русском и английском языках.

* Персональная и ВУЗовская лицензии предназначены для только некоммерческого использования и предусматривают использование программы в научных и образовательных целях. Эти лицензии запрещают использование программы в целях получения прибыли.

Весьма занимательная программка, позволяющая моделировать всевозможные механические системы и ситуации в двухмерном пространстве, простыми движениями мыши.

Шекспир когда-то сказал: "Весь мир - театр, а люди в нем - актеры". Это если исходить с позиции художественного образа мышления. Если же посмотреть на мир с научной точки зрения, то можно перефразировать великого драматурга: "Весь мир - природа, а люди в ней объекты":). А при чем тут природа? Да при том, что по-гречески "природа" будет "физис", а отсюда и название главной науки обо всем сущем - "физика".

Физические явления окружают нас с самого раннего детства, и у каждого ребенка рано или поздно возникают разнообразные вопросы: "Почему светит солнце? Почему идет дождь? Почему бутерброд всегда падает на пол, а не зависает в воздухе? :)". И по мере взросления ребенок, пытаясь получить ответы на эти вопросы, методом "научного тыка" познает окружающий его мир и законы его существования. Но не всегда такие эксперименты заканчиваются безболезненно.

Именно для того, чтобы можно было безопасно, для ребенка и для окружающего его мира:), смоделировать любой физический процесс, я рекомендовал бы использовать программу Phun .

Доступная на сегодняшний день версия 5.28 - это довольно симпатично оформленная среда для механического моделирования. Несмотря на кажущуюся несерьезность (программа оформлена в виде детского рисунка), Phun - довольно правдоподобно имитирует реальные физические условия (можно моделировать ситуации в условиях антигравитации, в воздушном и безвоздушном пространстве и т. д.).

Установка программы для моделирования механических процессов Phun

Но обо всем в свою очередь. Сейчас мы установим и попробуем разобраться с программой. Для этого скачиваем установочный дистрибутив Phun, запускаем инсталлятор и ждем, когда все установится:).

Сразу оговорюсь, если у Вас старый компьютер с довольно слабенькой видеокартой, то Phun в таком случае будет заметно притормаживать. Хотя заявлена поддержка (правда более ранней 4-ой версии) видеокарт с 32 МБ памяти, на моем компьютере со 128 МБ программа иногда подвисала довольно ощутимо. Я думаю, что оптимальный вариант будет около 256 МБ.

Пока мы с Вами говорили, Phun уже установилась и жаждет запуска. Не знаю, баг ли это в программе или косяк с моей системой в частности, но когда я согласился на запуск программы сразу после установки, то она на меня ругнулась и отказалась запускаться. Пришлось запускать ее вручную (стартовала без проблем:)).

Русификация программы

Перед нами окно программы с приветственным проектом:

Программа по умолчанию - английская, но в пятой версии появилась и русская локализация. Чтобы русифицировать Phun, заходим в меню "File" и в пункте "Change language" выбираем опцию "Russian". Готово!

Теперь, когда мы имеем дело с русской версией, рассмотрим элементы управления программой.

Интерфейс программы

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

Меню "Файл" позволяет настроить сцену под проект (сохранить, очистить), загрузить или создать новую сцену, сменить язык, переключить вид, проверить обновления, скачать дополнительные сцены или купить полную версию (хотя зачем, если и бесплатной хватает с головой).

Меню "Инструменты", "Управление" и "Контекстное меню" позволяют скрыть или отобразить соответствующие вкладки программы.

Меню "Инструменты":

Здесь собраны все те приспособления, при помощи которых мы будем создавать нужные нам для эксперимента объекты. Вся панель разделена на три зоны: в первой зоне инструменты для перемещения объектов, во второй - для рисования, а в третьей - для вставки механизмов. Рассмотрим их по порядку.

Первую панель открывает инструмент "Перемещение", который позволяет нам перемещать любые объекты в горизонтальной и вертикальной плоскостях. Инструмент "Рука" также служит для перемещения, однако может выполнять свою функцию в уже запущенном эксперименте.

Инструмент "Вращение" нужен для вращения объектов вокруг их центра тяжести или крепления. Инструмент "Масштаб" позволяет изменять размеры любых объектов. "Нож" - предназначен для разделения любого предмета на части, причем работает он и в режиме подготовки эксперимента и в режиме проигрывания.

В панели рисования первый инструмент - "Полигон". С его помощью Вы сможете нарисовать любую фигуру "от руки" или ровный многоугольник (для этого зажмите и удерживайте клавишу Shift, чтобы нарисовать ровную линию). Инструмент "Кисть" позволяет рисовать любые линии, фигуры и объекты вручную.

"Прямоугольник" помогает нам нарисовать четкий прямоугольник или квадрат (также зажав Shift), а с инструментом "Круг" Вы всегда сможете начертить ровный круг. Далее идут три специализированных инструмента "Шестерня", "Плоскость" и "Цепь". Все они соответственно создают свои объекты.

Третья панель также предназначена для создания специальных объектов со своими физическими характеристиками. Здесь находятся инструменты "Пружина", "Крепление", "Ось" и "След". Назначение первых троих, я думаю, объяснять не надо, а последний служит для отображения инерционного следа от движения какого-либо объекта, к которому прикреплен инструмент (см. пример Cycloid).

Меню "Управление":

Здесь мы видим нечто похожее на пульт управления стандартным плеером. Здесь есть кнопки реверса (отменить/повторить) и "плей" (соответственно, запустить эксперимент).

Далее находится ползунок масштаба и две кнопки навигации. Масштаб в Phun можно изменять тремя способами: передвигая ползунок, зажав левую кнопку мыши на кнопке (+/-) или колесом мыши, когда она находится над полем эксперимента. Кнопка со стрелками служит для перемещения по рабочему полю. Зажмите ее и, удерживая, перемещайте мышь. Хотя, по-моему, удобнее делать то же самое, зажав кнопку мыши в любом месте на рабочем поле.

Две последние кнопки панели управления служат для создания невесомости и безвоздушного пространства. По умолчанию гравитация соответствует настоящему значению в 9,8 м/с 2 , а сила сопротивления воздуха - 1. Но эти значения легко можно изменить в "Настройках" в подменю "Симулятор". Там же можно установить скорость симуляции (по умолчанию - 1).

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

В Phun контекстное меню у Вас всегда на виду, и Вы легко можете изменять свойства любого объекта в реальном времени. В самом общем виде контекстное меню отображается для рабочей области. Здесь мы можем настроить вид сцены, добавить один из готовых объектов на выбор и изменить цвет фона.

Для каждого нового объекта функции будут расширяться, дополняясь такими как клонирование, действия, выбор материала, настройка контуров и т. д.

Теперь мы готовы к работе с Phun, и для начала предлагаю провести небольшой эксперимент, чтобы проверить срабатывает ли в программе закон всемирного тяготения.

Первый эксперимент

Для этого в меню "Файл" выберем "Новая сцена" и нарисуем горизонтальную плоскость (0°). Теперь на одинаковой высоте подвесим два тела побольше и поменьше (для интереса маленький шарик я сделал из метала, а большой из стекла).

Все готово для эксперимента, осталось только нажать "Пуск!". Как видим, оба тела с одинаковой скоростью полетели вниз. Единственным минусом оказалось то, что стеклянный шар не разбился:((ненатурально получилось). В остальном же тела повели себя так, как и должны были бы настоящие их аналоги.

Более сложные манипуляции с телами и жидкостями

Усложним эксперимент, добавив вместо твердой поверхности, на которую приземляются тела, воду.

Поставим два столба (прямоугольника) и жестко их закрепим. Это будет емкость для нашей воды. Теперь "нальем" в нее саму воду. Чтобы создать воду, достаточно нарисовать между столбами большой предмет, а затем в его контекстном меню выбрать в "Действиях" пункт "Превратить в воду".

Готово! Можно запускать эксперимент.

Готовые сцены

Обзор программы был бы неполным, если бы я не упомянул, что для Phun существует множество готовых сцен. Несколько из них доступно, если нажать в меню "Файл" кнопку "Открыть сцену". Если же Вам и этого мало, Вы всегда можете скачать из Интернета тысячи других. Достаточно в том же меню "Файл" выбрать пункт "Скачать еще сцены".

Желаю Вам творческих успехов и всегда удачных экспериментов:)!

И традиционно, флеш-игра, также основанная на некоторой доле физики. Здесь мы управляем магнитным погрузчиком, основная задача которого - погрузить в машину все ящики. Но чем дальше, тем сложнее это сделать.

P.S. Разрешается свободно копировать и цитировать данную статью при условии указания открытой активной ссылки на источник и сохранения авторства Руслана Тертышного.

P.P.S. Если Вам понравилась эта программа, то советую обратить внимание на еще одну не менее интересную. Программа Начала Электроники позволит Вам моделировать реальные процессы в разнообразных электрических схемах, которые Вы же и создаете!

Весьма занимательная программка, позволяющая моделировать всевозможные механические системы и ситуации в двухмерном пространстве, простыми движениями мыши.

Шекспир когда-то сказал: "Весь мир - театр, а люди в нем - актеры". Это если исходить с позиции художественного образа мышления. Если же посмотреть на мир с научной точки зрения, то можно перефразировать великого драматурга: "Весь мир - природа, а люди в ней объекты":). А при чем тут природа? Да при том, что по-гречески "природа" будет "физис", а отсюда и название главной науки обо всем сущем - "физика" .

Физические явления окружают нас с самого раннего детства, и у каждого ребенка рано или поздно возникают разнообразные вопросы: "Почему светит солнце? Почему идет дождь? Почему бутерброд всегда падает на пол, а не зависает в воздухе? :)". И по мере взросления ребенок, пытаясь получить ответы на эти вопросы, методом "научного тыка" познает окружающий его мир и законы его существования. Но не всегда такие эксперименты заканчиваются безболезненно.

Именно для того, чтобы можно было безопасно, для ребенка и для окружающего его мира:), смоделировать любой физический процесс, я рекомендовал бы использовать программу Phun .

Доступная на сегодняшний день версия 5.28 - это довольно симпатично оформленная среда для механического моделирования. Несмотря на кажущуюся несерьезность (программа оформлена в виде детского рисунка), Phun - довольно правдоподобно имитирует реальные физические условия (можно моделировать ситуации в условиях антигравитации, в воздушном и безвоздушном пространстве и т. д.).

Установка программы для моделирования механических процессов Phun

Но обо всем в свою очередь. Сейчас мы установим и попробуем разобраться с программой. Для этого скачиваем установочный дистрибутив Phun , запускаем инсталлятор и ждем, когда все установится:). Сразу оговорюсь, если у Вас старый компьютер с довольно слабенькой видеокартой, то Phun в таком случае будет заметно притормаживать. Хотя заявлена поддержка (правда более ранней 4-ой версии) видеокарт с 32 МБ памяти, на моем компьютере со 128 МБ программа иногда подвисала довольно ощутимо. Я думаю, что оптимальный вариант будет около 256 МБ.

Пока мы с Вами говорили, Phun уже установилась и жаждет запуска. Не знаю, баг ли это в программе или косяк с моей системой в частности, но когда я согласился на запуск программы сразу после установки, то она на меня ругнулась и отказалась запускаться. Пришлось запускать ее вручную (стартовала без проблем:)).

Русификация программы

Перед нами окно программы с приветственным проектом:

Программа по умолчанию - английская, но в пятой версии появилась и русская локализация. Чтобы русифицировать Phun , заходим в меню "File" и в пункте "Change language" выбираем опцию "Russian" . Готово!

Теперь, когда мы имеем дело с русской версией, рассмотрим элементы управления программой.

Интерфейс программы

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

Меню "Файл" позволяет настроить сцену под проект (сохранить, очистить), загрузить или создать новую сцену, сменить язык, переключить вид, проверить обновления, скачать дополнительные сцены или купить полную версию (хотя зачем, если и бесплатной хватает с головой).

Меню "Инструменты" , "Управление" и позволяют скрыть или отобразить соответствующие вкладки программы.

Здесь собраны все те приспособления, при помощи которых мы будем создавать нужные нам для эксперимента объекты. Вся панель разделена на три зоны: в первой зоне инструменты для перемещения объектов, во второй - для рисования, а в третьей - для вставки механизмов. Рассмотрим их по порядку.

Первую панель открывает инструмент "Перемещение" , который позволяет нам перемещать любые объекты в горизонтальной и вертикальной плоскостях. Инструмент "Рука" также служит для перемещения, однако может выполнять свою функцию в уже запущенном эксперименте. Инструмент "Вращение" нужен для вращения объектов вокруг их центра тяжести или крепления. Инструмент "Масштаб" позволяет изменять размеры любых объектов. "Нож" - предназначен для разделения любого предмета на части, причем работает он и в режиме подготовки эксперимента и в режиме проигрывания.

В панели рисования первый инструмент - "Полигон" . С его помощью Вы сможете нарисовать любую фигуру "от руки" или ровный многоугольник (для этого зажмите и удерживайте клавишу Shift, чтобы нарисовать ровную линию). Инструмент "Кисть" позволяет рисовать любые линии, фигуры и объекты вручную. "Прямоугольник" помогает нам нарисовать четкий прямоугольник или квадрат (также зажав Shift), а с инструментом "Круг" Вы всегда сможете начертить ровный круг. Далее идут три специализированных инструмента "Шестерня" , "Плоскость" и "Цепь" . Все они соответственно создают свои объекты.

Третья панель также предназначена для создания специальных объектов со своими физическими характеристиками. Здесь находятся инструменты "Пружина" , "Крепление" , "Ось" и "След" . Назначение первых троих, я думаю, объяснять не надо, а последний служит для отображения инерционного следа от движения какого-либо объекта, к которому прикреплен инструмент (см. пример Cycloid).

Здесь мы видим нечто похожее на пульт управления стандартным плеером. Здесь есть кнопки реверса (отменить/повторить) и "плей" (соответственно, запустить эксперимент).

Далее находится ползунок масштаба и две кнопки навигации. Масштаб в Phun можно изменять тремя способами: передвигая ползунок, зажав левую кнопку мыши на кнопке (+/-) или колесом мыши, когда она находится над полем эксперимента. Кнопка со стрелками служит для перемещения по рабочему полю. Зажмите ее и, удерживая, перемещайте мышь. Хотя, по-моему, удобнее делать то же самое, зажав кнопку мыши в любом месте на рабочем поле.

Две последние кнопки панели управления служат для создания невесомости и безвоздушного пространства. По умолчанию гравитация соответствует настоящему значению в 9,8 м/с 2 , а сила сопротивления воздуха - 1. Но эти значения легко можно изменить в "Настройках" в подменю "Симулятор" . Там же можно установить скорость симуляции (по умолчанию - 1).

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

В Phun контекстное меню у Вас всегда на виду, и Вы легко можете изменять свойства любого объекта в реальном времени. В самом общем виде контекстное меню отображается для рабочей области. Здесь мы можем настроить вид сцены, добавить один из готовых объектов на выбор и изменить цвет фона.

Для каждого нового объекта функции будут расширяться, дополняясь такими как клонирование, действия, выбор материала, настройка контуров и т. д.

Теперь мы готовы к работе с Phun , и для начала предлагаю провести небольшой эксперимент, чтобы проверить срабатывает ли в программе закон всемирного тяготения .

Первый эксперимент

Для этого в меню "Файл" выберем "Новая сцена" и нарисуем горизонтальную плоскость (0°). Теперь на одинаковой высоте подвесим два тела побольше и поменьше (для интереса маленький шарик я сделал из метала, а большой из стекла).

Все готово для эксперимента, осталось только нажать "Пуск!". Как видим, оба тела с одинаковой скоростью полетели вниз. Единственным минусом оказалось то, что стеклянный шар не разбился:((ненатурально получилось). В остальном же тела повели себя так, как и должны были бы настоящие их аналоги.

Более сложные манипуляции с телами и жидкостями

Усложним эксперимент, добавив вместо твердой поверхности, на которую приземляются тела, воду.

Поставим два столба (прямоугольника) и жестко их закрепим. Это будет емкость для нашей воды. Теперь "нальем" в нее саму воду. Чтобы создать воду, достаточно нарисовать между столбами большой предмет, а затем в его контекстном меню выбрать в "Действиях" пункт "Превратить в воду" .

Готово! Можно запускать эксперимент.

Готовые сцены

Обзор программы был бы неполным, если бы я не упомянул, что для Phun существует множество готовых сцен. Несколько из них доступно, если нажать в меню "Файл" кнопку "Открыть сцену" . Если же Вам и этого мало, Вы всегда можете скачать из Интернета тысячи других. Достаточно в том же меню "Файл" выбрать пункт "Скачать еще сцены" .

Желаю Вам творческих успехов и всегда удачных экспериментов:)!

P.S. Данная статья предназначена для свободного распространения. Приветствуется её копирование с сохранением авторства Руслана Тертышного и всех P.S. и P.P.S.

P.P.S. Если Вам понравилась эта программа, то советую обратить внимание на еще одну не менее интересную. Программа Начала Электроники позволит Вам моделировать реальные процессы в разнообразных электрических схемах, которые Вы же и создаете!

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

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

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

Моделирование механизмов осуществляется следующим образом:

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

2. Представьте каждый механизм в виде кооперации.

3. Раскройте структурную и поведенческую составляющие каждой кооперации. Всюду, где можно, попытайтесь отыскать совместно используемые элементы.

4. Утвердить эти механизмы следует на ранних стадиях жизненного цикла раз работки (они имеют стратегически важное значение), но развивать их нужно в каждой новой версии, по мере более тесного знакомства с деталями реализации.

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

Хорошо структурированная кооперация обладает следующими свойствами:

· включает структурную и поведенческую составляющие;

· представляет собой четкую абстракцию некоторого взаимодействия в системе;

· редко является полностью независимой - обычно перекрывается со структурными элементами других коопераций;

· проста и легка для понимания.

Изображая кооперацию в UML, пользуйтесь следующими правилами:

· явно прорисовывайте кооперацию только тогда, когда это необходимо для понимания ее отношений с другими кооперациями, классификаторами, операциями или системой в целом. В остальных случаях используйте кооперации, но оставляйте их на заднем плане модели;

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

Профиль – набор стереотипов


РУКОВОДСТВО К ПРАКТИЧЕСКИМ ЗАНЯТИЯМ

В практическом разделе содержатся задания, позволяющие сформировать навыки использования языка UML при составлении системотехнических описаний инфокоммуникационных систем и выполнить специальные задания.