Моделирование систем

Автор: Пользователь скрыл имя, 06 Декабря 2012 в 10:53, курсовая работа

Описание работы

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

Содержание

Введение…………………………………………………………………………………………..5
1. Концептуальная модель разработки Интернет-магазина "Vipcom"……………..………….6
2. Графический язык моделирования UML……………………………………………………..9
3. Построение диаграмм для Интернет-магазина "Vipcom"………………………..…………13
3.1. Диаграмма вариантов использования……………………………………………...13
3.2. Диаграмма классов……………………………………………………………….….16
3.3. Диаграмма состояний………………………………………………………...….…..22
3.4. Диаграмма деятельности………………………………………………………….....24
3.5. Диаграмма последовательности………………………………………………..…...27
Заключение……………………………………………………………………………………..…33
Список использованных источников и литературы

Работа содержит 1 файл

курсовая.docx

— 659.07 Кб (Скачать)

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

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

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

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

На  рисунке 3 представлена диаграмма состояний для Интернет-магазина "Vipcom".

Рисунок 3 – Диаграмма состояний для Интернет-магазина "Vipcom".

 

Итак, пользователь заходит на главную (стартовую) страницу сайта и выбирает тип поиска товара – по наименованию, категории или производителю. Затем выбирает товар, просматривает информацию о нем. Если пользователю понравился товар, он помещает его в корзину, далее он может продолжить поиск товаров, либо оплатить, понравившейся ему товар. Чтобы оплатить товар пользователь выбирает вид оплаты – электронные деньги (web-many) или банковская карта. Вводит данные карты, если данные введены неверно, система сообщает об ошибке и предлагает ввести заново данные о карте. Если введенные данные верны, то приступает к оформлению доставки. На каждом этапе пользователь может вернуться на предыдущий уровень.

 

3.4. Диаграмма деятельности.

 

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

Диаграмма деятельности   отличается от традиционной блок-схемы:

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

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

Разработка диаграммы деятельности преследует цели: 

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

Графически  диаграмма деятельности представляется в форме графа деятельности, вершинами  которого являются состояния действия или состояния деятельности, а  дугами — переходы от одного состояния  действия (деятельности) к другому.  Каждая диаграмма деятельности должна иметь единственное начальное и единственное конечное состояния.

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

Рассмотрим основные элементы диаграммы деятельности.

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

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

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

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

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

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

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

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

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

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

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

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

На  рисунке 4 представлена диаграмма деятельности для Интернет-магазина "Vipcom".

Рисунок 4 – Диаграмма  деятельности для Интернет-магазина "Vipcom".

 

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

 

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

 

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

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

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

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

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

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

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

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

Информация о работе Моделирование систем