Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архив1 / doc92 / КУРСОВАЯ(12).doc
Скачиваний:
26
Добавлен:
03.08.2013
Размер:
307.71 Кб
Скачать

6. Описание основных функциональных процессов в системе

6.1. Авторизация

Авторизации происходит через сторонний сервис. Поскольку сервисы предоставляют разный набор информации при авторизации через социальные сети, система должна получить ответ от oAuth провайдера и заполнить известные поля в модели пользователя. Неизвестные поля заполняются самим пользователем при помощи всплывающей формы и сохраняются в БД для дальнейшего использования. Процесс авторизации представлен на рис.1.

Рис.1. Процесс авторизации.

Поскольку данные поступают с другого ресурса, необходимо их проверить перед занесением в локальную БД. После авторизации пользователь попадает в свой профиль.

БПВин

6.2 Прохождение курса

Курс должен содержать в себе несколько тем. Каждая тема содержит упражнения, которые состоят из небольшой теории и задания для выполнения. Каждое упражнение должно быть посвящено одной команде, и одной команде может быть посвящено несколько упражнений.

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

Процесс выполнения задания РАЗВЕТВЛЕНИЕ (рис.2.) сводится к вводу команды в текстовое поле. Введённые пользователем команды должны до отправки должны проверяться на наличие команды в списке разрешённых команд для данного урока. После этого команда отправляется на сервер, скрипт её проверят и результат должен быть отображён у пользователя без перезагрузки страницы.

Рис.2. Процесс выполнения заданий.

Процесс проверки заданий необходимо реализовать через технологию AJAX.

AJAX (Asynchronous Javascript and XML, «асинхронный JavaScript и XML») - подход к построению интерактивных пользовательских интерфейсов web-приложений, заключающийся в «фоновом» обмене данными браузера с web-сервером. В результате, при обновлении данных веб-страница не перезагружается полностью, и веб-приложения становятся более быстрыми и удобными.

При применении данного подхода необходимо воспользоваться библиотекой jQuery. Библиотека jQuery помогает легко получать доступ к любому элементу DOM, обращаться к атрибутам и содержимому элементов DOM, манипулировать ими.

6.3 Получение наград

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

Необходимо реализовать рейтинг пользователей по времени прохождения курса.

6.4 Генерирование отчёта

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

7 Проектирование информационно-логической модели данных

В ходе анализа предметно области были выявлены основные информационные объекты.

Информационный объект «Пользователь» - любой человек, который пользуется системой и авторизован.

Информационный объект «Тема» - признак, по которому группируются упражнения.

Информационный объект «Урок» - краткое теоретический материал и задание к нему.

Информационный объект «Награда» - признак поощрения пользователей за выполнение упражнений.

Информационный объект «Пройденные уроки» - информация о выполненных упражнениях.

Информационный объект «Награды пользователя» - информация о полученных наградах.

+ вывод

Соседние файлы в папке doc92