Разработка программного обеспечения для подсистемы автоматизированного составления расписания

Автор: Пользователь скрыл имя, 20 Февраля 2013 в 20:31, курсовая работа

Описание работы

Объект исследования – автоматизированная система расписания занятий высшего учебного заведения.
Предмет исследования – применение современных информационных технологий и средств веб-программирования для создания автоматизированных информационных систем.
Цель работы – проектирование и разработка автоматизированной системы расписания занятий высшего учебного заведения.

Работа содержит 1 файл

AutoShedule.doc

— 841.00 Кб (Скачать)

Таблица 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

3.2 Технология разработки  автоматизированной системы расписания  занятий и описание интерфейса  системы управления сайтом CMS Drupal 7

Интерфейс автоматизированной системы представляет собой веб-приложение, разработанное на языке программирования 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.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 методы кеширования, которые ускоряют рендеринг страницы и снижают количество запросов.

Адаптивный веб-дизайн – это концепция разработки сайта, при которой веб-проект сайт адаптируется под различные устройства, например, планшеты, смартфоны, телевизоры с выходом  в интернет. В связи с огромным ростом мобильных устройств за последнее  время, адаптивный, или отзывчивый дизайн стал крайне необходимым для многих образовательных учреждений.

Основным преимуществом такого подхода является:

  1. HTML5
  2. Поддержка адаптивной верстки для различных типов устройств
  3. Адаптивный JavaScript
  4. Обратная совместимость со старыми браузерами
  5. Интеграция с SAAS (мета-язык описания стилей)
  6. SEO-оптимизированный код темы
  7. Активная поддержка атрибутов RDF, ARIA и «чистая» разметка.

Таким образом, разработанная  система упрощает процесс просмотра  актуального расписания занятий  для студентов и дает возможность сотрудникам вуза оперативно рассчитывать нагрузку на кафедры на основе анализа имеющихся учебных планов специальностей. Результаты работы системы  в дальнейшем можно использовать для планирования анализа структур нагрузки, а также планирования структурной доработки и унификации имеющихся учебных планов.

Заключение

В результате проделанной  работы была разработана автоматизированная система расписания занятий учебного заведения с целью ее внедрения  в учебный процесс университета.

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

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

Информация о работе Разработка программного обеспечения для подсистемы автоматизированного составления расписания