Файл: Моделирование предметной области «Управление персоналом» с помощью UML..pdf
Добавлен: 04.04.2023
Просмотров: 99
Скачиваний: 2
Диаграммы состояний определяют все возможные состояния, в которых может находится конкретный объект, а также процесс смены состояний объекта в результате наступления некоторого события. Существует много форм диаграмм состояний, незначительно отличающихся друг от друга семантикой.
Таблица 2
Условные обозначения диаграммы состояний
Условное обозначение |
Описание условного обозначения |
начальное состояние, не содержит никаких внутренних действий, в этом состоянии находится объект по умолчанию в начальный момент времени |
|
конечное состояние, который также не содержит никаких внутренних действий. В этом состоянии будет находиться по умолчанию после завершения работы в конечный момент времени. Оно служит для указания графической области, в которой завершается процесс изменения состояния |
|
Состояние |
|
Переходом (transition) называется перемещение объекта из одного состояния в другое |
|
Рефлекторный переход |
На диаграмме состояний может быть одно и только одно начальное состояние. В то же время может быть столько конечных состояний, сколько вам нужно, или их может не быть вообще. Когда объект находится в каком-то конкретном состоянии, могут выполняться различные процессы.
Процессы, происходящие в этот момент, когда объект находится в определенном состоянии, называются действиями (actions).
С состоянием можно связывать следующие данные: деятельность, входное действие, выходное действие и событие.
Деятельность (activity) - это поведение, реализуемое объектом, пока он находится в данном состоянии. Деятельность изображают внутри самого состояния; ее обозначению должно предшествовать слово do (делать) и двоеточие.
Входное действие (entry action) - это поведение, которое выполняется, когда объект переходит в данное состояние. Входное действие также показывают внутри состояния, его обозначению предшествуют слово entry (вход) и двоеточие.
Выходное действие (exit action) подобно входному. Однако оно осуществляется как составная часть процесса выхода из данного состояния. Выходное действие изображают внутри состояния, его описанию предшествуют слово exit (выход) и двоеточие.
Переходом (transition) называется перемещение объекта из одного состояния в другое. На диаграмме все переходы изображают в виде стрелки, начинающейся на первоначальном состоянии и заканчивающейся последующим.
Переходы могут быть рефлексивными. Объект может перейти в то же состояние, в котором он в настоящий момент находится. Рефлексивные переходы изображают в виде стрелки, начинающейся и завершающейся на одном и том же состоянии
Диаграммы активности (деятельности) частный случай диаграмм состояний. Каждое состояние есть выполнение некоторой операции и переход в следующее состояние. Диаграммы деятельности особенно полезны в описании поведения, включающего большое количество параллельных процессов. Самым большим достоинством диаграмм деятельностей является поддержка параллелизма. Благодаря этому они являются мощным средством моделирования потоков работ и, по существу, параллельного программирования. Самый большой их недостаток заключается в том, что связи между действиями и объектами просматриваются не слишком четко.
Средства Rational Rose позволяют для описания функциональной системы воспользоваться графическим редактором для построения Activity диаграмм (деятельности).
Таблица 3
Условные обозначения диаграммы деятельности
Условное обозначение |
Описание условного обозначения |
начальное состояние, не содержит никаких внутренних действий, в этом состоянии находится объект по умолчанию в начальный момент времени |
|
конечное состояние, который также не содержит никаких внутренних действий. В этом состоянии будет находиться по умолчанию после завершения работы в конечный момент времени. Оно служит для указания графической области, в которой завершается процесс изменения состояния |
|
состояние действий с некоторым входным действием и по крайней мере одним выходящим из состояния перехода. Внутри этой фигурки записывается выражение действий, которое должно быть уникальным в пределах одной диаграммы деятельности |
|
ветвление, применяемое в случаях, когда последовательно выполняемая деятельность должна разделиться на альтернативные ветви в зависимости от значения некоторого промежуточного результата. В этот ромб может входить только одна стрелка от того состояния, после выполнения которого, поток управления должен быть продолжен по одной из взаимно исключающих ветвей. Выходящих стрелок может быть две или более, но для каждой из них явно указывается соответствующее условие |
|
переход, т. е. отношение между двумя последовательными состояниями, которое указывает на факт смены одного состояния другим |
|
распараллеливание вычислений. Может иметь один входящий переход и несколько выходящих, либо несколько входящих и один выходящий |
Диаграммы взаимодействия (interaction diagrams) описывают поведение взаимодействующих групп объектов. Каждая диаграмма описывает поведение объектов в рамках только одного прецедента. На диаграмме изображаются объекты и те сообщения, которыми они обмениваются между собой. Определяют три типа сообщений:
- информационные (informative) – сообщения, снабжающие объект-получатель информацией для обновления его состояния;
- сообщения – запросы (interrogative) – сообщения, запрашивающие выдачу информации об объекте-получателе;
- императивные (imperative) – сообщения, запрашивающие у объекта-получателя выполнение действия.
Существует два вида диаграмм взаимодействия:
- последовательности (sequence diagrams);
- кооперативные (collaboration diagrams).
На диаграмме последовательности объект изображается в виде прямоугольника на вершине пунктирной вертикальной линии. Эта вертикальная линия называется линией жизни (lifeline) объекта. Она представляет собой фрагмент жизненного цикла объекта в процессе взаимодействия.
моделирование предметной области с использованием модели UML
Постановка задачи проектирования
Основными требованиями к базе данных являются [2]:
1. Минимальная избыточность. Данные, хранимые в БД, могут содержать как "полезную", так и "вредную" избыточность. Последняя всегда имеет место при отсутствии концептуального представления данных, когда каждый пользователь создает для своих приложений отдельный набор данных. В этом случае, если нескольким пользователям требуются одни и те же данные, то они должны быть повторены в каждом наборе. Такая избыточность является неконтролируемой, поскольку о ее существовании пользователи могут и не подозревать. Интеграция пользовательских представлений в единое концептуальное представление, как правило, устраняет эту избыточность данных. К "полезной" избыточности можно отнести периодические копии данных, хранящихся в БД. Эта избыточность легко контролируется. Более того, она является необходимой, например, для восстановления данных, разрушенных при случайных сбоях и в катастрофических ситуациях.
Таким образом, требование минимальной избыточности следует понимать как устранение "вредной" (неконтролируемой) и сведение к минимуму "полезной" (контролируемой) избыточности данных;
2. Целостность данных:
а) актуальность
б) правильность данных
3. Безопасность и секретность данных
4. Независимость данных. Подразумевает возможность изменения структуры БД без изменения прикладных программ пользователей. Понимается в двух аспектах, а именно, как логическая и физическая независимость.
Логическая независимость предполагает возможность изменения концептуальной схемы БД без изменения прикладных программ пользователей.
Физическая независимость подразумевает возможность изменения способа размещения данных на физических носителях и (или) методов доступа к данным без изменения прикладных программ пользователей.
5. Высокая производительность данных. Характеризуется временем ответа на запросы пользователей.
6. Гибкость и способность к расширению. Понимается как способность БД к наращиванию данных, а также увеличению количества возможных приложений и расширению функций в пределах каждого приложения.
В результате использования этих обозначения построена следующая диаграмма вариантов использования для действующих лиц
Рисунок 5. Диаграмма прецедентов
Диаграммы прецедентов или вариантов использования являются необходимым средством на стадии формирования требований у программному обеспечению. Каждый вариант использования – это потенциальное требование к системе, и пока оно не выявлено, невозможно запланировать его реализацию.
Следует предпочитать небольшие и детализованные варианты использования, поскольку они облегчают составление и реализацию согласованного плана проекта. [7]. Ниже приведены уточненные диаграммы вариантов использования для отдельных категорий пользователей
Рисунок 6. Менеджер по работе с фирмами работодателями
Рисунок 7. Руководитель
Рисунок 8. Менеджер по работе с соискателями
Рисунок 9. Диаграмма состояний вакансии
Рисунок 10. Диаграмма состояний направления на работу
Диаграммы деятельностей предпочтительнее использовать в следующих ситуациях
- анализ варианта использования. На этой стадии нас не интересует связь между действиями и объектами, а нужно только понять, какие действия должны иметь место и каковы зависимости в поведении системы. Связывание методов и объектов выполняется позднее с помощью диаграмм взаимодействия;
- анализ потоков работ (workflow) в различных вариантах использования. Когда варианты использования взаимодействуют друг с другом, диаграммы деятельностей являются мощным средством представления и анализа их поведения.
Рисунок 11. Диаграмма деятельности «Поиск вакансии для соискателя»
Одна из важных областей применения диаграмм активности связана с моделированием бизнес процессов. Деятельность любой компании , также представляет совокупность отдельных действий, направленных на достижения отдельного результата. Однако применительно к бизнес процессам желательно выполнение каждого действия ассоциировать с конкретным подразделением. В этом случае подразделение несет ответственность за реализацию отдельных действий, а сам бизнес процесс представляется в виде переходов действий из одного подразделения к другому.
Для моделирования этих особенностей используется специальная конструкция, получившая название дорожки (swim lanes) . Имеется в виду визуальная аналогия с плавательными дорожками в бассейне.
Все действия делятся на отдельные группы, которые отделяются друг т друга вертикальными линиями. Группа состояний между этими линиями выполняется отдельным подразделением (отделом, группой, филиалом) компании.
Названия подразделений явно указываются в верхней части дорожки. Пересекать линию дорожки могут только переходы, которые в этом случае обозначают выход или вход потока управления в соответствующих подразделениях компании.
Рисунок 22. Диаграмма активности с дорожками
Каждое сообщение изображается в виде стрелки между линиями жизни двух объектов. Сообщения появляются в том порядке, как они показаны на странице, сверху вниз. Каждое сообщение помечается как минимум именем сообщения; при желании можно добавить также аргументы и некоторую управляющую информацию и, кроме того, показать самоделегирование (self-delegation) -сообщение, которое объект посылает самому себе, при этом стрелка сообщения указывает на ту же самую линию жизни.
Рисунок 33. Диаграмма последовательности поиска соискателя
Вторым видом диаграммы взаимодействия является кооперативная диаграмма. Подобно диаграммам последовательности, кооперативные диаграммы отображают поток событий через конкретный сценарий варианта использования. Диаграммы последовательности упорядочены по времени, а кооперативные диаграммы заостряют внимание на связях между объектами.
Рисунок 44. Диаграмма кооперации поиска соискателя