Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
_5.doc
Скачиваний:
10
Добавлен:
07.11.2018
Размер:
371.2 Кб
Скачать
    1. Унифицированный язык моделирования uml

В начале 90-х годов из всего множества языков объектно-ориентированного анализа и проектирования выделились три, наиболее часто используемых при разработке систем: Booch, созданный Грейди Бучем, OOSE (Object-Oriented Software Engineering), разработанный Айваром Джекобсоном и OMT (Object Modeling Technique), автором которого является Джеймс Рамбо. Каждый из этих методов является вполне законченным языком ООП, однако, метод BOOCH особенно удобен на этапах проектирования модели, OOSE – на этапе анализа и формулирования требований, а OMT – удобен при проектировании СУБД. Создание языка, объединяющего достоинства эти трёх методов началась в начале 1995 года, когда эти три автора объединили свои методы для создания унифицированного языка для фирмы Rational Software. В 1997 году была принята версия UML 1.1, взятая на вооружение всеми компаниями производителями систем автоматизированного проектирования. В 2001 году появилась версия 2.0. В настоящее время идёт утверждение UML в качестве стандарта ISO.

      1. Концептуальная модель uml

Словарь UML включает три основных блока:

  • сущности;

  • отношения;

  • диаграммы.

Сущность – это основные структурные блоки языка. UML имеет четыре типа сущностей:

  • структурные;

  • поведенческие;

  • группирующие;

  • аннотационные.

Структурные сущности – это имена существительные, представляющие статические части модели, соответствующие физическим элементам системы. Среди них можно выделить следующие.

Класс – описание совокупности объектов с общими атрибутами, операциями, отношениями и семантикой.

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

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

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

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

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

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

Для вышеперечисленных сущностей существуют разновидности:

  • классы – актёры, сигналы, утилиты;

  • компоненты – приложения, документы, файлы, страницы, таблицы.

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

Взаимодействие – поведение, заключающееся в обмене сообщениями.

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

Группирующие сущности являются организующими частями модели. Это блоки, на которые можно разложить модель.

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

Аннотационные сущности используются для дополнительного описания или замечания к любому элементу.

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