Автор: Пользователь скрыл имя, 20 Февраля 2013 в 20:31, курсовая работа
Объект исследования – автоматизированная система расписания занятий высшего учебного заведения.
Предмет исследования – применение современных информационных технологий и средств веб-программирования для создания автоматизированных информационных систем.
Цель работы – проектирование и разработка автоматизированной системы расписания занятий высшего учебного заведения.
Таблица 1 Структура ноды «Расписание занятий»
Метка |
Машинное имя |
Тип поля |
Виджет |
Название |
Title |
Элемент модуля Node |
|
Описание занятия |
body |
Текст с анонсом |
Текстовая область |
Начало |
field_date_rasp |
Дата |
Pop-up calendar |
Окончание |
field_date_rasp_end |
Дата |
Pop-up calendar |
Преподаватель |
field_teacher |
Ссылка на термин |
Выбор из списка |
Место проведения |
field_adress |
Список (текст) |
Выбор из списка |
Аудитория |
field_place |
Текст |
Текстовое поле |
Факультет |
field_faculty |
Ссылка на термин |
Выбор из списка |
Кафедра |
field_kafedra |
Ссылка на термин |
Выбор из списка |
Вид занятий |
field_course |
Список (текст) |
Выбор из списка |
Представления (views)
Модуль Views позволяет создавать и управлять списками содержания (документами, пользователями, таблицами с дополнительными полями). В общем смысле, Views — это инструмент для создания запросов, который позволяет создавать запросы, выполнять их и выводить полученный результат разнообразными способами.
Кроме создания списков
для представления какой-либо информации,
с помощью видов можно
В рамках целей и задачей дипломной работы нами был создан отдельный views, который использует плагин FullCalendar jQuery для отображения сетки расписания занятий и вывод информации из типа материала «Расписание занятий» по дате с использованием взаимосвязанных фильтров таксономии «Специальность – Группа» (рисунок 3.1).
Рисунок 3.1 - Общий вид настройки представления Views
Интерфейс автоматизированной системы представляет собой веб-приложение, разработанное на языке программирования PHP с использованием популярного CMF фреймворка Drupal 7. Интерфейс предоставляет пользователю автоматизированной системы возможность в удобной форме обрабатывать необходимую информацию.
Drupal (Друпал) – одна из самых популярных систем управления сайтом с открытым исходным кодом. Благодаря огромному функционалу и активному сообществу, многие крупные организации и образовательные учреждения выбирают данную CMS в качестве главной составляющей развития компании в сети Интернет. Среди самых высокопосещаемых Интернет-проектов можно выделить сайт Белого Дома (http://www.whitehouse.gov/), сайт Гарвардского университета (http://www.harvard.edu/), официальный сайт операционной системы Ubuntu (http://www.ubuntu.com/), сайт Стенфордского университета (http://stanford.edu), сайт Колумбийского университета (http://columbia.edu), сайт Аризонского университета (http://arizona.edu) и многие другие.
Архитектура CMS/СMF Drupal построена по принципу объектно-ориентированного программирования. Структурной единицей материалов является Node (нода), на её основе строятся остальные типы материалов. Чтобы классифицировать и структурировать ноды в Drupal, введено понятие «Таксономия». Путем создания словарей и терминов можно построить любую структуру будущего веб-проекта.
Разработка сложной автоматизированной системы, как правило, предполагает внедрение разнообразных сервисов, разграничения прав доступа к разделам и материалам, большой объем информации с возможностью семантического поиска, единую авторизацию пользователей во всех сервисах и постоянное развитие проекта в дальнейшем.
Чтобы реализовать указанные
требования, в CMS Drupal существует огромное
количество модулей, с помощью которых
можно построить сложную
В рамках дипломной работы использовались следующие модули Drupal 7:
1. ССK. Позволяет создавать типы материалов и добавлять к ним различные типы полей (текстовое поле, текстовая область, поле даты, изображение, ссылка, скрытые поля).
2. Views. Основной модуль для создания запросов и вывода их на сайте с применением разнообразных фильтров по выбранным полям. В комплексе с различными модулями дает возможность проектировать все виды представлений на сайте.
3. Image. Позволяет редактировать изображения и добавляет поле «Изображение» в содержание материалов. Благодаря поддержке библиотеки Graphics Library (GD) появляются уникальные возможности для обработки изображений с созданием различным стилей и привязки их к определенным полям типов материалов.
4. Node Reference. Модуль для организации связи между материалами.
5. Date. API для работы с датой и гибкое поле "время\дата" для модуля CCK.
6. Calendar. Добавляет на сайт вид с календарём. В календаре можно настроить форматы дат, переключаться между просмотром по годам, неделям и дням. Календарь является видом, все выводимые им данные настраиваются через модуль Views.
7. Feeds. Модуль позволяет собирать данные из различных источников и сохранять их в виде документов, пользователей, терминов или просто записей в базе данных. Основным назначением модуля в автоматизированной системе является экспорт данных расписания занятий в формате .csv.
Для разработки пользовательского интерфейса был применен FullCalendar - jQuery плагин, который использует технологию AJAX. Он имеет широкие функциональные возможности, легок в конфигурации, работает с большинством форматов даты и времени. Так же FullCalendar является плагином с открытым исходным кодом и находиться под лицензией MIT или GPL Version 2.
При открытии главной страницы веб-интерфейса (рисунок 3.2) пользователю предоставляется возможность выбора направления работы:
- выбор факультета
и группы;
- просмотр сетки расписания занятий по
месяцам, неделям и дням;
- просмотр подробной информации об учебных
занятиях;
- просмотр всех занятий по данному предмету в
пределах учебного периода;
- просмотр контактной информации о профессорско-преподавательском
составе.
Рисунок 3.2 - Главная страница веб-интерфейса автоматизированной системы
Переход к работе по выбранным направлениям осуществляется нажатием на ссылку левой кнопкой мыши.
Каждое учебное занятие
обозначается соответствующим маркером-
Рисунок 3.3 - Обозначение цветовых маркеров типов учебных занятий
При нажатии на соответствующее учебное занятие, можно увидеть информацию о времени начала и окончания занятия по изучаемому предмету, аудиторию проведения занятия, место проведения, тип учебного занятия, закрепленного преподавателя (рисунок 3.4).
Рисунок 3.4 - Информация о текущем занятии учебной группы
При нажатии на пункт «Преподаватель», система дает возможность просмотреть контактную информацию о преподавателе и весь учебный план. Контактная информация включает в себя Ф.И.О преподавателя, должность, e-mail, контактный телефон, аудиторию, специальность и общее резюме (рисунок 3.5).
Рисунок 3.5 - Информация о преподавателе и закрепленных учебных предметах
Для централизованной настройки и управления автоматизированной системой расписания занятий система управления сайтом CMS Drupal 7 имеет удобную административную панель и различные инструменты для удобного назначения административных прав и ролей.
В системе существует один суперпользователь (admin) у которого нет ограничений на все действия в системе, он может редактировать и удалять любые материалы, управлять конфигурацией проекта и ограничивать действия других пользователей.
Анонимные пользователи и зарегистрированные пользователи являются ролями. Таким образом, суперпользователь (admin) может добавлять неограниченное количество ролей, в которых можно назначить права доступа к различным областям автоматизированной системы.
На рисунке 3.6 можно увидеть все роли с набор прав доступа к различным сущностям веб-проекта (анонимный пользователь, авторизованный пользователь, администратор, редактор расписания биологического факультета).
Таким образом, с учетом основных требований к безопасности автоматизированной системы можно выделить основные преимущества данной СMS:
- безопасность кода
системы управления регулярно
проверяется независимыми
- политика учетных записей, разделение
пользователей на группы;
- разграничение уровней доступа для различных групп пользователей;
- вводимые пользователем данные фильтруются
и проверяются на предмет попыток взлома;
- защита от попытки взлома паролей «перебором»;
Для различных типов
ролей предусмотрена
Рисунок 3.7 - Импорт расписания занятий в формате .csv
Для массового заполнения предусмотрен импорт готового файла в формате .csv с набором ячеек, согласно разработанному интерфейсу администрирования расписания занятий (рисунок 3.7).
Веб-проект спроектирован с использованием современной адаптивной верстки (responsive web design) и применением медиа-запросов CSS3 для отображения на различных типах устройств – персональные компьютеры, планшеты и смартфоны. Кроме того, архитектура темы очень широко использует drupal_static методы кеширования, которые ускоряют рендеринг страницы и снижают количество запросов.
Адаптивный веб-дизайн – это концепция разработки сайта, при которой веб-проект сайт адаптируется под различные устройства, например, планшеты, смартфоны, телевизоры с выходом в интернет. В связи с огромным ростом мобильных устройств за последнее время, адаптивный, или отзывчивый дизайн стал крайне необходимым для многих образовательных учреждений.
Основным преимуществом такого подхода является:
Таким образом, разработанная система упрощает процесс просмотра актуального расписания занятий для студентов и дает возможность сотрудникам вуза оперативно рассчитывать нагрузку на кафедры на основе анализа имеющихся учебных планов специальностей. Результаты работы системы в дальнейшем можно использовать для планирования анализа структур нагрузки, а также планирования структурной доработки и унификации имеющихся учебных планов.
В результате проделанной
работы была разработана автоматизированная
система расписания занятий учебного
заведения с целью ее внедрения
в учебный процесс
Данная система имеет удобный пользовательский интерфейс, позволяющий легко освоить работу в программе, гибкость же программного кода в случае необходимости позволит удовлетворить растущие требования к системе.
Преследуемая изначально цель автоматизации процесса расписания занятий достигнута. Разработанную автоматизированную систему можно интегрировать в единую информационную систему ВУЗа, что, несомненно, положительно скажется на работе пользователей при анализе структуры нагрузки, при планировании структурной доработки и унификации имеющихся учебных планов.