Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

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

Работа добавлена на сайт samzan.net:



ЦЕЛЬ РАБОТЫ

Изучения архитектурных инструментов в MS Visual Studio 2010. Моделирование программного обеспечения.


КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ

Простые потоки управления

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

Фигура

Элемент

Описание и основные свойства

1

Действие

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

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

  •  Body — задает действие в подробностях.
  •  Language — язык выражения в свойстве Body.
  •  Local Postconditions — ограничения, которые должны быть удовлетворены по завершении выполнения. Цель, достигаемая действием.
  •  Local Preconditions — ограничения, которые должны быть удовлетворены до начала выполнения.

2

Поток управления

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

Чтобы создать поток управления, используйте средство Соединитель.

3

Начальный узел

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

4

Конечный узел действия

Окончание действия. По прибытии токена действие завершается.

5

Узел решений

Условная ветвь в потоке .Имеет один вход и два или более выходов. Входящий токен появляется только на одном из выходов.

6

Условие

Условие, которое задает, может ли токен проходить вдоль соединителя. Чаще всего используются на исходящих потоках узла решений.

Чтобы задать условие, щелкните поток правой кнопкой мыши, выберите Свойства и задайте свойство Условие.

7

Узел слияния

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

8

Комментарий

Предоставляет дополнительные сведения об элементах, с которыми связан.

9

Действие вызова поведения

Действие, которое определяется более подробно на другой схеме активности.

  •  IsSynchronous — если значение true, действие ожидает завершения активности.
  •  Behavior — вызванное действие.

(не показана)

Действие вызова операции

Действие, которое вызывает операцию для экземпляра класса.

Действия

Поток работ, описываемый схемой активности .Чтобы просмотреть свойства действия, необходимо выбрать его в Обозревателе моделей UML.

  •  Is Read Only — если значение true, действие не должно изменять состояние ни одного объекта.
  •  Is Single Execution — если значение true, одновременно возможно только одно выполнение этой схемы.

UML-схема активности

Эта схема отображает действие. Чтобы просмотреть ее свойства, щелкните пустую область схемы.

Параллельные потоки

Можно описать последовательности действий, выполняемых одновременно. Дополнительные сведения:

Фигура

Элемент

Описание

11

Вилочный узел

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

12

Узел присоединения

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

13

Действие отправки сигнала

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

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

14

Действие события принятия

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

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

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

  •  IsUnmarshall — если значение true, может существовать несколько типизированных закреплений вывода, и данные распаковываются в них. Если значение false, все данные отображаются в одном закреплении.

Потоки данных

Можно описать поток данных из одного действия в другое.

Фигура

Элемент

Описание

15

Узел объекта

Представляет данные, передаваемые в потоке.

  •  Ordering — способ хранения нескольких токенов.
  •  Selection — вызывает процесс фильтрации данных, который можно определить на другой схеме.
  •  Upper Bound — 0 означает, что данные должны передаваться в потоке напрямую; * означает, что данные можно хранить в потоке.
  •  Type — тип хранимых и передаваемых объектов.

16

Закрепление ввода

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

  •  Type — тип переданных объектов.

17

Закрепление вывода

Представляет данные, которые действие создает при выполнении.

  •  Type — тип переданных объектов.

18

Узел параметра действия

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

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

  •  Type — тип переданных объектов.

(не показана)

Поток объектов

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

Чтобы создать поток объектов, нужно использовать средство Соединитель для связи закрепления ввода или вывода либо узла объекта с другим элементом.

  •  Selection — вызывает процесс фильтрации данных, который можно определить на другой схеме.
  •  Transformation — вызывает преобразующий данные процесс, который можно определить на другой схеме.
  •  IsMulticast — указывает на возможность существования нескольких получающих объектов или компонентов.
  •  IsMultiReceive — указывает на возможность получения входных данных из нескольких объектов или компонентов.

Основные этапы создания схем активности

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

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

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

Создайте Действие (1) для каждой основной задачи, выполняемой пользователем, системой или ими обоими.

