Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Понятия и компоненты



Сущности представляются парами «тип, экземпляр». Таких пар несколько: «класс, объект», «ассоциация, связь», «параметр, значение», «операция, вызов процедуры». Для изображения элементов этих пар на диаграммах обобщение и конкретный экземпляр геометрически представляются одинаково.

Для всех типов диаграмм существует ряд общих элементов:

- строки - последовательности литералов, которые могут включать в себя практически любые символы, могут объединяться в параграфы, и среди строк выделяют:

- имена, которые располагаются в специально отведенных местах элементов диаграмм;

- пути, которые локализуют соответствующий элемент в иерархии описаний;

- метки, которые несут дополнительную информацию об элементе, располагаются вблизи объекта и составляют с ним единое целое;

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

- типы – аналог класса, т.к. разница между типом и классом условна, но UML различает эти два понятия, определяя, что атрибуты, переменные и параметры могут принадлежать к определенному типу. Сами типы не определяются, хотя предполагается, что они могут быть и предопределенными, и пользовательскими. Можно создать специальный класс «ТуреЕхргеssion» и поместить туда все необходимые определения и правила.

Основные компоненты UML включают описание семантики UML, его графической нотации и дополнительных понятий, позволяющих расширить смысл основных понятий языка. Документация по UML содержит подробное описание этих компонентов и вместе с формальным описанием UML в виде семи pdf-файлов и представлена на сайте Rational Software (www.rational.com).

Изучение UML следует начинать с изучения его графических образов (Notition Guide). Система представляется в виде объединения нескольких проекций. Каждая проекция описывает определенный аспект разрабатываемой системы, а вместе они определяют систему во всей ее полноте. Эти проекции представляются диаграммами:

- диаграммы классов (class diagrams);

- диаграммы вариантов использования (use case diagrams);

- диаграммы взаимодействия (ineraction diagrams);

- диаграммы последовательности (seguence diagrams);

- кооперативные диаграммы (collaboration diagrams);

- диаграммы состояний (state diagrams);

- диаграммы деятельностей (activity diagrams).

- диаграммы реализации (implementation diagramms);

- компонентные диаграммы (component diagramms);

- диаграммы применения (развертывания) (deployment diagramms).

Назначение диаграмм следующее.

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

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

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

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

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

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

Диаграммы состояний показывают последовательность состояний, в которых может оказаться объект в зависимости от происходящих событий. Диаграммы состояний описывают состояние только одного класса или объекта.

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

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

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

Рассмотрим пример. Представим упрощенную модель автомобиля с массой m, как груз на пружине жесткости C. Груз движется с заданной постоянной горизонтальной скоростью V по дороге, имеющей профиль y=y(x), вторая производная которого известна. Предполагается, что колесо от дороги не отрывается, и колебания груза происходят только в вертикальной плоскости, как показано на рис 9.1.

Рис. 9.1

Составим уравнения движения автомобиля в подвижной системе координат (e,h), начало которой жестко связано с центром колеса. Ось e совместим с вертикальной осью подвески, а ось h расположена на расстоянии L от профиля дороги, т.е. L ‑ высота расположения центра тяжести груза при его относительном покое. При движении по неровности абсолютная вертикальная координата y1 начала подвижной координатной системы определяется выражением y1=y(x)+L+e. Переносное вертикальное w при постоянной скорости V, x=Vt определится по формуле

,

а переносная сила инерции груза Q определится по формуле

.

Получим уравнение

.

Способ задания профиля дороги поясняется на рис. 9.2. Горизонтальная часть участка y=0, 0£x£l1 сменяет участок подьема y=H1(1-exp(-g1x)), l1£x£l2, за которым следует спуск y=H2(exp(-g2x)), l2£x£l3. Затем профиль дороги повторяется.

Рис. 9.2

Длины l1, l2 и l3, коэффициенты подъема и спуска g1 и g2, высоты H1 и H2 являются задаваемыми величинами. Высота Hmax является предельно допустимой. Если автомобиль превышает эту высоту, то подаетя сигнал опасности и скорость автоматически уменьшается на заданную величину. Если тряска (модуль первой производной) превышает заданную величину, то также вырабатывается сигнал опасности и скорость автоматически уменьшается на заданную величину. Если на протяжении заданного интервала времени Т сигналы тревоги не вырабатываются, то автомтическая система управления повышает скорость на заданную величину.

Рассмотрим задачу создания тренажера для обучения водителя управлять движением автомобиля по дорогам с разными профилями. Водитель должен научиться выбирать скорость после получения соответствующих сигналов, двигаясь по дорогам с различным профилем (Hi, Hmax, gi, li) на различных автомобилях (m, С).

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

,

где Q(t) - некоторое заданное возмущение, зависящее от скорости движения.

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

Диаграммы вариантов использования

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

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

Вариант использования представляет собой типичное взаимодействие пользователя и компьютерной системы и решает дискретную задачу пользователя. Каждый вариант использования - это потенциальное требование к системе. Нотация варианта использования не должна содержать в себе подробные описания, достаточно несколькими предложениями описать выдвигаемое требование. На рис. 3.3 представлена диаграмма вариантов использования для рассматриваемого примера.

Рис. 9.3

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

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

- ученики, которые могут выбирать автомобиль и трассу;

- испытатели, имеющие право выбирать значения параметров трассы.

Рассмотрим связи в диаграмме вариантов использования. Значимыми являются следующие связи (см. рис. 9.3, рис. 9.4):

- коммуникация (communicatas) показывает участие действующего лица в варианте использования, соединяя символ действующего лица с символом варианта использования сплошной линией;

- расширение (extends) - линия со стереотипом «extends», с незаполненной стрелкой на конце, соединяет базовый вариант использования с расширяющим его вариантом использования. Конец с незаполненной стрелкой указывает на вариант использования, являющийся расширением базового варианта. Такой тип связи используется, если один вариант использования подобен другому, но несет дополнительную нагрузку. Удобно использовать такой тип связи при описании обработки аварийных ситуаций, возникающих в системе, чтобы не перегружать основной вариант использования, описывающий нормальное поведение системы, излишней логикой (см. рис. 9.4);

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

На рис. 9.4 поясняется, чем отличается вариант использования испытателя от варианта использования ученика.

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

Рис. 9.4





Дата публикования: 2014-11-18; Прочитано: 381 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...