Пояснительная записка (1206700), страница 3
Текст из файла (страница 3)
Диаграмма вариантов использования, как следует из ее названия, должна отражать все возможные варианты использования программного модуля. С ее помощью можно определить операции, которые будут поддерживаться.
Функционал работы продукта подробно рассмотрен в разделе 1.3. Исходя из описания функций можно выделить актера, взаимодействующего с программой – администратора. Задачей администратора является проведение контроля соответствия настроек информационной системы и поддержание организационно–распорядительной документации предприятия в актуальном состоянии.
В программном модуле можно выделить следующие варианты использования:
-
проверка соответствия пользователей;
-
проверка соответствие директорий;
-
проверка прав доступа;
-
создание отчета.
На рисунке 2.1 представлена соответствующая диаграмма вариантов использования. Проверка соответствия пользователей – это вариант использования, при котором программа считывает пользователей с организационно–распорядительного документа предприятия и с текущего автоматизированного рабочего места (далее – АРМ), пользователи добавляются в списки. Администратор при необходимости может удалять или добавлять пользователей в эти списки. Программа сравнивает полученные списки пользователей и выводит результат. Вывод результатов происходит двумя вариантами. Первый вариант – программа выводит на форму списки пользователей с цветовым выделением для наглядного отображения результатов сравнения. После завершения работы с формой, на главной форме отображается текстовый результат сравнения. Декомпозиция варианта использования «Проверка соответствия пользователей» показана на рисунке 2.2.
Рисунок 2.1 Контекстная диаграмма вариантов использования
Проверка соответствия директорий – это вариант использования, при котором программа проверяет наличие корневых директорий, указанных в организационно–распорядительном документе, на текущем АРМ. Программа считывает основные директории из организационно–распорядительного документа и добавляет их в список. Администратор при необходимости может добавлять или удалять директории из списка. Программа проверяет существование директорий из списка на АРМ. Полученные результаты выводятся на форму в виде списка директорий с цветовым выделением результатов для наглядного представления. После завершения работы с формой, на главной форме отображается текстовый результат проверки. Декомпозиция варианта использования «Проверка соответствия директорий» показана на рисунке 2.3.
Рисунок 2.2. Диаграмма вариантов использования «Проверка соответствия пользователей»
Рисунок 2.3 Диаграмма вариантов использования «Проверка соответствия директорий»
Проверка прав доступа – это вариант использования, при котором программа проверяет права доступа каждого пользователя к каждому объекту доступа. Программа считывает из организационно–распорядительного документа предприятия пользователей, объекты доступа и права доступа. Программа формирует списки таким образом, чтобы каждому пользователю соответствовали объекты доступа и его права, указанные в документе. Следующим действием является считывание прав доступа к каждому объекту доступа для каждого пользователя на текущем АРМ. Права доступа вносятся в список, после чего программа проводит сравнение полученных списков прав и выводит результаты. Вывод результатов происходит на форме с цветовым выделением для отображения администратору. после завершения работы с формой, на главной форме отображается текстовый результат проведения проверки. Декомпозиция варианта использования «Проверка прав доступа» показана на рисунке 2.4.
Рисунок 2.4 Диаграмма вариантов использования «Проверка прав доступа»
2.2 Диаграммы классов
Для уточнения внутренней архитектуры проектируемого модуля создается модель анализа, одним из компонентов которой является диаграмма классов анализа.
Классы и объекты являются основой объектно–ориентированного. Класс обычно описывает какую–либо часть предметной области, а объект является ее конкретным экземпляром.
Диаграмма классов анализа отражает общий вид структуры классов и отношений между ними. Класс анализа – это абстракция, описывающая некоторый фрагмент системы. Классы анализа не содержат определенных атрибутов или методов. Существует три вида классов анализа:
-
граничный;
-
управляющий;
-
сущности.
Элементами, отображаемыми на диаграмме, являются классы и отношения между ними.
На рисунке 2.5 представлена диаграмма классов анализа проектируемого модуля. Условно ее можно разделить на три составляющих: граничные классы интерфейса программы (формы), классы–сущности объект, субъект, устройство, списки всех данных, отчет по результатам проверки и управляющие классы. Управляющий класс сравнение пользователей осуществляет считывание списков пользователей, сравнение списков и вывод результатов. Управляющий класс Проверка существования директории на АРМ осуществляет считывание директорий из документа, формирование списка, проверку существования директорий на текущем АРМ, вывод результатов. Управляющий класс Проверка соответствия прав пользователей осуществляет считывание прав пользователей для каждого объекта из документа и создание списка пользователей и соответствующих им прав доступа. Производит
сравнение полученного списка прав доступа с существующими правами доступа на текущем АРМ, выводит результаты.
Граничные классы интерфейса программы представляют собой диалоговые формы и окна, которые предоставляются администратору, где он может проводить выбор операций и данных и просматривать результаты работы управляющих классов.
Классы–сущности представляют собой элементы программы которые создают отчетную документацию и экземпляры субъектов, объектов, устройств и списков всех данных, формируемых в процессе работы программы.
Центральное место в объектно–ориентированном программировании занимает разработка логической и физической моделей системы в виде диаграмм классов. Диаграмма классов служит для представления статической структуры модели системы в терминологии классов объектно–ориентированного программирования. Диаграмма классов может отражать, в частности, различные взаимосвязи между отдельными сущностями предметной области, такими как объекты и подсистемы, а также описывать их внутреннюю структуру и типы отношений. Диаграмма классов представляет собой граф, вершинами которого являются элементы типа «классификатор», связанные различными типами структурных отношений. Диаграмма классов может также содержать интерфейсы, пакеты, отношения и даже отдельные экземпляры, такие как объекты и связи.
Состав диаграммы классов аналогичен составу диаграммы классов анализа. В то же время классы анализа должны пройти процедуру строгой экспертизы на предмет их возможной декомпозиции на более мелкие и специализированные классы. При построении диаграммы окончательно должны быть определены атрибуты и операции классов.
На рисунке 2.6 рассмотрим логическую диаграмму классов. На ней отражены классы, которые включают в себя поля и методы. Классы Главная форма, Проверка пользователей, Проверка директорий и Проверка прав обеспечивают работу всех функций программы. Также они являются формами
для выбора функций, отображения результатов проверок администратору и формирования отчетов. Классы Списки всех данных, Субъект, Объект и Устройство являются классами сущностей, предназначенные для считывания данных с организационно–распорядительного документа предприятия и использования их при проведении проверок.
2.3 Диаграммы последовательности
Реализация отдельного варианта использования требует участия и взаимодействия определенных экземпляров актеров и классов. Наиболее подходящий инструмент для описания такого взаимодействия – это диаграммы последовательности и коммуникации, которые, по сути, отображают одну и ту же информацию. В связи с этим большинство Case–средств позволяет после построения одной из диаграмм автоматически получить другую, а также выполнять синхронизацию этих диаграмм между собой.
Диаграмма последовательности наглядно отображает временной аспект взаимодействия. Она имеет два измерения. Одно измерение (слева–направо) указывает на порядок вовлечения экземпляров сущностей во взаимодействие. Крайним слева на диаграмме отображается экземпляр актера или объект, который является инициатором взаимодействия. Правее отображается другой экземпляр сущности, который непосредственно взаимодействует с первым и т.д. Второе измерение (сверху–вниз) указывает на порядок обмена сообщениями. Начальному моменту времени соответствует самая верхняя часть диаграммы.
Масштаб на оси времени не указывается, поскольку диаграмма отображает лишь временную упорядоченность взаимодействия типа «раньше–позже».
На диаграмме последовательности отображается ряд элементов:
-
линия жизни (англ. lifeline) отображается пунктирной вертикальной линией, соединенной с соответствующим экземпляром сущности. Линия жизни служит для обозначения периода времени, в течение которого экземпляр может потенциально участвовать во взаимодействии. Если он существует в течение всего взаимодействия, то и его линия жизни должна продолжаться от самой верхней части диаграммы до самой нижней. Не обязательно создавать все объекты в начальный момент времени. Отдельные объекты в системе могут создаваться по мере необходимости, существенно экономя ресурсы системы и повышая ее производительность. В этом случае объект изображается не в верхней части диаграммы, а в том месте, где он создается;
-
как было отмечено выше, взаимодействие между экземплярами моделируется через обмен сообщениями. В отдельных случаях объект может посылать сообщения самому себе (вызывать собственные методы), инициируя так называемые рефлексивные сообщения. Сообщения, получаемые от внешнего источника и передаваемые внешнему приемнику, должны, соответственно, начинаться и заканчиваться закрашенным кружком;
-
UML регламентирует также два часто встречаемых вида сообщений – на создание и уничтожение объектов. Первое отображается как возвращающее сообщение со стереотипом «create», второе – как синхронное сообщение со стереотипом «destroy». После получения сообщения на уничтожение объекта его линия жизни заканчивается символом X;
-
отправка и прием сообщений сопровождаются активностью объектов. Для явного выделения этого факта, на диаграмме можно использовать фокус управления. Он изображается в форме вытянутого узкого прямоугольника, верхняя сторона которого обозначает начало получения фокуса управления объекта (начало активности), а нижняя сторона – окончание фокуса управления (окончание активности). Условные операторы, циклы, рекурсия и вызов собственных методов (отправка рефлексивных сообщений) инициируют вложенные потоки управления у одного и того же объекта, что можно отобразить на диаграмме с помощью вложенных фокусов управления.
На рисунке 2.7 показана диаграмма последовательности, отображающая процесс проверки соответствия пользователей. Для начала работы с программой, администратору необходимо заполнить поля на главной форме,