Примечание

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

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

Свяжите действия в последовательность с помощью Соединителей (2).

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

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

Описание решений и циклов

Узел решения (3) используется, чтобы указать точку, в которой результат решения определяет следующий шаг.Можно добавить любое количество исходящих путей.

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

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

Узел слияния (5) используется для объединения двух или нескольких альтернативных потоков, ветвящихся в Узле решения.

Примечание

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

Циклы можно описывать с помощью ветвей, как показано в примере.

Примечание

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

Запуск действия

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

Начальный узел

Создайте один Начальный узел (6), чтобы указать первое действие действия.

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

Узел события получения

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

Этот метод особенно полезен, если нужно описать ответ на определенное внешнее событие.

Завершение действия

Используйте Конечный узел действия (7), чтобы обозначить конец действия.

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

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

Прерывание действия

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

Дорожки

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

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

Чтобы подписать дорожку, создайте примечание и присвойте его свойству Прозрачный значение True.

Простые фигуры не являются частью UML-модели и не отображаются в обозревателе моделей UML.

Описание потока данных

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

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

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

Примечание

Общие сведения об элементах, используемых в этом разделе, см. в части "Потоки данных" раздела UML-схемы деятельности: справочные материалы.

Описание потока данных с помощью узлов объектов

Большинство потоков управления передает данные. Например, выходной поток действия "Клиент предоставляет сведения" передает ссылку на адрес поставки.

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

Обратите внимание, что прямоугольники с закругленными углами, например Dispatch Goods (отправка товаров), представляют действия, в которых происходит обработка. Прямоугольники с прямыми углами, например Shipment Address (адрес поставки), представляют потоки объектов из одного действия в другое.

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

Тип узла объекта можно задать в окне свойств. Это может быть примитивный тип, например Integer, или класс, интерфейс или перечисление, определенные на схеме классов. Например, можно создать класс Shipment Address (адрес поставки) с атрибутами Street Address (улица), City (город) и так далее, связав его с другим классом под названием Customer (клиент).

Примечание

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

Буферизация данных в узлах объектов

Узел объекта может действовать как буфер для нескольких объектов. На следующем рисунке поток управления показывает, что пользователь может пройти цикл [choose more] (выбрать еще) (1) много раз, а узел объекта Chosen Menu Items (выбранные элементы меню) (2) накапливает решения пользователя. Наконец, когда пользователь завершает выбор, управление передается действию Confirm Order (подтверждение заказа) (3), которое принимает полный список решений из буфера Chosen Menu Items.

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

Установите следующие значения для свойства Упорядочение.

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

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

Fifo, чтобы задать порядок "первое на входе — первое на выходе".

Lifo, чтобы задать порядок "последнее на входе — первое на выходе".

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

Описание потока данных с помощью закреплений ввода и вывода

С помощью Закрепления вывода и Закрепления ввода можно отдельно описать вывод из одного действия и ввод в другое.

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

Соединитель между двумя закреплениями представляет поток объектов, как и потоки из и в узел объекта.

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

Можно задать тип передаваемых объектов в свойстве Тип. Это должен быть тип, созданный на UML-схеме классов.

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

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

Более подробное определение действий

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

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

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

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

Описание вложенных действий с помощью действий вызова поведения

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

На следующем рисунке Diagram 1 (схема 1) показывает действие, содержащее действие вызова поведения, а Diagram 2 (схема 2) показывает схему вложенного действия, отображающую вызываемое поведение.

Описание вложенных действий с помощью действий вызова поведения

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

В диалоговом окне Добавление нового элемента в разделе Шаблоны щелкните пункт Схема активности и в поле Имя введите имя Действия вызова поведения.

Подробно изобразите рабочий процесс вложенного действия. Это называется вызываемым поведением.

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

Установите для свойства Поведение действия Действие вызова поведения значение ссылки на схему вызываемого поведения.

Примечание

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

Установите для свойства Является синхронным действия значение, указывающее, ожидает ли действие завершения вызванного действия.

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

