Разработка системы учета успеваемости студентов на основе рейтинговой системы - подсистема "Кафедра"
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
?ласса:
setPath() - устанавливает путь до папки с классами-контроллерами.
getController() - обрабатывает строку запроса и находит необходимый файл контроллера. Умеет производить рекурсивный поиск в структуре папок, если контроллер вложенный. При попытке неавторизированного доступа возвращает user/login, показывающий форму авторизации.
delegate() - осуществляет проверку на доступность контроллера, выданного методом getController, подключает файл, создает экземпляр класса и осуществляет вызов нужного действия. Если контроллер отсутствует, выдает ошибку 404.
5)Класс Access. Проверяет разрешения пользователя на доступ к определенным функциям ПС. Реализуемые методы:
get_privilege() - получает строку, идентифицирующую привилегию и возвращает true в том случае, если у текущего пользователя имеется соответствующее разрешение.
restrict() - метод выводит сообщение Доступ запрещен и завершает выполнение сценария, запрещая таким образом доступ пользователя к текущей странице. Вызывается в случае, если разрешения пользователя не позволяют ему получить доступ к данной функциональности.
Последовательность действий системы, при получении запроса от пользователя, выглядит следующим образом: система получает запрос от пользователя, запускается Front Controller в виде скрипта index.php. Он подключает скрипт startup.php, в котором происходит подключение необходимых библиотек и классов и их инициализация. Затем index.php передает управление экземпляру класса Router, в котором происходит запуск нужного контроллера. Контроллер выполняет необходимые действия, передает параметры шаблону и определяет имя вторичного шаблона. Затем управление возвращается в index.php, который передает параметры первичному шаблону и инициирует его вывод.
На рисунке 6 можно увидеть диаграмму последовательности работы компонентов системы.
Рис. 6. Диаграмма последовательности работы компонентов
4.5Организация взаимодействия приложения с базой данных.
Связь нашего программного средства с базой данных осуществляется с помощью внешней библиотеки DbSimple. Основные возможности библиотеки:
Поддержка PHP 4 и 5, СУБД: MySQL, PostgreSQL и InterBase/FireBird.
Простой и лаконичный интерфейс
Условные макроподстановки ({}-блоки) и placeholder-ы в теле SQL-запроса
Экранирование спецсимволов и защита от SQL - инъекций
Объединение операций выборки и получения данных
Создание объекта для работы с БД выглядит следующим образом:
$DB = DbSimple_Generic::connect($DSN);
Переменная $DSN задается в конфигурационном файле и имеет вид scheme://user:password@host/database, где scheme - сервер БД (например mysql, interbase), user и password - имя пользователя и пароль для доступа к БД, host - адрес сервера, где расположена БД, database - имя нашей БД.
Выборка из БД осуществляется следующим образом:
$table = $DB->select(SELECT * FROM table);
Переменная $table теперь хранит в себе массив, каждый элемент которого является строкой таблицы базы данных. Получить доступ к данным можно следующим образом:
$id = $table[0][id];
.6 Справочная система
В программном средстве предусмотрена краткая справка по функциям системы. Если для страницы доступна справка, то в верхней части появляется ссылка Справка, при щелчке на которую появляется окно со справочной информацией. При повторном щелчке на ссылку, окно закрывается.
5 Тестирование программного средства
Проведем тестирование системы на некорректный ввод данных.
При попытке ввести несуществующие данные при регистрации система выдает сообщение: Имя пользователя или пароль не верны .
При попытке регистрации пользователя с именем, имеющимся в системе выдается сообщение Пользователь с таким именем уже зарегистрирован .
Если при регистрации пользователя не введен пароль или не совпадают пароль и подтверждение, система так же выведет сообщение об ошибке.
При попытке получения доступа к администраторским функциям системы пользователем, не имеющим соответствующих прав, будет выдано сообщение Доступ запрещен.
Система имеет защиту от удаления элементов, у которых существуют зависимые элементы. Так, например, невозможно удалить факультет, на котором существуют кафедры. Для этого сначала нужно удалить все кафедры факультета (и их дочерние элементы), а затем сам факультет.
Кроме того система имеет защиту от атак типа SQL-инъекции и XSS (cross site scripting)
Заключение
Разработанное программное средство направлено на повышение эффективности деятельности профессорско-преподавательского состава и персонала ВУЗа, путем снижения нагрузки при работе с бумагами и журналами. Разработанное ПС позволяет работникам кафедры своевременно оценивать и влиять на успеваемость студентов и групп, осуществлять сравнение показателей групп на кафедре. Это позволит работникам кафедры добавлять и изменять учебный материал при низкой его эффективности, а преподавателям выставлять оценки студентам по окончании учебного семестра без прибегания к традиционной форме оценивания - сессионных экзаменов.
Приложение А. Введение
1.Введение
1.1Цель
Цель данного документа состоит в том, чтобы собрать, проанализировать и определить высокоуровневые потребности и возможности системы учета успеваемости студентов на основе рейтинговой системы. Документ акцентирует внимание на возможностях, необходимых пользователям.
1.2 Краткое содержание
Документ описывает высокоуровневые требования к системе учета успеваем