Онлайн-тренажёр «цепочки химических реакций» (проект)

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
Ментор Яков Литвин
Учебный семестр Осень 2017
Учебный курс 2-й курс
Проект можно развивать на летней практике
Максимальное количество студентов, выбравших проект: 3-5



Что это за проект?

Цель проекта – создание онлайн-тренажёра, в котором преподаватель может вводить цепочки химических реакций с пропущенными продуктами или стадиями реакции, а ученик затем может тренироваться и проверять свои знания без участия преподавателя, восстанавливая пропуски. Дело в том, что подобные задачи популярны в олимпиадах и заданиях "С" по химии, но трудоёмкость их проверки лимитирует возможности тренировки учеников. Если в команде более 3 человек, есть смысл браться за ещё более востребованную задачу – цепочки реакций для органической химии (проблема в том, что в органике формулы принято изображать графически, а потому система ввода формул для ученика/учителя становится отдельной задачей).

Чему вы научитесь?

Работа с пользователем? (элементы дизайн-мышления/Agile, user story, stakeholder-анализ..) Дизайн? Прототипирование? Тестирование?

Создание SAP (single page application)? Web-сервиса? Освоение jQuery? Full stack? Дополнительных фреймворков?

Всё будет сильно зависеть от ваших начальных знаний и интенсивности работы.

Какие начальные требования?

Базовые знания front-end (html/css/js) обязательны. Если в команде более 3 человек, крайне желательны знания HTML Canvas или SVG. Большим плюсом будет знание серверного языка и умение развернуть хостинг с серверным приложением.

Какие будут использоваться технологии?

Для реализации MVP достаточно знаний основ front-end (html/css/js); вероятно, будет уместно использование jQuery; возможные направления развития предполагают освоение html canvas либо манипуляции svg с помощью js, back-end языка (Python, PHP или иного) и БД типа MySQL, при необходимости – back-end фреймворка.

Темы вводных занятий

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

Направления развития

Поднятие веб-сервиса вместо SAP для удобства ввода новых задач (возможно, и случайной генерации), прохождения с сохранением результатов/интеграция с LMS. Расширение до краудсорсинговой платформы – банка задач, пополняемого разными учителями. Визуальный редактор формул для задач о цепочках в органической химии.

Критерии оценки

Минимальные требования к результату (4-5 баллов) – создание SAP с уравнением реакции hardcoded в виде JSON и работоспособным интерфейсом (цепочки до 5 реакций). Дальнейшее повышение оценки зависит от usability, качества дизайна, в т.ч. минимизации технических требований к пользователю (реализации веб-сервиса вместо SAP) и реализации остальных направлений развития. 7 баллов – за продукт, в который учитель-заказчик сможет самостоятельно ввести 1 цепочку реакций, а 2 ученика – самостоятельно решить (между вводом учителем и решением учеником допускается выгрузка данных с PC на сервер – скажем, через FTP; устное инструктирование пользователей не допускается). 8 баллов – за полностью работающий на сервере продукт, для которого тест выше пройдёт без вмешательства разработчиков и между 2 этапами + позволяющий преподавателю ввести более 1 реакции и дать ссылки на упражнения по отдельности. 9-10 баллов – если аналогичный тест будет пройден с другим учителем (также полностью самостоятельно) и 10 учениками.

Ориентировочное расписание занятий

TBA