Описание потоков данных, входящих и исходящих из вложенных действий

Описание данных, передаваемых в и из вложенных действий, сходно с использованием параметров в программном обеспечении.

Создайте закрепления ввода и вывода (1) для действия вызванного поведения для каждого фрагмента данных, передаваемого в или из действия. Назовите их.

На схеме вложенного действия создайте Узел параметра действия (2) для каждого закрепления ввода и вывода вызывающего действия. Присвойте каждому узлу имя, совпадающее с именем соответствующего закрепления.

Примечание

Узел параметра действия похож на узел объекта. Чтобы проверить тип узла, щелкните правой кнопкой мыши узел и нажмите кнопку Свойства. Тип узла отображается в заголовке окна свойств.

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

Определение постусловий и предусловий

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

Чтобы установить эти свойства, щелкните правой кнопкой мыши действие и нажмите кнопку Свойства. Введите значения свойств в окне свойств.

Локальные постусловия

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

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

Постусловие может выражать отношение между состояниями до и после выполнения действия. Пример.

Процентная ставка удвоилась.

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

InvoiceTotal == Sum(OrderItem.MenuItem.Price)

Локальные предусловия

Предусловие — это условие, которое должно быть удовлетворено в момент начала действия. Например, у действия Confirm Order (подтверждение заказа) может быть следующее предусловие.

Пользователь выбрал хотя бы один элемент из меню.

Описание вызовов к операциям

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

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

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

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

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

Параллельные потоки

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

Узел ветвления (1) разделяет поток управления на два или более потока. После завершения предыдущего действия могут запускаться все действия на выходе ветвления.

Соединительный узел (2) объединяет параллельные потоки. Действие после Соединительного узла не может начаться до завершения всех действий, входящих в Соединительный узел.

Описание сигналов и событий

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

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

Отправка сигнала

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

Управление немедленно передается следующему действую в потоке управления (при его наличии).

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

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

Ожидание сигнала или события

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

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

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

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

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

Описание нескольких потоков данных

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

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

После завершения действия "Customer provides details" (клиент предоставляет сведения) оно создает два объекта: "Shipment address" (адрес доставки) и "Credit card details" (сведения о кредитной карте). Эти два объекта затем обрабатываются различными действиями.

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

Потоки

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

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

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

1.В данном примере — три узла параметра действия, представляющие его вводы и выводы.

2.Узлы объектов и закрепления ввода и вывода могут представлять буферы.Можно задать свойство "верхняя граница" узла объектов, чтобы ограничить число объектов, одновременно находящихся в буфере.

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

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

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

Выделение и преобразование

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

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

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

В примере показано преобразование. Первое действие на Diagram 1 (схеме 1) создает почтовый индекс на закреплении вывода. Он соединен с закреплением ввода второго действия. Однако второе действие ожидает полный адрес. Преобразование из одного типа в другой задано во втором действии, Address Lookup (поиск адресов).На него ссылается свойство "преобразование" потока объектов. Действие Address Lookup содержит один узел параметра действия для входящего почтового индекса и второй узел параметра действия для исходящего полного адреса.

Преобразование или выбор можно задать одним из двух способов.

Присоединить примечание к закреплению ввода или вывода.

Чтобы отличить это описание от обычного примечания, начните его со слова <<преобразование>> или <<выбор>>.

Описать преобразование или выбор подробнее на отдельной схеме активности.

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

Описание преобразования или выбора на отдельной схеме активности

Создайте новую схему активности для описания потока преобразования или выбора.

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

На новой схеме выполните следующие действия.

Создайте два узла параметра действия, один для входящего потока, второй для вывода.

Создайте действия, связанные потоками объектов. Это показывает, как работает преобразование или выбор.

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

Создайте поток объектов, то есть соединитель в или из закрепления ввода или вывода, узел объектов или узел параметра действия.

Щелкните поток объектов правой кнопкой мыши и выберите пункт Свойства.

В свойстве Преобразование или Выделение выберите схему, на которой определяется поток преобразования или выбора.

