Задача
В связи с этим, передо мной была поставлена задача:
Разработать программное обеспечение для централизованного хранения и проверки выполненных работ студентов.
Решая эту задачу, я так же упрощаю студентам сдачу выполненных работ. Это позволяет студенту скачать свою работу и продолжить выполнение задания, в том случае, если он потеряет свою флешку или другой накопитель, где хранилась последняя версия работы.
Процесс выполнения работ
За основу взяли изучаемый предмет «Основы проектирования баз данных»
Для достижения поставленной задачи, обозначил план работ:
- Определить портрет пользователей
- Выбрать языки программирования, которые несильно требовательны к вычислительным ресурсам
- Определить роли пользователей в системе
- Спроектировать удобный интерфейс c учетом портрета пользователей
- Реализовать ключевой функционал, который требовался для работы преподавателям и студентам.
Подготовительный этап
Перед началом проведения работ, необходимо было определиться:
«А кто же наши пользователи и что для них важно?»
Ведь в конечном итоге, пользоваться приложением будут рядовые сотрудники и студенты.
Я обозначил две основные группы, это:
- Молодые парни и девушки, в возрасте 16-18 лет, которые быстро осваивают и адаптируются под новые технологии
- Женщины и мужчины 35-45 лет. Для которых необходима простота взаимодействия с системой, учитывая индивидуальные особенности здоровья.
Используя эти данные, был спроектировать интерфейс и структура системы таким образом, чтобы она была последовательной и понятной.
По итогу получилась такая схема
Схема разделов системы
Роли системы
Определил 3 основных роли, которые будут в системе, это:
- Авторизованный (студент) – пользователю с данной ролью, доступны разделы с практическими заданиями и групповыми заданиями. Скачивание, отслеживание результата и отправка работы преподавателю на проверку
- Администратор – пользователю с такой ролью, доступен весь функционал системы. В том числе, удаление, добавление и редактирование, как заданий, так и пользовательских данных
- Гость – данный пользователь может посмотреть на изучаемые темы, но скачать и отправить свои работы не мог.
Разработка проекта и инструменты
Для разработки проекта выбрал следующие инструменты:
- Язык программирования PHP — для серверной части проекта
- Библиотеку JQuery — для клиентской части
- Bootstrap 4 — для использования готовых компонентов, что позволяет быстро спроектировать базовый интерфейс системы
- Mindmeister — для составления ментальной карты, с разделами системы.
- Asana — менеджер для управления задачами по проекту
Главная страница системы
На главной странице, на которую попадает пользователь после входа в кабинет, расположили основную информацию о изучаемом предмете и главное меню для перехода в другие разделы.
Главная страница на которую попадает пользователь после авторизации
Раздел «Практические задания»
Основным разделом системы является «Практические задания», в котором выводятся задания для самостоятельного выполнения.
Список практических задания для самостоятельного освоения
Добавление нового задания администратором
При добавлении нового задания, администратор заполняет необходимы поля, а также может загрузить файл, если учебный материал слишком объемный.
После этого, можно переходить к изучению и выполнению заданий.
Раздел с выбранным заданием
Страница с информацией по выбранному заданию
На данной странице расположили краткое описание изучаемой темы. Как я указал ранее, если объем материала слишком объемный, то студенты скачивают его к себе на компьютер и приступает к изучению.
Как только задание выполнено, студент загружает и отправляет преподавателю, и ожидает оценки за данную работу.
Используя такой подход, получаем следующее:
- Обучающийся может приступить к выполнению следующего задания и не стоять в живой очереди у преподавателя
- Работа учащегося не потеряется. Так как эту работу можно скачать и использовать повторно, при необходимости.
- Преподаватель видит, кто из обучающихся уже сдал работу, а кто еще нет
Раздел «Результаты студентов»
Для преподавателя создал раздел, в котором можно посмотреть оценки за практические работы у студентов выбранной группы.
Список групп системы
Так же при выставлении оценки за работу, у каждого студента автоматически подсчитывается средний балл, который потом учитывается при сдаче зачета или экзамена по данной дисциплине.
Список студентов и практических работ выбранной группы
Страница, где преподаватель может скачать работу и поставить оценку за нее
Когда преподаватель выбирает необходимую работу обучающегося, то он может скачать с сервера и проверить, как выполнена работа.
И в соответствии с результатом, поставить оценку от 2 до 5, которая отобразится в таблице у обучающегося.
Раздел «Групповые задания»
Бывают такие задание, которые необходимо выполнять в группах по 3-5 человек. Для этого я расширил функционал одиночных практических заданий.
Преподаватель может создать группы, в которые будут вступать обучающиеся для выполнения практических заданий
После этого ученики отправляют работу, и преподаватель выставляет оценку каждому участнику этой группы, либо единую оценку для всех.
Список добавленных группы системы
Задания для выполнения в группах по 3-5 человек
При выборе интересующей группы, преподаватель и ученик увидят список участников группы.
Список участников выбранной группы
Методология разработки проекта
В связи с тем, что нужно было быстро разработать и внедрить систему, для получения обратной связи. Я использовал гибкую методологию разработки, адаптированную под внутренние процессы.
Благодаря такому подходу, реализовал ключевой функционал раньше срока и получил необходимую обратную связь от студентов и преподавателей для улучшения системы.
А для клиента сэкономил часть денег
Для постановки и управления задачами по проекту использовал менеджер задач Asana