Главная » Просмотр файлов » Диссертация

Диссертация (1145120), страница 9

Файл №1145120 Диссертация (Методология и инструментарий предметно-ориентированного моделирования) 9 страницаДиссертация (1145120) страница 92019-06-29СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 9)

Это делается с помощью двух основных конструкций: <transitionarea> и <transition string area>. Первая группа обобщает конструкции, которые не допускают следования за ними других конструкций потока управления (последнее возможно, но в рамках более сложных правил, как показано44ниже с конструкцией условного ветвления — <decision area>). Напротив, законструкциями из второй группы могут следовать конструкции из этой жегруппы (см. рекурсию в правиле для <transition string area>), а также конструкции из <transition area>.<transition area> ::= [<transition string area>] is followed by{<state area>|<nextstate area>|<decision area>|<stop symbol>|<merge area>|<out-connector area>|<return area>|<transition option area> }<transition string area> ::= {<task area>|<output area>|<set area>|<reset area>|<export area>|<create request area>|<procedure call area>|<remote procedure call area>}[is followed by <transition string area>]...И далее, например, условное ветвление в упрощённом виде определяетсятак:<decision area> ::= <decision symbol> contains <question>is followed by {{{<graphical answer part>}+ } set }<decision symbol>::=<graphical answer> ::=[<answer>] | ([<answer>])<graphical answer part> ::=<flow line symbol> is associated with <graphical answer>is followed by <transition area>Оператор is connected to является бинарным оператором и обозначает, чтолевый аргумент соединён с правым аргументом (аргументами).

Например,45ниже определена ситуация, когда сигнальный маршрут соединяет два процесса. При этом данный оператор не налагает отношения следования, какоператор is followed by.<signal route symbol> is connected to { <process area> <process area> } setОписание языка в грамматике происходит, так сказать, параллельно — дляSDL/PR и SDL/GR. Например, определение системы (пример системы былприведён на рис. 1.5) на SDL/PR в сокращённом виде выглядит так:<textual system definition> ::={<package reference clause>}*{system <system name> <end>{ <block definition>}+endsystem [<system name>] <end> }А в SDL/GR система описывается так:<system diagram> ::=[<package reference area>]is associated with{<frame symbol> contains{<system heading><block interaction area>}}<frame symbol> ::=Можно заметить почти зеркальное соответствие текстовой и графическойграмматик, более того, они объединяются в тех местах, где текстовая спецификация вставляется в графическую в неизменном виде — например, определение сигналов выглядит одинаково и в SDL/PR, и в SDL/GR.Наличие детального и формального описания обоих вариантов языка является удобным при разработке программных средств: упрощается процедураспецификации требований к этим средствам, касающихся вопросов интеграции текстового и графического редакторов.

Наличие двух способов работыочень удобно на практике, но возникает задача сохранения целостности информации. Кроме того, часто возникает пожелание параллельной работы в46обоих режимах. Простота проектирования и реализации этой функциональности в данном случае объясняется наличием простого и однозначного соответствия между конструкциями SDL/PR и SDL/GR, и при этом текстовый вариант является не форматом хранения (служебный синтаксис), а обычнымязыком программирования. Для DSM-подхода этот опыт очень важен, т. к.

оннаглядно демонстрирует возможность фактически «бесшовной» связи междудиаграммами и кодом на Java, C# и т. д. — эта связь возможна, если удастсятак же строго и однозначно задать соответствие между языком программирования и визуальным языком в рамках создаваемого DSM-решения. Более того, в средах бизнес-моделирования типа ОРГ-Мастер, где наряду с графическими средствами допускается возможность таблично-текстовой работы смоделью, проекции должны быть описаны столь же строго.Качество формального описания языка SDL, во многом, объясняется тем,что он имеет солидный возраст — почти 20 лет отделяют выход версииSDL92 от первой версии языка.