Можно также определить выбор для узла объекта и отдельных закреплений ввода и вывода. Определите действие выбора, как в предыдущей процедуре, и установите свойство Выделение узла объекта или закрепления ввода или вывода.


Чтение схем последовательностей

Фигура

Элемент

Описание

1

Линия жизни

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

2

Субъект

Участник, являющийся внешним по отношению к разрабатываемой системе.

Можно заставить символ субъекта отображаться в верхней части линии жизни, задав ее свойство Субъект.

3

Синхронное сообщение

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

4

Асинхронное сообщение

Сообщение, не требующее ответа перед продолжением работы отправителя. Асинхронное сообщение показывает только вызов от отправителя. Используется для представления связи между отдельными потоками или создания нового потока.

5

Вхождение выполнения

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

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

6

Сообщение обратного вызова

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

7

Исходное сообщение

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

8

Создайте сообщение

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

9

Найти сообщение

Асинхронное сообщение от неизвестного или не указанного участника.

10

Потерянное сообщение

Асинхронное сообщение неизвестному или не указанному участнику.

11

Комментарий

Примечание можно подключить к любой точке линии жизни.

12

Использование взаимодействия

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

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

13

Объединенный фрагмент

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

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

14

Фрагмент условия

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

Чтобы задать условие, выберите фрагмент, выберите условие и введите значение.

Взаимодействие

Коллекция сообщений и линий жизни, которая отображается в схеме последовательности. Чтобы просмотреть свойства взаимодействия, необходимо выбрать его в Обозревателе UML-модели.

Схема последовательностей

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

  1.  

Создание схемы последовательностей

  1.  Перетащите Линии жизни (1) из Панели элементов на схему, чтобы представить экземпляры классов, компонентов, субъектов или устройств.

Примечание

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

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

Чтобы создать сообщение (3, 4, 6, 7) щелкните инструмент создания сообщений. Затем щелкните отправляющую линию жизни в том месте, где необходимо начать сообщение, и щелкните получающую линию жизни.

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

  1.  Чтобы показать сообщение, поступающее из неизвестного источника события (9) или передает данные неизвестным получателям (10), создайте асинхронное сообщение из или в пустое пространство на схеме. Эти сообщения называются найденные сообщения (9) и утерянные сообщения (10).

Примечание

Чтобы переместить группу линий жизни, имеющих утерянные или найденные сообщения, выполните следующие действия, чтобы выделить линии жизни перед перемещением: нарисуйте прямоугольник вокруг этих линий жизни, либо нажмите и удерживайте клавишу CTRL и последовательно щелкните каждую линию жизни. Если для выбора и перемещения всех линий жизни использовать команду Выделить все или сочетание клавиш CTRL+A, утерянные или найденные сообщения, прикрепленные к этим линиям жизни, не будут перемещены. В этом случае сообщения можно переместить отдельно.

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

Изменение порядка сообщений

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

- или -

  •  Щелкните сообщение и используйте клавиши СТРЕЛКА ВВЕРХ и СТРЕЛКА ВНИЗ, чтобы скорректировать положение сообщений. Используйте сочетания клавиш SHIFT+СТРЕЛКА ВВЕРХ и SHIFT+СТРЕЛКА ВНИЗ, чтобы изменить последовательность сообщений.

Перемещение или копирование последовательностей сообщений на схеме последовательностей

  1.  Щелкните сообщение (3, 4) правой кнопкой мыши и выберите Копировать.
  2.  Щелкните правой кнопкой мыши вхождение выполнения (5) или линию жизни, из которой необходимо отправить новое сообщение, и выберите Вставить. При необходимости нового отправителя можно изобразить на другой схеме.

Копия сообщения и все его дочерние сообщения добавляются в окончание вхождения выполнения или в окончание линии жизни.

Примечание

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

Оптимизация размещения элементов на схеме последовательностей

  •  Щелкните правой кнопкой мыши пустую область схемы и выберите Изменить порядок размещения.
  •  Чтобы отменить операцию, последовательно щелкните Изменить и Отменить.

