Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы»





Скачать 427.97 Kb.
НазваниеРеферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы»
страница3/4
Дата публикации22.05.2015
Размер427.97 Kb.
ТипРеферат
100-bal.ru > Информатика > Реферат
1   2   3   4

Представления.

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

  • Статическое структурное представление модели описывает структурные аспекты системы. Его примерами служат модели классов.

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

  • Представление деятельности используется для создания моделей, описывающих поток «деятельностей» в системе.

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

Эти представления не являются полностью ортогональными: концепции, используемые в одном из них, часто зависят от концепций, применяемых в другом.

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

Разработчикам сложных систем не помешала бы возможность их моделирования в пользовательском представлении. Сейчас UML 2.0 не имеет механизмов создания моделей с использованием представлений, отличающихся от имеющихся в языке.

Адаптация.

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

  • семантика, связанная с приемом событий в конечных автоматах;

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

  • определение точек, расширяющих вариант использования.

Точки семантических вариаций позволяют рас­смат­ривать UML как семейство языков. Ответственность за определение и обнародование соответствующей семантики, подключенной к точке вариации, UML 2.0 возлагает на пользователя. Язык не обеспечивает семантику по умолчанию или список возможных вариаций. Он формально не ограничивает семантики, которые допускается подключать к точкам вариаций.

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

В профиле элементы модели UML расширяются с помощью стереотипов, определяющих дополнительные свойства элемента. Свойства, которые определены расширением, введенным стереотипом, не должны противоречить свойствам, ассоциированным с элементом модели. С помощью профиля можно ввести новые ограничения и определить дополнительные атрибуты в классах, но нельзя ввести новые или удалить существующие классы элементов модели. В качестве примеров профилей можно назвать UML Profile for Schedulability, OMG Performance and Time и профиль SysML, предназначенный для моделирования систем.

К сожалению, механизм профилей UML 2.0 не обеспечивает средств точного определения семантики, связанной с расширениями. По этой причине разработчики не могут использовать профили в их нынешней форме для создания проблемно-ориентированных вариантов UML с поддержкой формальных манипуляций с моделью, необходимых в среде MDD.

Основные диаграммы.

Диаграмма UML предназначены для визуального отображения моделей и их компонентов.

UML 2.0 содержит 13 типов диаграмм:

  • структурные диаграммы:

  • диаграмма классов: показывает классы, их атрибуты и связи между ними;

  • диаграмма компонентов – показывает компоненты и связи между ними;

  • структурная диаграмма: показывает внутреннюю структуру классов и связи с внешним мором;

  • диаграмма развертывания: показывает, как ПО развертывается на аппаратуре;

  • диаграмма объектов: показывает структуру объектов в конкретный момент времени, объекты, их атрибуты;

  • диаграмма пакетов: показывает, как система раскладывается на крупные составные части и связи между ними;

  • диаграммы поведения:

  • диаграмма действия: показывает потоки информации в системе;

  • диаграмма состояния: представляет собой конечный автомат, показывающий функционирование системы;

  • диаграмма вариантов использования: показывает работу системы с точки зрения пользователя;

  • диаграммы взаимодействия:

  • диаграмма кооперации: показывает структурную организацию участвующих во взаимодействии объектов;

  • диаграмма взаимодействия: новация UML 2.0;

  • диаграмма последовательности: показывает временную упорядоченность событий;

  • временная диаграмма: связана с временными рамками.

Концепции моделирования структуры.

Из всех концепций UML наиболее широко используются концепции моделирования классов. В некоторых проектах создаются только модели классов. В концепциях моделирования классов UML 2.0 появились некоторые небольшие, но заметные изменения. Одно из усовершенствований в диаграммах классов — введение нового маркера допустимости навигации для ассоциаций. Данная нотация позволяет разработчикам отличить случай, когда навигация явно запрещена, от случая, когда не принято решение о запрете или разрешении навигации. Знак X в конце ассоциации указывает, что навигация через этот конец ассоциации запрещена; отсутствие пометки (стрелки или знака X) указывает на то, что решение относительно навигации в концевой точке ассоциации пока не принято.

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

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