За это время он был, фактически, отшлифован. Разработчики DSM-языков и решений не имеют столько времени, поэтому на практике для спецификации DSM-языков используют более простые средства.Метамоделирование позволяет задать визуальный язык, наглядно, в графическом виде, акцентируясь на абстрактном синтаксисе. Как правило, здесьиспользуют диаграммы классов UML, однако имеются и специальные стандарты — Ecore [87], MOF [364] и др. (подробнее об этом см.[49]).В качестве примера кратко рассмотрим стандарт Ecore, широко используемый в различных модельно-ориентированных средствах. Его упрощённаяметамодель (то есть, метаметамодель) представлена на рис. 1.8. Каждыйэлемент нового языка, для которого строится метамодель с помощью Ecore,является экземпляром класса «EClass». Этот класс характеризуется именем, атакже списком атрибутов (класс «EAttribute»), каждый из которых имеет тип(класс «EDataType»).47Рис.

1.8. Сокращённая Ecore-метамодельКроме того, классы в создаваемой новой метамодели могут содержать ссылки на классы-предки (связь «eSuperTypes»), а также иметь ассоциации друг сдругом. Средством для задания ассоциаций в Ecore является класс«EReference», представляющий конец ассоциации. Конец агрегируется классом (агрегирование «eReference») и имеет следующие атрибуты: имя (name),признак того, является ли этот конец агрегированием (булевский атрибутcontainment), верхнюю и нижнюю границы множественности (атрибуты«lowerBound» и «upperBound»). Конец ассоциации также имеет ссылку«eOpposite» на другой (парный) конец (ассоциация имеет два конца — по одному с каждой стороны соединяемых классов). Эта ссылка не нулевая лишь втом случае, когда у задаваемой ассоциации существует направление от этойроли к парной.

В противном случае (т. е. задаётся однонаправленная ассоциация, и направления от данной роли в ней нет) для доступа к связываемомуассоциацией классу используется только ссылка «eReferenceType» (даже вслучае однонаправленной ассоциации нужно знать, какие классы соединяются ассоциацией). Ecore-метамодели хранятся в XMI-формате [433]18.Метамоделирование является общепринятым способом формальной спецификации языка для генерации по этому описанию соответствующего графического редактора. В некоторых случаях с помощью метамоделей задаётся18Данный формат основан на XML и создан комитетом OMG для того, чтобы разныеUML-модели могли обмениваться UML-моделями. Большинство современных UMLсредств поддерживают экспорт/импорт моделей в этом формате.48также и конкретный синтаксис — см., например, DSM-платформу MicrosoftModeling SDK [213].

Наконец, метамоделирование является общепринятымсредством для формализации визуальных языков в стандартах — в качествепримера можно указать стандарты UML [426] и BPMN [192]. Однако метамодели реальных стандартов, например, UML, оказываются очень сложнымии предназначаются, главным образом, для разработчиков инструментальныхсредств, подобно тому как формальные грамматики языков программирования адресуются разработчикам компиляторов. Обычные пользователи этихязыков используют многочисленные книги и учебные курсы, фокусирующиеся на нотациях и рассматривающие лишь некоторые элементы данных метамоделей.Однако при разработке DSM-решений метамодели активно используются.Во-первых, они оказываются достаточно компактными и удобными для обсуждений. Во-вторых, они служат средством фиксации визуального языка(так называемая официальная спецификация). В-третьих, эти метамоделислужат основой для реализации графических редакторов и других средствпрограммной поддержки языков: многие DSM-платформы позволяют автоматически генерировать код таких средств по данным метамоделям.

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

Приэтом важно проверять корректность и указывать на ошибки не после того,как спецификация создана (как делается при компиляции программ наязыках программирования), а непосредственно в процессе моделирования, непозволяя пользователю делать неправильных шагов: добавлять на диаграммуграфические символы, отсутствующие в нотации (для редакторов на основе49Microsoft Visio это возможно — речь идёт о фигурах, которые можносоздавать из стандартного меню пакета), соединять между собой фигуры,которые не могут быть соединены, и т.д. Поэтому точная метамодель,задающая те и только те варианты сочетаний конструкций, которыедопустимы с точки зрения языка, является основой для созданиясоответствующей программной поддержки — например, часто по такойметамоделиавтоматическигенерируетсяпрограммныйинтерфейс,посредством которого происходит работа с репозиторием модели и контрольдействий пользователя.

Характеристики

Тип файла
PDF-файл
Размер
5,8 Mb
Высшее учебное заведение

Список файлов диссертации

Методология и инструментарий предметно-ориентированного моделирования
Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6508
Авторов
на СтудИзбе
302
Средний доход
с одного платного файла
Обучение Подробнее