Изменить пакет, владеющий взаимодействием

  1.  В Проводнике по моделям UML найдите взаимодействие, отображаемое на схеме последовательностей.

Примечание

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

  1.  Перетащите взаимодействие в пакет.

- или -

Щелкните взаимодействие правой кнопкой мыши и выберите Вырезать. Щелкните пакет правой кнопкой мыши и выберите Вставить.

Создание и использование простых схем последовательностей

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

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

Типы сообщений

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

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

Стрелка <<return>> отображается в конце вхождения выполнения. Она обозначает, что контроль над взаимодействием возвращается отправителю.

  •  Используйте инструмент Асинхронная работа, чтобы описать взаимодействие, в ходе которого отправитель может продолжать выполнять действия немедленно, не дожидаясь получателя (4).
  •  Используйте инструмент Создать, чтобы описать взаимодействие, в ходе которого получатель (8) создается отправителем.

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

Создание заметок о взаимодействиях

Чтобы описать последовательность более подробно, можно разместить Комментарий в любом месте схемы.

Используя Ссылки комментария, можно связать комментарий с линиями жизни, выполнениями, использованиями взаимодействия и фрагментами.

Внимание

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

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

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

Определение области действия схемы

Очень важно четко обозначить, что должно отображаться на схеме.

Инициирующее событие

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

  •  Пользователь, инициирующий вариант использования (например, открывающий веб-страницу для покупки еды).
  •  Сообщение от одного системного компонента другому, например, с запросом о доступности пунктов, которые желает приобрести клиент.
  •  Событие, инициируемое изменением состояния, например, если уровень запасов определенного товара падает ниже порогового значения.

Уровень детализации

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

Линии жизни могут представлять один из уровней детализации.

  •  Объекты в существующем или разрабатываемом программном коде.
  •  Компоненты и их субкомпоненты, как правило, без видов, посредников и других соединительных механизмов.
  •  Система и внешние субъекты

Сообщения могут представлять один из уровней детализации.

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

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

Описание вариантов

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

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

Оценка конструкции

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

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

Классы и линии жизни

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

Для этого

Используйте этот формат

Анонимный экземпляр типа.

Используйте его, если для каждого типа имеется только одна линия жизни.

typeName

именованный экземпляр типа.

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

objectName:typeName

Создание линий жизни из типов

Из уже определенных классов (например, на схеме классов) можно создавать новые линии жизни.

Примечание

Прежде всего убедитесь, что в системе имеется схема последовательностей.

Создание линии жизни из существующего типа

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

- или -

  1.  На соответствующей схеме щелкните класс, компонент или интерфейс правой кнопкой мыши и выберите Создать линию жизни.
    1.  В диалоговом окне Создать линию жизни выберите схему последовательностей и нажмите кнопку ОК.

Отобразится новая линия жизни с именованным экземпляром. Типом этой линии жизни является перемещенный тип.

Примечание

Это действие можно повторять неограниченное количество раз.Это позволяет создать линии жизни с разными именами экземпляров.

Изменение типа линии жизни

  1.  Щелкните линию жизни правой кнопкой мыши и выберите Свойства.
  2.  В окне Свойства задайте значение для свойства Тип. Можно выбрать тип из раскрывающегося меню или указать новое имя.

Создание классов из линий жизни

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

Создание класса или интерфейса из линии жизни

  1.  Щелкните линию жизни правой кнопкой мыши и выберите Создать класс или Создать интерфейс.

В Проводнике по моделям UML отображается новый класс или интерфейс.

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

Новый класс или интерфейс имеет операции для каждого выделенного сообщения.

Имя операции отображается под стрелкой каждого сообщения и в свойстве сообщения Операция.

Если сообщение включает параметры в форме "(параметр : тип)", они отобразятся в списке параметров новой операции.

Примечание

