Документация проекта HW Checker
Добро пожаловать в документацию системы проверки домашних заданий!
HW Checker - это веб-приложение на Django для управления домашними заданиями, организованными по курсам. Преподаватели создают курсы, записывают на них студентов и создают домашние задания. Студенты сдают работы, а преподаватели проверяют их и выставляют оценки.
Содержание
Общая информация:
Разработка проекта:
- Extreme Programming в проекте- Парное программирование (Pair Programming)
- Непрерывная интеграция (Continuous Integration)
- Частые релизы (Small Releases)
- Простой дизайн (Simple Design)
- Рефакторинг (Refactoring)
- Коллективное владение кодом (Collective Code Ownership)
- Тест-ориентированная разработка (TDD)
- Отклонения от ТЗ (улучшения)
 
- Технологический стек
- Руководство по разработке
- CI/CD Pipeline
- Руководство для разработчиков
API Документация:
- Модели (Models)
- Представления (Views)- register_view()
- login_view()
- logout_view()
- dashboard_view()
- student_dashboard()
- course_detail()
- homework_detail()
- my_submissions()
- my_grades()
- available_courses()
- request_enrollment()
- cancel_enrollment_request()
- teacher_dashboard()
- teacher_course_detail()
- create_course()
- edit_course()
- manage_students()
- approve_enrollment_request()
- reject_enrollment_request()
- remove_student_from_course()
- teacher_create_homework()
- teacher_edit_homework()
- teacher_homework_submissions()
- teacher_grade_submission()
- teacher_all_submissions()
- delete_course()
- delete_homework()
- teacher_grades_table()
- home_view()
- Авторизация
- Dashboard
- Представления для студентов
- Представления для преподавателей
- Общие представления
 
- Формы (Forms)
- Декораторы (Decorators)
История изменений:
Быстрый старт
Установка
git clone <repository-url>
cd SE-XP
pip install -r requirements.txt
cd hw_checker
python manage.py migrate
python manage.py runserver
Использование
- Зарегистрируйтесь как студент или преподаватель 
- Преподаватель создает курс 
- Преподаватель записывает студентов на курс 
- Преподаватель создает домашние задания в рамках курса 
- Студенты видят свои курсы и задания 
- Студенты отправляют решения (файлы) 
- Преподаватель проверяет работы и выставляет оценки 
- Студенты видят оценки и отзывы в таблице оценок