Tech Spec Backend Reports - moiaa/College_Management_System GitHub Wiki
Техническое задание на разработку бэкенда модуля "Отчёты"
Ниже — структура ТЗ (общий шаблон, см. также Getting Started). Команда заполняет каждый раздел своим содержанием; текст в квадратных скобках — подсказка, что писать, а не готовый ответ.
1. Назначение модуля
[Что делает модуль и зачем он нужен пользователям системы]
2. Функциональные требования
2.1. Основные функции
- [Функция 1]
- [Функция 2]
- [Функция 3]
2.2. Пользовательские сценарии
Сценарий 1: [Название сценария]
- [Действие пользователя / другого модуля]
- [Что делает backend]
- [Что происходит с данными]
3. Нефункциональные требования
- Производительность: [требования, если есть]
- Безопасность: [кто и как может обращаться к эндпоинтам модуля]
- Совместимость: [зависимости от общих компонентов
core/]
4. Интерфейсы
4.1. API Endpoints
Согласовывается с frontend-командой этого же модуля до начала Модуля 2 — что это значит и как оформлять, см. 🔌 API-контракт.
| Метод | Endpoint | Описание | Успешный ответ | Ошибки |
|---|---|---|---|---|
| GET | /api/v1/reports/... |
[...] | [...] | [...] |
| POST | /api/v1/reports/... |
[...] | [...] | [...] |
4.2. Взаимодействие с другими модулями
- [Модуль]: [что именно нужно от другого модуля или ядра
core/]
5. Структура базы данных
5.1. Таблицы
Таблица: [table_name]
| Поле | Тип | Описание |
|---|---|---|
| id | Integer | Первичный ключ |
| ... | ... | ... |
6. Критерии приёмки
- Все функции реализованы
- Тесты написаны и проходят (
pytest) - CI зелёный (
pytest+flake8) - Раздел 4.1 согласован с
specification-frontend.mdэтого модуля (см. чек-лист в 🔌 API-контракт) - Pull Request создан и принят
7. Приложения
[Схемы, диаграммы, если нужны]