Если в схему последовательностей добавляются новые сообщения, этот шаг необходимо повторить.

  1.  Чтобы просмотреть подробные сведения о новом классе или интерфейсе, добавьте его в схему классов или компонентов.
    1.  Откройте или создайте схему классов или компонентов.
    2.  Перетащите новый класс или интерфейс из Проводника по моделям UML на схему классов.

Класс или интерфейс появится на схеме классов.

- или -

  1.  Перетащите новый интерфейс из Проводника по моделям UML на компонент или порт на схеме компонентов.

Интерфейс отображается в компоненте в качестве обозначения без описания операций.

Создание классов параметров

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

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

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

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

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

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

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

Использование взаимодействия отображается напротив выбранных линий жизни на схеме последовательностей.

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

- или -

Напишите имя в качестве вызова функции, укажите параметры.

  1.  Свяжите использование взаимодействия с другой схемой последовательностей. Щелкните использование взаимодействия правой кнопкой мыши и выполните одно из следующих действий.

Щелкните Создать новую последовательность, чтобы создать новую схему последовательностей.

- или -

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

Visual Studio создает связь между использованием взаимодействия и новой последовательностью взаимодействия.

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

Примечание

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

Создание последовательности с возможностью повторного использования из существующих сообщений

  •  Щелкните сообщение, которое необходимо переместить, правой кнопкой мыши и выберите Перенести на схему.

Visual Studio:

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

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

  •  Дважды щелкните использование взаимодействия.

- или -

Щелкните использование взаимодействия правой кнопкой мыши и выберите Перейти к последовательности.

Создание заполнителя с использованием взаимодействия

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

Сворачивание групп линий жизни

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

Сворачивание группы линий жизни

  1.  Выберите две или более линий жизни.
  2.  Щелкните одну из них правой кнопкой мыши и выберите Свернуть.

Несколько линий жизни заменяются одной.

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

  1.  Щелкните имя, чтобы переименовать группу.

Примечание

Если развернуть группу, имя группы будет утеряно.

Разворачивание свернутой группы

  •  Щелкните свернутую линию жизни правой кнопкой мыши и выберите Развернуть.

Примечание

Имя группы будет утеряно, равно как и любые ссылки группы на комментарии или рабочие элементы.

Описание структур управления с помощью фрагментов

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

Создание объединенного фрагмента

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

Примечание

Выделите стрелки сообщений, а не вхождения выполнения, на которые указывают сообщения.

  1.  Щелкните правой кнопкой мыши одно из сообщений, выберите Разместить во фрагменте, затем щелкните требуемый тип фрагмента.

Отображается новый фрагмент. В нем содержатся выбранные сообщения.

Если тип объединенного фрагмента допускает наличие нескольких фрагментов, отображается также пустой фрагмент.

  1.  Чтобы задать условие для фрагмента, щелкните границу фрагмента правой кнопкой мыши и выберите Свойства. Задайте значение для свойства Условие.

Условие используется для определения требований к ветви или циклу.

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

Создание схем последовательностей из кода

В файле кода Visual C# или Visual Basic можно создать схему последовательностей из определения метода.

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

Создание схемы последовательностей из кода

  1.  В Visual Studio откройте файл кода, который содержит определение метода.
  2.  Щелкните правой кнопкой мыши в любом месте определения метода и выберите Создать схему последовательностей.

Примечание

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

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

Переход от созданных линий жизни и сообщений к коду

  •  Щелкните созданную линию жизни или сообщение правой кнопкой мыши и выберите Перейти к определению.

Копирование созданных последовательностей в UML-модель

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

Копирование созданной схемы последовательностей в модель UML или из нее

  1.  На схеме последовательностей выделите элементы, которые необходимо скопировать, например линии жизни и сообщения. Если необходимо скопировать все элементы схемы, щелкните Выделить все в меню Правка.
  2.  В меню Правка выберите Копировать.
  3.  Создайте или откройте схему последовательностей в проекте моделирования. Сведения о том, как это сделать.
  4.  В меню Правка выберите Вставить.

Копии выделенных элементов отображаются на схеме.


