МИНОБРНАУКИ РОССИИ
Федеральное государственное автономное образовательное
учреждение высшего образования
«Южный федеральный университет»
Институт высоких технологий и пьезотехники
Кафедра информационных и измерительных технологий
Сейранян Эмма Гагиковна
СИСТЕМА УЧЕТА ЗАЯВОК НА ИСПОЛЬЗОВАНИЕ
НАУКОЕМКИХ ПРИБОРОВ В ЦЕНТРЕ КОЛЛЕКТИВНОГО
ПОЛЬЗОВАНИЯ ЮФУ
ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ
РАБОТА БАКАЛАВРА
по направлению 09.03.02 – Информационные системы и технологии
Научный руководитель –
доц., канд. техн. наук Рубанчик В.Б.
Ростов-на-Дону – 2017
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ
ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
ЮЖНЫЙ ФЕДЕРАЛЬНЫЙ УНИВЕРСИТЕТ
ИНСТИТУТ ВЫСОКИХ ТЕХНОЛОГИЙ И ПЬЕЗОТЕХНИКИ
Кафедра информационных и
измерительных технологий
ЗАДАНИЕ
на выпускную квалификационную работу
Студентке гр. 4-3 Сейранян Э.Г.
1. Тема: Система учета заявок на использование наукоемких приборов в
Центре коллективного пользования ЮФУ
2. Срок сдачи законченной работы 13 июня 2015 г.
3. Исходные данные:
Государственные
описания
литературы
стандарты
(ГОСТ
оформления
7.1-2003
библиографического
«Библиографическая
запись.
Библиографическое описание. Общие требования и правила составления»,
ГОСТ 7.82-2001 «Библиографическая запись. Библиографическое описание
электронных ресурсов», ГОСТ 7.12-1993 «Библиографическая запись.
Сокращение слов на русском языке. Общие требования и правила», ГОСТ
7.11-1978 «Сокращение слов и словосочетаний на иностранных европейских
языках в библиографическом описании»).
Основное требование заказчика
дорогостоящему
оборудованию
—
организация
исследователям
ЮФУ
федерального округа. Разработка системы управления заявками.
доступа
и
к
Южного
4. Перечень вопросов, подлежащих разработке:
1) Анализ предметной области.
2) Обоснование технических решений.
3) Проектирование элементов системы.
4) Реализация компонентов системы.
5) Разработка методики тестирования.
6) Внедрение реализованного модуля
5. Перечень графического материала:
Подготовка графических материалов для презентации работы
6. Консультанты по работе:
__________________________________________________________
______________________________________________________
7. Дата выдачи задания: 28 апреля 2017 г.
8. Руководитель _________________
Подпись
Рубанчик В.Б.
ФИО
9. Задание принято к исполнению
28 апреля 2017 г.
______________
Дата
_________________
Подпись студента
АННОТАЦИЯ
Объектом исследования является разработка модуля обслуживания для
сайта
Центра
Коллективного
Пользования
Южного
Федерального
Университета.
Пояснительная записка содержит введение, три главы, заключение,
список использованных источников и приложения.
Во введении определены актуальность темы, цели и задачи,
поставленные в выпускной квалификационной работе.
В основной части пояснительной записки проводится постановка и
декомпозиция
задачи,
исследование
и
анализ
предметной
области,
обосновывается выбор инструментальных средств, описываются этапы
разработки, интерфейс системы, методика и результаты тестирования
продукта.
СОДЕРЖАНИЕ
ВВЕДЕНИЕ................................................................................................................7
ГЛАВА 1 ПОСТАНОВКА ЗАДАЧИ........................................................................9
1.1 Общая постановка задачи................................................................................9
1.2 Формальная постановка задачи......................................................................9
1.3 Декомпозиция задачи.....................................................................................11
1.4 Аналитический обзор.....................................................................................11
1.5 Обязательные требования к системе............................................................12
1.6 Анализ предметной области..........................................................................13
ГЛАВА 2 ПРОЕКТИРОВАНИЕ СИСТЕМЫ........................................................15
2.1 Основания для разработки технического задания......................................15
2.2 Основные предлагаемые проектные решения.............................................16
2.2.1 Компонент Fox Contact Form..................................................................16
2.2.2 Компонент FullCalendar...........................................................................17
2.2.3 Реализация запросов в фоновом режиме...............................................18
2.3.4 База данных заявок..................................................................................19
2.3.5 Отчеты об использовании оборудования...............................................20
2.3 Проектирование пользовательского интерфейса........................................20
2.4 Моделирование системы в UML...................................................................23
2.5 Разработка программы испытаний тестирования конечного продукта и
оценки его качества..............................................................................................25
ГЛАВА 3 РЕАЛИЗАЦИЯ СИСТЕМЫ...................................................................27
3.1 Описание реализаций основных функций приложения и алгоритмов с
примерами программного кода...........................................................................27
3.2 Описание процедур, использованных для создания и поддержки базы
данных, ее таблиц и утилит, предназначенных для обслуживания базы
данных...................................................................................................................32
3.2 Примеры реализации интерфейса пользователя.........................................35
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
3.3 Результаты испытаний системы по разработанной методике....................38
3.4 Разработка эксплуатационных документов.................................................40
ЗАКЛЮЧЕНИЕ........................................................................................................41
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ...............................................42
ПРИЛОЖЕНИЕ А ТЕХНИЧЕСКОЕ ЗАДАНИЕ..................................................44
A.1 Введение.........................................................................................................44
А.2 Основания для разработки............................................................................44
А.3 Назначение разработки.................................................................................44
А.4 Требования к модулю обслуживания заявок..............................................45
А.5 Требования к графику загрузки оборудования...........................................48
А.6 Требования к внешнему оформлению.........................................................48
ПРИЛОЖЕНИЕ Б ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЮ.......................................49
ПРИЛОЖЕНИЕ В....................................................................................................50
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
ВВЕДЕНИЕ
На
сегодняшний
день
во
многих
сферах
человеческой
жизнедеятельности используются интернет-ресурсы. Количество пользователей
Интернетом растёт с каждым днём стремительными темпами. Возможность
свободного
доступа
к
распространяемым
на
электронных
носителях
информационным и иным продуктам и ресурсам Сети создаёт условия для
опосредованного взаимодействия пользователя Интернета с миром и для его
существования в виртуальном пространстве Сети.
Это
означает,
взаимодействия
что
разработка
организаций,
и
создание
предоставляющих
средств
удаленного
некоторые
сервисы,
относится к категории важнейших и наиболее актуальных мероприятий,
которые позволяют фирмам достигать поставленных целей. Помимо этого
создание подобных веб-ресурсов облегчает работу пользователей, избавляя их
от рутинной работы.
Создание сайтов позволяет добиться ряда важнейших факторов, а
именно:
1. Возможность оперативной подачи информации, как клиентам, так и
партнерам по бизнесу;
2. Возможность проведения эффективных маркетинговых исследований
посредством различных онлайн-опросов;
3.
Простой
способ
поддержания
связи
через
интернет
с
представительствами, располагаемыми в других городах и даже странах;
4. Обеспечение обратной связи с клиентами и т.д.;
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
5. Получение всегда актуальной информации.
При таком уровне интеграции интернета в повседневную жизнь
современного человека для любой организации первенствующей задачей
является создание и ведение веб-ресурса.
Центр Коллективного Пользования Высоких Технологий Южного
Федерального Университета имеет свой собственный веб-ресурс, на котором
пользователи могут получить необходимую информацию о нем. В современных
условиях не всегда достаточно наличие информационного сайта. Статичный
сайт,
практически
не
содержащий
в
себе
элементы
интерактивного
взаимодействия с пользователями, не соответствует потребностям ЦКП.
Очевидно, что данный ресурс требует определенной модернизации. В
первую очередь создания механизма поступления и администрирования заявок
пользователей. Во вторых, добавление возможности построения графика
загруженности оборудования и составления отчета прошедших исследований.
В
пояснительной
записке
выпускной
квалификационной
работы
рассматриваются этапы общей постановки задачи, ее проектирования и
непосредственной реализации.
В первой главе освящаются вопросы касаемо общей и формальной
постановке задачи, также в ней проводится исследование предметной области.
Во второй главе описываются набор инструментов разработки, основные
предполагаемые
интерфейса,
проектные
выбранная
решения,
методика
моделирование
тестирования,
пользовательского
диаграмма
вариантов
использования.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Третья
глава
посвящается
алгоритмам
реализации
системы
с
конкретными примерами программного кода, интерфейсом программы и
тестированием уже готового продукта.
Приложения
включают
техническое
задание
и
инструкцию
пользователя для работы с ресурсом.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
ГЛАВА 1 ПОСТАНОВКА ЗАДАЧИ
1.1 Общая постановка задачи
Центр
коллективного
предлагает
пользования
научно-исследовательским
«Высокие
технологии»
институтам
и
ЮФУ
лабораториям
воспользоваться услугами: сбора биоматериала, хранения биоматериалов,
выделения ДНК и РНК, анализа ДНК, генотипирования, цитогенетический
анализа,
иммуноферментный
анализа,
рентгеноструктурного
анализа,
рентгенофазового анализа, калибровки пьезодатчиков, плазменное напыление
тонких пленок, исследования тонких пленок, измерения толщины тонких
пленок, эллипсометрии и прочего.
Оборудование предоставляется на основании поступивших заявок.
График загрузки оборудования строится на основании анализа заявок.
Чтобы обеспечить этот процесс необходимо иметь систему сбора заявок,
поступающих от пользователей. В современных условиях она может быть
реализована в виде онлайн-сервиса.
Ежемесячно администратор
формирует
отчет
об
использовании
оборудования, который составляется на основе реализации заявок.
Задача состоит в создании сервиса, который обеспечивает систему
управление
заявками,
поддерживающие
все
функции,
необходимые
пользователям и администраторам.
1.2 Формальная постановка задачи
ЦКП «Высокие технологии» имеет сайт[1], содержащий основную
информацию о деятельности ЦКП, контактные данные, информацию о
проектах и основные документы.
Решается задача организации доступа к дорогостоящему оборудованию
исследователям ЮФУ и Южного федерального округа. Необходимо, чтобы
система
предоставила
использовании
механизм
оборудования
взаимодействия
организаций
и
ЦКП.
заинтересованных
Требуется
в
создать
возможность удаленной подачи заявки для пользователей.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Поступившие заявки контролируются администраторами. Управление
заявками включает возможности редактирования, смены статуса заявки и
добавления заявок.
Для поддержки поступления заявок через звонок администратору или
другими способами, выполняющимся не через сайт, требуется создать
возможность добавления заявок через панель администратора. Смена статуса
возможна на одно из четырех состояний заявки.
1. Не обработана (заявка поступила, но администратором ещё не
рассмотрена);
2. Одобрена (принята администратором);
3. Отклонена;
4. Выполнена (истек срок проведения исследований).
Необходимо,
чтобы
разрабатываемая
система
сбора
заявок
предоставляла возможность построения графика загруженности оборудования.
График требуется составлять на месяц в календарном формате. В график
попадают только заявки со статусом «Одобрена».
Эта возможность позволит эффективно распределять нагрузку на
оборудование
для
администраторов,
а
для
пользователей
предоставит
возможность проверки наличия свободных часов для выбранного прибора.
Разрабатываемый модуль добавляет возможность формирования отчета
реализации заявок на определенный промежуток времени. В отчет помещаются
только заявки со статусом «Выполнена». Отчет представляет собой данные в
табличном формате со структурой, строго сформулированной в техническом
задании.
В результате будет получен веб-сервис, предоставляющий систему
управление
заявками,
поддерживающую
необходимые
пользователям
и
администраторам функции подачи и администрирования заявок, просмотра
графика загрузки оборудования и составления журнала реализованных заявок.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
1.3 Декомпозиция задачи
Создание информационного ресурса требует решения следующих
подзадач:
1. Структурирование информации, связанной с решаемой задачей.
2. Разработка формы подачи заявок.
3. Проектирование интерфейса для администрирования заявок.
4. Разработка алгоритма создания отчетов.
5. Поиск решений для отображения календаря загрузки.
6. Разработка методики тестирования системы.
7. Реализация компонентов системы:
а) Обеспечение
административных
функций
(панель
администратора для управления заявками);
б) Добавление возможности журнализации;
в) Добавление функции оставления заявки;
г) Обеспечение отображения календаря загрузки оборудования.
8. Тестирование разработанной системы.
1.4 Аналитический обзор
Задача
обработки
заявок
типична
для
организаций
и
фирм,
предоставляющих некоторые услуги.
На сайте центра коллективного пользования научным оборудованием
«Арктика»
[3]
реализовано два способа подачи заявок для сотрудников и для
внешних пользователей. В первом случае требуется вход в личный кабинет, во
втором — обязательный ввод информации о заказчике, в том числе контактной,
реквизитов договора и содержания заявки в виде документа, загружаемого в
форму.
Перед отправкой формы необходимо пройти систему защиты веб-
сайтов от интернет-ботов reCAPTCHA.
На сайте Томского регионального центра коллективного пользования [4]
для подачи заявок, помимо стандартного ввода информации о заказчике,
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
обязательно указание предмета исследований, согласие на публикацию данных
на сайте. Необязательным для ввода является срок исполнения заявки,
задаваемый в виде «В течение недели». Защита от автоматического заполнения
реализована с помощью символьной капчи.
Технопарк «Сколково»[5] для оставления заявки предлагает ввод
контактных данных заказчика, содержания заявки и опроса на принадлежность
к данному технопарку. В форме нем задаются сроки заявки. Механизм защиты
веб-сайта от интернет-ботов не обнаружен.
1.5 Обязательные требования к системе
Система встраивается в существующий сайт ЦКП. Сайт реализован на
основе на JOOMLA версии 3.5[6], которая выставляет ряд требований:
1.
2.
3.
PHP 5.3.10+
MySQL 5.1+
Apache 2.x+
Необходимо использовать шаблон, примененный к основной части
сайта.
При поступлении
нового оборудования реализуется возможность
добавления информации о нем в БД имеющихся приборов.
Система должна использовать гибкую систему
для
хранения
информации.
1.6 Анализ предметной области
Рассматриваются веб-сайты действующих ЦКП, предоставляющие
услуги проведения исследований и аренды оборудования. Среди исследуемых
сайтов, подавляющее большинство используют CMS. CMS — это программа
или информационная система, использующаяся для создания содержимого
ресурса, его редактирования и управления. Этот подход позволяет быстро и
качественно создать необходимый ресурс, использовать множество готовых
расширений, плагинов, платных и бесплатных шаблонов.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Например, анализ сайта ЦКП МФТИ выявил, что сайт базируется на
CMS 1C-Bitrix.
Структура сайта это пути получения пользователем запрашиваемой
информации. В большинстве анализируемых сайтов используется древовидная
структура. Такая как, например, на сайте Орловского Государственного
Университета. Так же часто используется простая (двухуровневая) структура,
главная страница и много внутренних страниц 2-го уровня. Как, например, на
сайте Томского регионального центра коллективного пользования . Только
половина просматриваемых веб-ресурсов использует карту сайта.
Внешняя структура во всех случаях базируется на стандартной форме
расположения блоков на сайте, как на рисунке 1.6.1.
Рисунок 1.6.1
В результате проведения анализа сайта ЦКП МФТИ, выявлено, что на
сайте сведения о заявках представлены в виде таблицы со столбцами номер,
статус, содержание заявки. Заявки поступают через форму обратной связи с
вводом основных сведений.
На сайте Томского регионального центра коллективного пользования
уровень загруженности оборудования отображается в процентах на год. Заявки
так же отправляются администратору на почту для обработки. На сайте есть
возможность
просматривать
реестр
заявок.
Там
отображены
дата,
наименование услуги и статус заявки.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
На
сайте
взаимодействия
с
Орловского
ЦКП
Государственного
приведены
контактная
Университета
информация,
для
список
существующего оборудования и положение о порядке доступа к приборам.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
ГЛАВА 2 ПРОЕКТИРОВАНИЕ СИСТЕМЫ
2.1 Основания для разработки технического задания
Сайт реализует полноценную систему для работы с заявками на
использование
наукоемкого
оборудования.
Она
включает
следующие
компоненты.
а)
Подсистема
для
предоставления
заказчикам
информации
об
оборудовании.
б) Подсистема подачи заявок заказчиками.
в) Подсистема администрирования заявок.
г) Подсистема подготовки отчетов.
д) Подсистема администрирования модуля.
Подсистема для предоставления заказчикам данных об оборудовании
предназначается для наглядного представления информации в календарном
формате помесячно, для эффективного планирования занятости приборов.
Подсистема
подачи
заявок
заказчиками
предназначена
для
автоматизации процесса регистрации заявки. Результатом её работы будет
отправка администратору введенной заказчиком информации, сохранение в БД
соответствующей записи.
Подсистема администрирования заявок предназначена для управления
поступившими
заявками,
эффективного
их
распределения.
Подсистема
позволяет редактировать, добавлять, удалять заявки. Важным является
изменения статуса заявки, т.к. в зависимости от статуса формируются
календарная загрузка оборудования и журнал заявок.
Подсистема подготовки отчетов позволяет формировать документ, в
котором в табличном виде представлены данные о прошедших исследованиях.
Результатом её работы является документ формата .xls.
управление уровнями доступа организуется на уровне джумлы, для
этого существуют группы пользователей, такие как Public, Guest, Manager,
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Administrator, Registered. Для решаемой задачи требуется задействовать группы
Public и Administrator.
Требуется,
чтобы
подсистема
для
предоставления
заказчикам
информации об оборудовании и подсистема подачи заявок заказчиками были
доступны пользователям группы Public. Остальным подсистемам требуется
назначить уровень доступа Administrator. Таким образом, администратор
сможет использовать все возможности модуля, а гости сайта только
просматривать информацию
об оборудовании и оставлять
заявки
на
нормам
и
использование.
Требования
были
учтены
согласно
общепринятым
утверждённым стандартам.
Полная версия технического задания приведена в ПРИЛОЖЕНИИ А.
2.2 Основные предлагаемые проектные решения
2.2.1 Компонент Fox Contact Form
Для обеспечения обратной связи на вкладке «Заявка» используется
компонент Fox Contact Form, предназначенный для создания и использования
на сайте Joomla красивой и функциональной формы обратной связи. Компонент
прост в настройке и способен создавать множество текстовых полей, флажков и
выпадающих списков.
Имеются возможности настройки стилей и отправки сообщений разных
форматов нескольким адресатам. Предполагается, что перед отправкой письма
создается запись в таблице заявок в БД.
2.2.2 Компонент FullCalendar
Вкладку «Календарная загруженность оборудования» предполагается
реализовать с помощью плагина Full Calendar[7]. Следует отметить, что для его
работы необходимо иметь подключенные библиотеки jQuery и jQuery UI.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
JQuery[8] — это быстрая и многофункциональная библиотека JavaScript.
Она
упрощает
использование
HTML-документов,
обработку
событий,
анимации и Ajax с помощью простого в использовании API, который работает
во множестве браузеров.
JQuery UI[9] — это библиотека на основе jQuery, реализующая более 20
плагинов, среди которых плагины организующие различное поведение
(например перетаскивание или растягивание элементов), восемь видов
виджетов (такие как календарь, диалоговые окна, систему вкладок и.т.д) и
анимационные эффекты.
Плагин Full Calendar позволит создать полноразмерный календарь, в
котором есть возможность отображать события на месяц, на неделю, на день.
На рисунке 2.3.1 приведен пример реализации с помощью данного плагина с
помощью темы JQuery UI.
Рисунок 2.3.1
2.2.3 Реализация запросов в фоновом режиме
Для того чтобы при выборе наименования оборудования не обновлять
каждый раз всю страницу, а только ее конкретную часть, используется
технология AJAX.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
AJAX, Ajax ( «асинхронный JavaScript и XML») — подход к построению
интерактивных
пользовательских
интерфейсов
веб-приложений,
заключающийся в «фоновом» обмене данными браузера с веб-сервером. В
результате,
при
обновлении
данных
веб-страница
не
перезагружается
полностью, и веб-приложения становятся быстрее и удобнее.
AJAX — не самостоятельная технология, а концепция использования
нескольких смежных технологий. AJAX базируется на двух основных
принципах:
1)
использование технологии динамического обращения к серверу «на
лету», без перезагрузки всей страницы полностью, например с использованием
XMLHttpRequest (основной объект);
2)
использование DHTML для динамического изменения содержания
страницы.
Для решения задачи отправки на сервер наименования прибора решено
использовать высокоуровневые методы, такие как $.post() или $.get(), в их
основе лежит использование низкоуровневего метода $.ajax.
Метод запроса POST предназначен для запроса, при котором веб-сервер
принимает данные, заключённые в тело сообщения, для хранения. Он часто
используется для загрузки файла или представления заполненной веб-формы[15].
В отличие от него, метод HTTP GET предназначен для получения
информации от сервера. В рамках GET-запроса некоторые данные могут быть
переданы в строке запроса URL, указывающие, например, условия поиска,
диапазоны дат, или другую информацию, определяющую запрос.
Основное различие методов GET и POST состоит в способе передачи
данных веб-формы обрабатывающему скрипту. Метод GET отправляет скрипту
всю собранную информацию формы как часть URL:
http://www.test.ru/script.php?login=admin&psw=admin
Метод POST передает данные таким образом, что пользователь сайта
уже не видит передаваемые скрипту данные:
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
http://www. test.ru/script.php
Для решения поставленной задачи используется метод $.get().
2.3.4 База данных заявок
В БД необходимо создать две таблицы для заявок и списка
оборудования.
Во
вторую
таблицу
заносятся
наименования
уже
функционирующих приборов. При отправке ajax-запроса на сервере будет
происходить обращение к БД и формироваться набор принятых к исполнению
заявок (со статусом «одобрена»). Ответом от сервера будет набор заявок,
представленные в виде событий для календаря. На рисунке 2.3.5.1 приведена
схема данных.
Рисунок 2.3.5.1 — Схема данных
2.3.5 Отчеты об использовании оборудования
Отчет требуется составлять в виде документа с расширением .xls. Для
создания и редактирования документов в формате excel планируется
использовать библиотеку PHPExcel, которая позволяет производить импорт и
экспорт данных в excel, применять различные стили оформления к отчетам.
Для составления отчета просматривается соответствующая таблица в
БД, устанавливается статус «выполнена» заявкам, у которых истек срок
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
действия. Далее создается документ и в него заносятся заявки со статусом
«выполнена». После составления отчета, заявки из БД не удаляются.
Вкладка «Администрирование заявок» состоит из структурированной
информации о заявках, представленной в виде таблицы. Для организации
возможности изменения данных по клику будут использованы средства AJAX.
Нажатие кнопки «+» добавит пустую строку в таблицу для ввода новой заявки.
Все изменения в таблице будут сохранены после нажатия на соответствующую
кнопку.
2.3 Проектирование пользовательского интерфейса
Общая структура сайта отображена на рисунке 2.5.1, где синим
отмечены пункты меню, которые должны быть созданы в результате
разработки.
ЗАКФСИГ алодняласмвфрет ик нмаоинвд роиа мсерт тьнамр ацо ияетирнчз яо аею втг ар ну из ке а з ао яб в о р к у д о в а н и я
ы
Рисунок 2.5.1 — Структура сайта
В соответствии с ТЗ форма «Заявка» имеет строго регламентированный
характер. Установлены типы данных, количество символов, водяные знаки на
каждое поля формы.
Схематическое представление требуемого интерфейса представлено на
рисунке 2.5.1.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Рисунок 2.5.2 — форма «Заявка»
Где кнопка «Сбросить» подразумевает очистку всех введенных до
нажатия данных;
Кнопка «Предварительный просмотр» —
просмотр пользователем
введенной информации;
Кнопка «Отправить заявку» подразумевает отправку администратору на
почту сведений о поступившей заявки, отправку пользователю ответного
письма и сохранение в БД соответствующей записи.
Основным
оборудования»
компонентом
вкладки
«Календарная
загруженность
является календарь, отображаемый помесячно, в котором
фиксируются события (одобренные заявки). Так же требуется добавить
возможность отображения событий на неделю или на день. Важным
требованием
является
добавлением
всплывающего списка
с перечнем
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
существующего в ЦКП оборудования, для отображения событий отдельно для
выбранного прибора. Положение календаря на странице – ниже всплывающего
списка.
На вкладке «Администрирование заявок» необходимо отображать
структурированную информацию о заявках, планируется в виде таблицы с
возможностью изменения данных. При этом столбцы «Прибор» и «Статус»
будут содержать всплывающие списки, чтобы исключить ошибки ввода. Так же
требуется присутствие кнопки для добавления записей таблицы в виде
изображений символа «+».
Вкладка «Составить отчет» должна состоять из двух полей дат для
определения периода, за который составляется отчет, и непосредственно
кнопки, по нажатию на которую будет загружен требуемый файл.
2.4 Моделирование системы в UML
Визуальное моделирование в UML можно представить как процесс
спуска от наиболее общей и абстрактной концептуальной модели исходной
системы к логической, а затем и к физической модели соответствующей
программной системы. Для достижения этих целей вначале строится модель в
форме так называемой диаграммы вариантов использования (use case diagram),
которая описывает функциональное назначение системы и ее реакцию на
действия
пользователя.
Диаграмма
вариантов
использования
является
исходным концептуальным представлением или концептуальной моделью
системы в процессе ее проектирования и разработки.
Суть данной диаграммы состоит в следующем: проектируемая система
представляется в виде множества сущностей или актеров, взаимодействующих
с системой с помощью так называемых вариантов использования. При этом
актером (actor) или действующим лицом называется любая сущность,
взаимодействующая с системой извне. Это может быть человек, техническое
устройство, программа или любая другая система, которая может служить
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
источником воздействия на моделируемую систему так, как определит сам
разработчик. В свою очередь, вариант использования (use case) служит для
описания сервисов, которые система предоставляет актеру. Другими словами,
каждый вариант использования определяет некоторый набор действий,
совершаемый системой при диалоге с актером. При этом ничего не говорится о
том, каким образом будет реализовано взаимодействие актеров с системой.
На основе сформулированного технического задания были выделены
следующие типы сущностей:
1.
Гость;
2.
Администратор;
3.
Система;
и следующие прецеденты:
1.
Оставить заявку;
2.
Составить отчет;
3.
Администрирование заявок;
4.
Просмотр календаря загруженности оборудования.
Рисунок 2.4.1 — Диаграмма вариантов использования
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
2.5 Разработка программы испытаний тестирования конечного
продукта и оценки его качества
Тестовые испытания системы начинаются с перехода по ссылке
http://dev.ckpvt.ru/ в браузере.
Пункт
прогр.
Пункт
Наименование показателя
Методика проверки
ТЗ
испыт.
1
требований
Проверка отправки
А.4
Заполнение
всех
заполненной заявки на
обязательных
полей
почтовый адрес
формы и её отправка
администратора
2
Проверка невозможности
А.4
Требуется не заполнить
отправки формы без
хотя
бы
заполнения всех
помеченное
обязательных полей
«*»
и
оно
поле,
символом
попробовать
отправить форму
3
4
5
6
Просмотр поступивших
А.4
Вкладка
заявок (только для
“Администрирование
администратора)
заявок”
Изменение поступившей
А.4
Вкладка
заявки (только для
“Администрирование
администратора)
заявок”
Проверка добавления заявки А.4
Вкладка
администратором (без
“Администрирование
отправки на почту)
заявок”
Функция "Составить отчет"
А.4
Проверка
создания
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
файла
и
его
содержимого
7
Проверка составления
календарного графика
А.5
Вкладка «Календарный
график загрузки»
загрузки
Таблица 1 – Тестовые испытания
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
ГЛАВА 3 РЕАЛИЗАЦИЯ СИСТЕМЫ
3.1 Описание реализаций основных функций приложения и
алгоритмов с примерами программного кода
Вкладка «Заявка» реализуется с помощью расширения Fox Contact,
которое предоставляет возможность создания формы графическими средствами
(рисунок В.1).
Благодаря вкладке «Actions» компонента Fox Contact настраивается
связь формы с БД и привязка элементов к полям таблицы. Там же указываются
адресаты, содержания писем и текст сообщения, показываемый после
заполнения
формы.
Обратная
связь
реализуется
путем
заполнения
определенных полей при создании формы (рисунок В.2).
Настраивается функция Anti-spam, задаются ключевые слова и
устанавливает текст сообщения, отправляемый в случае, если сообщение
расценено как спам.
В итоге получена форма со всеми определенными в техническом
задании полями ввода с установленными водяными знаками, с возможностью
удаленной подачи заявки.
Вкладка «Календарная загруженность оборудования» реализована на
основе плагина Full Calendar. Плагин активирован с помощью подключения
файла библиотеки и файла стилей css в зависимости от их расположения.
<link rel='stylesheet' type='text/css' href='jqfc/fullcalendar.css' />
<link
rel='stylesheet'
type='text/css'
href='jqfc/fullcalendar.print.css'
media='print' />
<script type='text/javascript' src='jqfc/fullcalendar.min.js'></script>
Инициализация календаря:
$('#calendar').fullCalendar({});
После инициализации была проведена настройка календаря. Например,
определение максимально допустимой ширины календаря:
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
#calendar{
max-width: 900px;
margin: auto;
}
Русификация календаря:
<script src="fc/lang-all.js"></script>
$(function(){
$('#calendar').fullCalendar({
lang: 'ru',
});
Календарь имеет множество свойств, таких как:
firstDay – устанавливает какой день недели будет первым, по
умолчанию 0.
weekends – убирает из календаря выходные дни недели, по
умолчанию true.
height – делает весь календарь включая шапку определённой
высоты в пикселях.
Существуют
дополнительные
элементы
для
корректирования
представления календаря, представленные в виде кнопок. Ниже приведен
пример использования этих элементов для задания положения элементов в
шапке календаря.
$('#calendar').fullCalendar({
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay'
});
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Данный пример устанавливает по центру наименование текущего
месяца/недели/дня, слева – кнопки для перемещения на сегодняшний день и на
следующий и предыдущий месяц/неделю/день. Справа располагаются варианты
отображения календаря, с помощью параметров:
month – переключения внешнего вида календаря на просмотр
месяца.
agendaWeek
–
детализированное
представление
недели
с
разделением на дни и часы.
agendaDay – детализированное представление дня с разделением
на часы.
Над календарем создается всплывающий список с наименованиями
приборов. Изменение значения в списке обрабатывается функцией, которая
использует AJAX:
$('#select').change(function(){
$.get(
"../search.php",
{name: $('#sel').val()},
onAjaxSuccess );
function onAjaxSuccess(data)
if(data=="") {alert("Нет событий, удовлетворяющих поиску");}
$('#calendar').fullCalendar('removeEvents');
$('#calendar').fullCalendar('addEventSource', data );
}});
});
В файле search.php настраивается соединение с БД и вызывается sqlпроцедура, которой передается наименование выбранного прибора. Результат в
виде ассоциативного массива преобразуется к формату, установленному для
создания событий в календаре, и возвращается в форму.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Для создания функции составления отчета используется библиотека
PhpExcel[13]. Подключается класс для работы и для вывода данных в формате
Excel.
require_once('PHPExcel.php');
require_once('PHPExcel/Writer/Excel5.php');
Для дальнейшей работы необходимо получиться объект текущего листа.
Создается объект класса PHPExcel, устанавливается индекс активного листа и
фиксируется активный лист.
$xls = new PHPExcel();
$xls->setActiveSheetIndex(0);
$sheet = $xls->getActiveSheet();
В библиотеке определены такие функции, как именование листа,
объединение ячеек, выравнивание текста.
Для задания автоматического подбора ширины по объему текста
используется метод setAutoSize для определенных столбцов.
$sheet->getColumnDimension('B')->setAutoSize(true)
Функционал библиотеки позволяет управлять шрифтом, заливкой,
рамками, параметрами выравнивания.[12] Для этого используется класс
PHPExcel_Style с соответствующими методами: getFill(), getFont(), getBorders(),
getAlignment().
Для задания значений ячейкам в цикле используется метод:
$sheet->setCellValueByColumnAndRow($i, $j, $value);
Где первые два аргумента задают положение ячейки (столбец и строка),
третий — вставляемое значение.
Отчет формируется после нажатия кнопки «Составить отчет», на сервер
отправляется ajax-запрос с введенными пользователем датами, выполняется
подключение к БД и производится sql-запрос. Отбираются заявки со статусом
«Выполнена», если начало работ входит в заданный временной диапазон.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Ответом служит сообщение, о том был ли создан отчет. Если пользователь не
ввел даты, в отчет помещаются заявки за текущий месяц.
$('#report').click(function(){
$.post( "../libraries/create_report.php",
{ date_start: $('#start_date').val();,
date_end: $('#end_date').val();},
onAjaxSuccess
);
function onAjaxSuccess(data){
alert(data);
}
});
Сохранение
документа
происходит
с
помощью
класса
PHPExcel_Writer_Excel5.
$objWriter = new PHPExcel_Writer_Excel5($xls);
$objWriter->save('../documents/report.xls');
Вкладка «Администрирование заявок» представлена в виде таблицы с
основной информацией о заявках. Возможность изменения полей таблицы
достигается средствами ajax.
$(function() { $('td').click(function(e) {
var t = e.target || e.srcElement;
var elm_name = t.tagName.toLowerCase();
if(elm_name == 'select') {return false;}
var val = $(this).html();
var code = '<input type="text" id="edit" value=" '+val+'" />';
$(this).empty().append(code);
$('#edit').focus();
$('#edit').blur(function() {
var val = $(this).val();
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
$(this).parent().empty().html(val);
});
});
});
Для поля «статус» используется всплывающий список, чтобы избежать
ошибки ввода. Кнопка «+» добавляет пустую строку в таблицу.
Измененные или только введенные данные фиксируются в БД только
после нажатия кнопки «Сохранить». Посылается запрос на сервер методом
POST, где вызывается соответствующая sql-инструкция.
3.2 Описание процедур, использованных для создания и поддержки
базы данных, ее таблиц и утилит, предназначенных для обслуживания
базы данных
JOOMLA позволяет создавать прямые запросы к БД. Для этого
используется класс JFactory[14]. Ниже приведен пример проверки соединения с
БД, выполнения запроса и загрузки результата в ассоциативный массив.
$db =& JFactory::getDBO();
if (!$db->connected()) {
echo "Нет соединения с сервером баз данных";
jexit();
} else {
$sql = "SELECT * FROM jos_clients where stat like 'Не обработана' ";
$db->setQuery($sql);
$arr= $db->loadAssocList();
}
Для хранения поступивших заявок создана таблица jos_clients, столбцы
которой соответствуют полям ввода во вкладке «Заявка». Так же создана
таблица с наименованиями приборов.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Ниже приведена процедура, предназначенная для составления списка
событий и дальнейшего отображения на календаре.
CREATE PROCEDURE `select_clients_by_machine`(IN name VACHAR)
begin
SELECT content, date_start, date_end FROM jos_clients where stat like
'Одобрена' and machine like name;
end;
Аналогичная процедура используется для администрирования заявок.
CREATE PROCEDURE `select_clients`()
begin
SELECT content, date_start, date_end FROM jos_clients where stat like 'Не
обработана';
end;
Для
реализации
возможности
редактирования
во
вкладке
«Администрирование заявок» создается sql-процедура, в которой обновляются
значения выбранных столбцов.
Для сохранения информации о поданной заявке создана sql-процедура, в
которой происходит вставка запись в таблицу jos_clients. Ниже приведен скрипт
создания таблицы.
CREATE TABLE `jos_clients` (
`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
`name` VARCHAR(50) NOT NULL,
`organization` VARCHAR(100) NOT NULL,
`cooperation` VARCHAR(50) NOT NULL DEFAULT 'Иная форма
сотрудничества',
`name_organiz` VARCHAR(100) NOT NULL,
`address` VARCHAR(100) NULL DEFAULT NULL,
`mail` VARCHAR(50) NULL DEFAULT NULL,
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
`extra_mail` VARCHAR(50) NOT NULL,
`type_arenda` VARCHAR(50) NOT NULL,
`date_start`
TIMESTAMP
NOT
NULL
DEFAULT
CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`date_end` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
`content` VARCHAR(100) NULL DEFAULT NULL,
`machine` VARCHAR(120) NOT NULL,
`stat` VARCHAR(50) NOT NULL,
PRIMARY KEY (`id`),
INDEX `id` (`id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
AUTO_INCREMENT=29
;
Отображение приборов во всплывающих списках организуется с
помощью обращения к таблице jos_machine. Ниже приведен скрипт создания
таблицы.
CREATE TABLE `jos_machines` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(120) NOT NULL,
PRIMARY KEY (`id`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
AUTO_INCREMENT=54
;
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
3.2 Примеры реализации интерфейса пользователя
В результате проведенной работы получена вкладка для удаленной
подачи заявки с полями ввода, определенными в техническом задании (рисунки
3.2.1-3.2.2).
Рисунок 3.2.1
Рисунок 3.2.2
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
В случае отправки заявки, администратор получает письмо с введенной
в заявке информацией. Пример письма представлен на рисунке В.5.
Отображение вкладки «Календарная загруженность оборудования»,
представлена на рисунке 3.2.3.
Рисунок 3.2.3
На рисунке В.3 приведен вариант отображения событий на неделю, где в
виде списка представлены события на неделю с разделением по дням. В случае
если событий нет, пользователь получает соответствующее сообщение.
Отображение событий на неделю так же представляется в виде таблице, где
столбцы это дни недели, а строки — часы (рисунок В.6).
На рисунке 3.2.4 показана вкладка «Составить отчет».
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Рисунок 3.2.4
Пример сформированного отчета представлен на рисунке В.4.
Поля «ФИО, должность выполняющего работы» и «Примечание»
заполняются администраторами.
Структура вкладки изображена на рисунке 3.2.5
Рисунок 3.2.5
3.3 Результаты испытаний системы по разработанной методике
Тестирование проводится по разработанной в проектной части методике.
Определение
успешности
проверки
Проверка
Переход на страницу Просмотр
на
отправки
Формы->Заявка. Ввод почтовом
ящике
заполненной
всех
обязательных наличия письма.
заявки
на полей.
Нажатие на
почтовый
кнопку
отправки
адрес
формы.
администратор
а
№ Наименование
п/п проверки
1.
Последовательность
действий
Примеч.
Локальн
о
не
работае
т
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Определение
успешности
Примеч.
проверки
Проверка
Переход на страницу Форма
не Ошибок
невозможност Формы->Заявка.
отправится. Будет нет
и
отправки Пропуск ввода хотя бы получено
формы
без одного обязательного предупреждение.
заполнения
поля.
Нажатие на
всех
кнопку
отправки
обязательных
формы.
полей
Просмотр
Вход
на
главную Среди
Ошибок
поступивших
страницу от имени отображаемых
нет
заявок (только администратора.
заявок только ещё
для
Переход на страницу не
обработанные
администратор Информациязаявки.
Поля
а)
>Администрирование
столбца «статус» в
заявок.
таблице
администрирования
заявок будут иметь
значение
«Не
обработана».
Изменение
Вход
на
главную Результатом будет Ошибок
поступившей
страницу от имени отображение
нет
заявки (только администратора.
измененной заявки
для
Переход на страницу во
вкладке
администратор Информация->
«Календарь
а)
Администрирование
загруженности
заявок.
Изменение оборудования»
любого поля, например
статуса
заявки
на
«принята».
№ Наименование
п/п проверки
2.
3.
4.
Последовательность
действий
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Определение
успешности
проверки
В случае если был
введен
статус
«принята»,
результат
будет
виден во вкладке
«Календарь
загруженности
оборудования».
Если статус «не
обработана»,
то
заявка
после
сохранения
будет
отображаться
во
вкладке
«Администрирован
ие заявок»
Создания файла.
№ Наименование
п/п проверки
Последовательность
действий
5.
Проверка
добавления
заявки
администратор
ом
(без
отправки
на
почту)
Вход
на
главную
страницу от имени
администратора.
Переход на страницу
Информация->
Администрирование
заявок. Нажатие на
кнопку с символом «+».
Ввод
данных
для
оставления заявки.
6.
Функция
"Составить
отчет"
7.
Проверка
составления
календарного
графика
загрузки
Вход
на
главную
Ошибок
страницу от имени
нет
администратора.
Переход на страницу
Информация->
Составить отчет. Ввод
дат. Нажатие кнопки
«Составить отчет»
Переход на страницу Составление набора Ошибок
Информация->
событий.
нет
Календарь
загруженности
оборудования.
Таблица 2
Примеч.
Ошибок
нет
3.4 Разработка эксплуатационных документов
На завершающем этапе работ создана инструкция администратора.
Инструкция администратора содержит в себе информацию, которая описывает
необходимые шаги для работы с модулем.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
ЗАКЛЮЧЕНИЕ
Результатом выпускной квалификационной работы является созданный
на основе основного сайта ЦКП ВТ модуль, предназначенный для получения
информации о загрузке оборудования, оставления заявок на использование
оборудования и администрирования поступивших.
Работа выполнена в соответствии с техническим заданием. В процессе
написания работы было разработано техническое задание, исследована
предметная область, произведено начальное проектирование системы с
обоснованием
выбора
средств
разработки,
предоставлено
обоснование
используемых алгоритмов и их преимуществ, создан модуль сайта, проведено
тестирование, а также создание документации.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
1.
Сайт
ЦКП
URL:
http://www.ckpvt.ru/ru/
(дата
обращения:
13.05.2017);
2.
Официальный сайт поддержки JOOMLA! URL:http://joomla.ru/ (дата
обращения: 23.05.2017);
3.
Сайт центра коллективного пользования научным оборудованием
«Арктика»
URL:http://narfu.ru/science/ccu/service/forma/
(дата
обращения:
13.06.2017);
4.
Сайт Томского регионального центра коллективного пользования
URL: http://ckp.tsu.ru/services/application/(дата обращения: 13.06.2017);
5.
Сайт технопарка «Сколково» URL: http://sk.ru/technopark/ (дата
обращения: 13.06.2017);
6.
JOOMLA! Портал URL: https://joomlaportal.ru/ (дата обращения:
13.06.2017);
7.
Сайт поддержки плагина FullCalendar URL: https://fullcalendar.io/
(дата обращения: 13.06.2017);
8.
Сайт библиотеки jQuery URL: https://jquery.com/ (дата обращения:
13.06.2017);
9.
Справочник
jQuery
URL:
http://jquery.page2page.ru/index.php5/JQuery_UI (дата обращения: 14.06.2017);
10. Денис Колисниченко. Движок для вашего сайта. CMS Joomla!,
Slaed, PHP-Nuke. — Петербург: БХВ, 2008. — 352 с.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
11.
Система
управления
содержимым
[Электронный
ресурс]
//
«ВикипедиЯ»
URL:https://ru.wikipedia.org/wiki/Система_управления_содержимым
(дата
обращения: 13.06.2017);
12.
Обработка и оформление отчетов в Excel на PHP / Хабрахабр URL:
https://habrahabr.ru/post/245233/ (дата обращения: 14.06.2017);
13.
PHPExcel/github URL: https://github.com/PHPOffice/PHPExcel (дата
обращения: 14.06.2017);
14.
Русская документация по CMS JOOMLA! URL: http://joomla-
book.ru/development/classes/jdatabase-direct-requests-to-the-database-joomla (дата
обращения: 14.06.2017);
15.
POST
(HTTP)
//
Материал
из
Википедии
—
свободной
энциклопедии URL: https://ru.wikipedia.org/wiki/POST_(HTTP) (дата обращения:
12.06.2017);
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
ПРИЛОЖЕНИЕ А ТЕХНИЧЕСКОЕ ЗАДАНИЕ
УТВЕРЖДАЮ
Руководитель ЦКП "Высокие
технологии"
_____________ Олишевский Д.П.
15 мая 2017 г.
A.1 Введение
Требуется создать модуль для уже функционирующего сайта Центра
Коллективного Пользования ЮФУ, обеспечивающий
устойчивый механизм
подачи и администрирования заявок.
А.2 Основания для разработки
Задание на выпускную квалификационную работу
А.3 Назначение разработки
ЦКП "Высокие технологии" обеспечивает пользователям возможность
проводить экспериментальные исследования на уникальном наукоемком
оборудовании. Услугами ЦКП могут пользоваться ученые
и студенты из
большого региона (ЮФО), и потребность в конкретном оборудовании часто
возникает уже в ходе научных исследований. Поэтому загрузка оборудования
чаще всего не имеет систематического характера, а её планирование имеет
оперативный характер (график составляется на месяц, для оперативного
управления и информирования потенциальных пользователей).
Основной для планирования использования уникального оборудования
для проведения экспериментов являются заявки пользователей. Для повышения
эффективности
возможность
использования
подавать
приборов
заявки
в
пользователи
удаленном
должны
режиме,
иметь
используя
соответствующую функциональность веб-сайта ЦКП "Высокие технологии".
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Эта функциональность должна обеспечиваться специализированным
модулем, который имеем механизмы для поддержки процессов подачи,
администрирования и журнализации выполнения заявок.
А.4 Требования к модулю обслуживания заявок
Сайт функционирует на основе системы управления Joomla 3.x.
Используется общий для всех страниц шаблон. Для навигации по сайту
используется двухуровневая система меню: главное в виде строки и
вспомогательные выпадающие меню. С работой модуля обслуживания заявок
связаны разделы главного меню Информация и Формы.
а) Подача заявок
Для подачи заявки пользователь должен заполнить форму, которая
предлагается на странице "Заявки" пункта главного меню "Формы". Форма
содержит следующие поля и управляющие элементы.
Таблица 1 – Структура формы заявки
№
1
2
3
4
5
6
Содержание
информации
(фамилия, организация, артикул
и т.п.) и тип поля
(текст
—
указывается
Название поля
ограничение
на
длину,
дата,данные из предлагаемого
списка — приводится список и
т.п.)
Пользователь
ФИО, текст 50 символов
Организация
текст, 100 символов
Характер сотрудничества Список:
Хозяйственный договор;
Иная форма сотрудничества
Наименование
Текст, 100 символов
организации заказчика
Адрес организации
Текст, 100 символов
Рабочий почтовый адрес
Дополнительный
почтовый адрес
Тип аренды
Тип поля
обязательное/
необязательное
обязательное
обязательное
обязательное
обязательное
e-mail
e-mail
для исследователей
из
ЮФУ
необязательное
обязательное
необязательное
Почасовая
обязательное
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
7
8
9
10
11
12
13
14
Дата начала работ
Дата окончания работ
Содержание
заявки
Прибор
Кнопка
"Предварительный
просмотр"
Кнопка "Сбросить"
Кнопка
"Отправить
заявку"
Автоматизированный
тест
Тьюринга
для
различения компьютеров
и людей
....
....
Дата и время
Дата и время
Текст, 100 символов
Выпадающий список
обязательное
Содержание заявки в текстовом
виде, кнопки "Продолжить" и
"Назад"
Графическая кнопка
Графическая кнопка
Символьный тест
обязательное
Поля содержат "водяные знаки", описывающие содержание и/или формат
информации.
Регистрация происходит посредством добавления дат пользования
оборудованием в календаре.
Заявки, принятые к исполнению, становятся доступными пользователям
на странице "Календарная загрузка оборудования" в пункте главного меню
"Информация".
б) Администрирование заявок.
Функции
администрирования
доступны
пользователям
с
ролью
"Администратор".
Каждая заявка в каждый момент имеет определенный статус: не
обработана, принята, отвергнута, выполнена. Администрирование заявок
включает три операции: первичная обработка заявки, внесение изменений в
принятые заявки и управление выполненными заявками.
После поступления заявка попадает в список необработанных заявок со
статусом "Не обработана".
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Этот список доступен пользователю с правами администратора через
пункт меню "Информация", который доступен только пользователям этого типа.
Администратор выбирает поступившую заявку и, в зависимости от того,
принята она или нет, меняет статус заявки. При сохранении результата
информация из принятой заявки помещается в график "Календарная загрузка
оборудования" в пункте главного меню "Информация".
Если заявка отвергнута, то меняется её статус на «Отвергнута».
Администратор имеет возможность редактировать информацию в
принятой, но еще неисполненной заявке. Эта функция доступна ему через
пункт меню "Информация".
После выполнения заявки Администратор в режиме редактирования
заявки меняет её статус на "Выполнена" и сохраняет обновленную
информацию.
в) Журнализация.
Для составления отчетов по использованию оборудования реализуется
специальная функция "Составить отчет" (пункт меню "Информация").
Администратор указывает период, за который необходимо обработать
данные. В журнал включается информация только о заявках, исполненных в
заданный период (со статусом "Выполнена").
Журнал формируется в виде таблицы следующего вида, которая может
быть сохранена в файле формата xls/xml.
Таблица 2 – Журнал учета рабочего времени оборудования
№
п/
п
Наименован
ие
оборудован
ия
ФИО,
Время
Дата
Содержани должность,
работы
Прим
выполнени
выполняющег
оборудовани .
е работ
я работ
о работы
Примечания
для
возможных
я
комментариев
администратора,
первоначально пустое поле.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
А.5 Требования к графику загрузки оборудования
Календарный график загрузки оборудования представляется в
формате: занятость оборудования помесячно с возможностью просмотра
событий на выбранную дату в часах. График отображается на сайте с
автоматическим обновлением.
А.6 Требования к внешнему оформлению
Для отображения веб-страниц модуль использует шаблон, принятый для
основной части сайта.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
ПРИЛОЖЕНИЕ Б ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЮ
Для начала работы с модулем пользователю необходимо зайти на
главную страницу основного сайта.
Для подачи заявки необходимо перейти на страницу Формы->Заявка,
заполнить как минимум всё обязательные поля, в том числе выбрать прибор,
пройти символьную капчу. В случае ввода ошибочных данных, пользователю
предоставлена возможность очистить все поля с помощью кнопки «Очистить».
Если данные введены верно, необходимо отправить форму, нажав кнопку
«Отправить», после чего пользователь получит письмо о том, что его заявка
поступила на рассмотрение.
Заявка отобразится на странице Информация->«Календарная загрузка
оборудования» после того как администратор изменит её статус на «Одобрена».
Для просмотра поступивших заявок на определенный прибор, пользователь
должен выбрать соответствующее наименование в списке оборудования.
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
ПРИЛОЖЕНИЕ В
В
разделе
приведены
скриншоты,
отображающие
интерфейс
пользователя и средства его создания.
Рисунок В.1
Рисунок В.2
Рисунок В.3
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Рисунок В.4
Рисунок В.5
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Рисунок В.6
Лист
Изм.
Лист
№ докум.
Подпись
Дата
52
Отзывы:
Авторизуйтесь, чтобы оставить отзыв