Концепции моделирования поведения.

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

Чтобы определить исполняемую модель UML, язык должен точно описывать действия. В UML 2.0 это достигается с помощью концепций, определенных в документе Action Semantics for the UML, который идентифицирует действия и описывает их эффекты. В нем, например, определены действия создания и удаления объектов и ссылок, а также действия для получения и установки значений атрибутов. Документ Action Semantics для UML 2.0 не определяет конкретный синтаксис действий. Исследователи и методологи предложили несколько внешних языков описания действий, в том числе язык семантики действий (Action Semantics Language, ASL) и Java-подобный язык действий (Action Language).

Документ Action Semantics не слишком значительно поднимает уровень абстракции по сравнению с языками программирования. Написание тела метода на языке действий с уровнем абстракции не выше примитивов может потребовать таких же усилий, как его написание на некотором языке программирования. Создание языков описания действий, которые позволяют из примитивов строить высокоуровневые конструкции, значительно поднимающие уровень абстракции описания поведения, существенно повысит роль UML 2.0 в разработке на базе моделей.

В UML 2.0 сильно изменились диаграммы последовательности и деятельности. Изменения диаграммы последовательности обусловлены богатым опытом, накопленным в ходе разработки языка диаграмм последовательности сообщений (Message Sequence Diagram, MSD). Диаграммы MSD использовались в течение многих десятилетий в индустрии телекоммуникаций. На современном этапе развития этот стандарт имеет формализованную и документированную семантику. Усовершенствования диаграммы последовательности позволяют:

  • именовать и ссылаться на именованные фрагменты взаимодействий;

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

В UML 2.0 также введен новый тип диаграммы. Это обзорная диаграмма взаимодействия (Interaction Overview Diagram), которая показывает отношения потоков между фрагментами и диаграммами последовательности.

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

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

Для описания поведения информационных систем значительно удобнее диаграммы деятельности. В предыдущих версиях UML они рассматривались как специализированная форма конечных автоматов. Теперь эти диаграммы имеют аналогичную сетям Петри семантику потоков — для более удобного моделирования потоков деятельности.

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

Тестирование проектов.

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

Чтобы ошибки не проникли в реализацию, модель нужно протестировать. Сейчас разработчики оценивают проектные модели UML с помощью пошагового просмотра, инспекции и других неформальных методов ревизии проекта, преимущественно ручных. Такая проверка больших проектов утомительна и не гарантирует отсутствия ошибок. Можно применить и формальные методы проверки, но лишь немногие из них способны справиться с моделями больших систем. Семантика времени выполнения, ассоциированная с моделями UML 2.0, прокладывает путь к разработке систематических методов тестирования моделей. Они обеспечивают выполнение модели с применением проверочных входных данных.

Мы разработали опытный образец инструмента UML Animator and Tester UMLAnT (UMLAnT), который использует информацию из диаграмм классов, последовательности и деятельности для анимации и тестирования проектных моделей UML. В процессе тестирования UMLAnT показывает диаграммы последовательности, перехватывающие сообщения, которыми обмениваются объекты. Он также отображает диаграммы объектов, которые описывают конфигурации, созданные в ходе выполнения тестов.

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

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

Метамодель.

Разработчики методов преобразования моделей и других механизмов MDD для манипуляций с моделями часто работают на уровне метамоделей. Например, они выражают трансформации моделей в виде соответствий между элементами метамодели. Более того, в технологиях MDD иногда расширяют метамодели и определяют новые конструкции языка ради удобства проблемно-ориентированного моделирования или моделирования семейства продуктов. Поэтому разработчики MDD-технологий на базе UML должны хорошо разбираться в метамодели UML. Однако сложность нынешней метамодели UML 2.0 может затруднить ее понимание, использование, расширение и развитие.

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