ХОД РАБОТЫ

  1.  Построить диаграммы активности и последовательности по индивидуальному заданию;
  2.  Написать отчет о проделанной работе.


ВАРИАНТЫ ИНДИВИДУАЛЬНЫХ ЗАДАНИЙ

  1.  Игра «Расширенные крестики нолики»;
  2.  Игра «Точки»;
  3.  Игра «Морской бой»;
  4.  Игра «Шашки»;
  5.  Игра «Шахматы»;
  6.  Игра «Домино»;
  7.  Игра «Нарды»;
  8.  Игра «Лото»;
  9.  Игра «Кости»;
  10.  Игра «Висельник»;
  11.  Игра «Карточный дурак»;
  12.  Игра «Покер»;
  13.  Игра «21»;
  14.  Игра «1000»;
  15.  Игра «Косынка»;
  16.  Игра «Солитер»;
  17.  Игра «Паук»;
  18.  Игра «Червы»
  19.  Игра «Трубопровод»;
  20.  Игра «Сапер»;
  21.  Игра «Собрать пазл»;
  22.  Игра «Сокобан»;
  23.  Игра «Охотник на уток»;
  24.  Игра «Тетрис»;
  25.  Игра «Цветной тетрис»;
  26.  Игра «Волк и яйца»;
  27.  Игра «Космические рейнджеры»;
  28.  Игра «Лабиринт на время»;
  29.  Игра «Маджонг»;
  30.  Игра «Танки»;

Вариант выбирается согласно номеру в журнале (спросить у старосты группы);


СОДЕРЖАНИЕ ОТЧЕТА

  1.  Ф.И.О., группа, название лабораторной работы.
  2.  Цель работы.
  3.  Результаты выполнения лабораторной работы.
  4.  Выводы.

Отчет и исходные коды запаковать в архив с названием по следующему шаблону:

Lab2.4-«группа, абревиатру на латинице»-«Фамилия на латинице»

Пример: Lab2.4-10CN-Ivanov.zip

ИСПОЛЬЗУЕМЫЕ ИСТОЧНИКИ

  1.  UML-схемы последовательностей: правила работы
  2.  UML-схемы последовательностей: справочные материалы
  3.  UML-схемы деятельности: рекомендации
  4.  UML-схемы деятельности: справочные материалы


Полоцкий государственный университет

Кафедра ВС и С

012

Методические указания

для выполнения

лабораторной работы № 2.4 

по курсу ООП

«Visual Studio 2010

UML моделирования проектов»

Диаграмма деятельности и последовательности

  1.  



1. Интеграл и его свойства
2. тема концептуально оформлених політичних правових релігійних естетичних і філософських уявлень поглядів
3. продаж за зразками формуються ціни а також здійснюється торгівля цінними паперами та іноземною валютою
4. Реферат- Применение программного комплекса Electronics Workbench для разработки радиоэлектронных устройств.html
5. Методические рекомендации для практических занятий Тема- Сепсис как особая форма инфекции
6. управляемое технологическое оборудование с высоким уровнем автоматизации широкими технологическими возмо
7. Об ответственности за нарушение порядка представления Государственной статистической отчетности
8. Развитие читательского интереса младших школьников во внеурочной деятельности
9. тема сострадания18 Заключение
10. Содержание образования как средство развития личности и формирования её базовой культуры
11. Строительство специальности- 270205 Автомобильные дороги и аэродромы 270105 Городское строител
12. Эволюция человеческого фактора в экономической науке
13. Сторонами агентского договора являются принципал и агент
14. вариант ~ это то что все мы воспринимаем
15. реферат диссертации на соискание ученой степени кандидата педагогических наук Кр
16. Гидра
17. Преобразования в области культуры в первой четверти XVIII века1
18. Размышления о Всероссийском конкурсе Учитель года
19. Реферат- Принципы создания культурных ландшафтов и их рациональное использовани
20. Инвестиционный проект производства молочных конфет производственной мощностью 500 тонн в год