Создание цифрового образовательного ресурса по студийной фотосъемке

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



Вµцедентов

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

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

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

)-.

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

Диаграмма прецедентов для роли Пользователь представлена на рисунке 15, а элементы деятельности представлены в таблице 3.

Рисунок 15 - Диаграмма прецедентов для роли Пользователь

Диаграмма компонентов

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

Рисунок 16 - Диаграмма компонентов ЦОР Основы студийной фотосъемки

3.2 Диаграмма развертывания

Диаграмма развертывания (синоним - диаграмма размещения) применяется для представления общей конфигурации и топологии распределенной программной системы и содержит распределение компонентов по отдельным узлам системы. Кроме того, диаграмма развертывания показывает наличие физических соединений - маршрутов передачи информации между аппаратными устройствами, задействованными в реализации системы. Диаграмма развертывания содержит графические изображения процессоров, устройств, процессов и связей между ними. В отличие от диаграмм логического представления, диаграмма развертывания является единой для системы в целом, поскольку должна всецело отражать особенности ее реализации. Эта диаграмма, по сути, завершает процесс ООАП для конкретной программной системы и ее разработка, как правило, является последним этапом спецификации модели. Диаграмма развертывания представлена на рисунке 17.

Рисунок 17 - Диаграмма развертывания

3.3 Диаграммы классов

Глобальные классы

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

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

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

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

Рисунок 18

Класс Tasks загружает задания и ответы для приложения из формата xml, формируя их в более удобном внутреннем формате.

Класс Debug позволяет записывать отладочную информацию и выводить ее в удобном текстовом формате в виде истории для разработчика.

Пакет buttons

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