Разработка системы учета успеваемости студентов на основе рейтинговой системы - подсистема "Кафедра"

Курсовой проект - Компьютеры, программирование

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

?ласса:

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 Краткое содержание

Документ описывает высокоуровневые требования к системе учета успеваем