Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Веб-сервис (сайт) [далее - Сервис] по самообучению математике и преподаванию математики.

Сервис должен корректно отображаться в первую очередь на смартфонах, во вторую - на планшетах и в третью - на мониторах.

Предполагается поэтапное выполнение работ с поэтапной оплатой.

Предполагаемые средства разработки:

html+css

jquery  (или непосредственно javascript)

php

mysql

Максимальное использование ajax. Сервис должен работать максимально быстро. (Прототип [первая пробная версия Сервиса] имеется; ее можно использовать, в том числе, для того, чтобы увидеть, насколько быстро должно работать). По этой причине крайне нежелательно использовать универсальные php фреймворки. В процессе создания полагается, что возникнет специализированный php/js api; как минимум для таких часто используемых операций, как CRUD должен быть, естественно, создан api для частого, быстрого и простого использования.

Предполагается использование Git: разработчик выгружает новую версию в репозиторий и оттуда на тестовый сервер. Заказчик тестирует, и если все в порядке - выгружает на рабочий сервер.

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

Сервис многопользовательский. Первоначальная нагрузка небольшая (порядка 20 пользователей), далее она может расти. 

Требуется регистрация, авторизация пользователей (e-mail, Вконтакте). С возможностью восстановления пароля, запоминанием пароля в браузере для облегчения дальнейшего входа). 

Роли, которые могут быть назначены пользователю:

- редактор

- учитель

- ученик

- суперадмин

Редактор "видит" только себя, учитель - себя и своих учеников, ученик только себя, суперадмин - всех.

Редактор

Массово загружает задачи в Сервис, добавляет новые задачи по одной вручную, редактирует задачи, удаляет задачи.

Учитель

Добавляет своих учеников, редактирует контактную информацию по ним, удаляет учеников.

Формирует расписание занятий для своих учеников.

Выбирает задачи для занятия, проводит занятие: имеет шпаргалку с решениями и ответами, отмечает задание выполненным, выбирает (полуавтоматически) и задаёт задачи для домашнего задания и для контрольной работы, выбирает и задаёт вопросы для домашнего задания, видит результаты выполнения домашнего задания и контрольной работы.

Ученик

Видит список вопросов для домашнего задания (чтобы подготовиться к ответам на них), решает задачи домашнего задания, решает задачи контрольной работы.

Вместо обучения с учителем, ученик может заниматься самостоятельно (по стандартной программе обучения), выбирая, каким группам задач он желает обучаться (имеется порядка 20 

групп задач).

Суперадмин

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

Например, если один и тот же пользователь имеет роль и учителя и редактора, он может и проводить занятия и редактировать содержимое задач (прямо во время проведения занятия).

Предполагается возможность разграничения доступа к Сервису: доступ может быть бесплатным и платным. Это решает суперадмин. Он может давать возможность использования Сервиса как пожизненно, так и на какое-то время, например месяц, полгода, год. 

Должна быть кнопка "оплатить" с дальнейшим переходом на платёжный шлюз.

На данный момент политика взимания платы проработана не полностью.

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

Если этот человек желает начать обучение тому, как решать не только эту задачу, но и всю группу задач, он должен зарегистрироваться.

Задача имеет следующие параметры:

- группа

- текст задачи (html)

- одна или несколько картинок (svg/png/jpg)

- решение

- ответ

- формулы, которые требуется знать для решения этой задачи

- опорные задачи, которые требуется уметь решать для решения этой задачи

- последовательность шагов (с результатами каждого шага), которые нужно пройти для решения этой задачи

Предположительная схема реляционной БД для Сервиса будет предоставлена разработчику заказчиком.

5 лет назад
ttstudio
Дмитрий 
43 годаРоссия
14 лет в сервисе
Был
2 года назад