Рассмотрим задачу извлечения из метамодели UML 2.0 простого представления, которое фокусируется лишь на взаимосвязях концепций, используемых для создания базовых моделей последовательности. Изучение метамодели UML показывает, что требуемая информация равномерно рассеяна по ней. Языковая единица «взаимодействия» организована в виде множества взаимосвязанных пакетов. Например, пакет Basic Interaction непосредственно зависит от пакетов Basic Behaviors, Basic Actions и Internal Structures. А они зависят от других пакетов, описанных в других частях более чем 1000-страничной спецификации Суперструктуры. Прослеживание с помощью этих пакетов зависимостей с целью извлечения субструктуры метамодели, описывающей базовые модели последовательности, оказывается весьма утомительным делом.

В спецификации UML 2.0 не хватает удобного обзора моделей взаимодействия. Например, хотелось бы, чтобы отношения между концами стрелок-сообщений и линиями жизни можно было легко идентифицировать. Удивительно, но для получения этого простого отношения нужно пройти через несколько ассоциаций и иерархий наследования.
1   2   3   4

Похожие:

Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» iconРабочая программа учебной дисциплины проектирование информационных...
Целью дисциплины является: изучение методологии структурного анализа, моделирование информационных систем в стандарте idef, проектирование...
Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» iconРеферат по дисциплине «Проектирование информационных систем» на тему:...
Для того, чтобы реализовать составные компоненты системы, на рынке закупаются типовые проектные решения и затем настраиваются под...
Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» iconРабочая программа учебной дисциплины проектирование автоматизированных информационных систем
Курс «Проектирование автоматизированных информационных систем» направлен на изучение современных методов и средств проектирования...
Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» iconВалентина Ширшова Екатерина Фомченко bazalt1@rambler ru
Поли-пара-ксилилены. История разработки, современное состояние и перспективы развития технологии
Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» iconПрограмма дисциплины «Проектирование информационных систем»
«Проектирование информационных систем» для направления 080700. 62 Бизнес-информатика подготовки бакалавра
Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» iconТулина Л. А. Использование аутентичных видеоматериалов в обучении...
Тулина Л. А. Использование аутентичных видеоматериалов в обучении страноведению в вузе//Российское предпринимательство: современное...
Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» iconПримерные темы рефератов
Современное состояние науки об организации производства и перспективы ее развития
Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» iconРабочая программа по курсу Проектирование информационных систем

Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» icon1. Современное состояние, проблемы диагностики и перспективы развития...
Тема Современное состояние, проблемы диагностики и перспективы развития онкологии. Организация онкологической службы. Принципы лечения...
Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» iconРеферат Направление подготовки «Экономика»
Налог на доходы физических лиц в Российской Федерации: современное состояние, проблемы и перспективы реформирования
Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» iconРефератов для студентов III курса
Современное состояние и перспективы развития физической культуры и спорта в России
Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» iconТемы рефератов для студентов III курса, временно
Современное состояние и перспективы развития физической культуры и спорта в России
Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» iconРеферат на тему: Транспортная составляющая интеграции Украины в мировую экономику
Экономическое состояние, проблемы и перспективы развития отдельных отраслей транспортной промышленности Украины: 5
Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» iconРеферат на тему: «Современное состояние гидро- и ветроэнергетики....
Современное состояние гидроэнергетики, её место в энергетике и влияние на окружающую среду
Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» iconРеферат на тему: «Вакансии по специальности экономическая кибернетика»
Занимается в области применения информационных систем, решает функциональные задачи, а также управляет информационными, материальными...
Реферат по курсу «Проектирование Информационных систем» на тему: «uml: история развития, современное состояние и перспективы» iconТумур бямбаа современное состояние и перспективы развития дактилоскопии...
Человек, чья фамилия подчеркнута, отвечает за полученное задание и координирует работу группы


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск