Описание работы над проектом — различия между версиями
(стр) |
(ааа) |
||
| (не показаны 3 промежуточные версии этого же участника) | |||
| Строка 1: | Строка 1: | ||
= Проект 2025/2026 = | = Проект 2025/2026 = | ||
| + | |||
| + | <span style="color:red">За советами и помощью всегда идите к автору проекта!!!</span> | ||
| + | |||
== Зачем? == | == Зачем? == | ||
| Строка 65: | Строка 68: | ||
# По минимуму писать функций и по максимуму использовать ООП. | # По минимуму писать функций и по максимуму использовать ООП. | ||
# Использовать паттерны, которые проходили. | # Использовать паттерны, которые проходили. | ||
| + | # Ваше приложение должно жить в докере (dockerhub) | ||
| + | # По возможности приложение должно быть развернуто в облачной среде. Если потребуется виртуалка, пишите https://t.me/turbomuza | ||
| + | |||
| + | '''Отдельное требование к ботам:''' | ||
| + | # Бот должен быть написан на aiogram | ||
| + | # Бот должен быть покрыт тестами | ||
| + | # Секреты бота должны быть скрыты от внешнего мира и подружены с .gitignore => внешний мир чтобы их никогда не увидел | ||
| + | |||
| + | '''Отдельное требование по БД:''' | ||
| + | # Секреты (логин и пароль) к БД должны быть спрятаны | ||
| + | # Схемы должны быть отрисованы в документации (на момент защиты должна быть в документации актуальная схема БД) | ||
| + | # Должно быть ассинхронное подключение | ||
| + | # Никаких сырых запросов, используем slqalchemy | ||
| + | |||
| + | '''Отдельное требование к МЛ:''' | ||
| + | # Обучающие данные должны быть закомичены | ||
| + | # Pypeline обучения (ваши джупитеры) должны быть закомичены | ||
| + | # Моделька должна быть куда-то выложена | ||
| + | |||
'''Вес этапа: 50%.''' | '''Вес этапа: 50%.''' | ||
| − | '''Дедлайн: | + | '''Дедлайн: 20.12.2025, 23:59''' |
| + | <span style="color:red">К итогу дедлайна должен быть сделан последний коммит, а если потребуются последующие, то только минимальные по исправлению багов и мелких доработок, не повлекшие к существенному изменению архитектуры проекта.</span> | ||
---- | ---- | ||
| Строка 87: | Строка 110: | ||
Вы приходите в назначенный пулл, рассказываете всё, что сделали, | Вы приходите в назначенный пулл, рассказываете всё, что сделали, | ||
отвечаете на вопросы преподавателя или ассистента. | отвечаете на вопросы преподавателя или ассистента. | ||
| + | |||
| + | <span style="color:green">Работоспособность вашего кода влияет на оценку в коэффициент с кодом</span> | ||
| + | |||
| + | <span style="color:blue">Продуктовая составляющая влияет на оценку в коэффициент с защитой </span> | ||
| + | |||
После этого получаете оценку и идёте отдыхать. :) | После этого получаете оценку и идёте отдыхать. :) | ||
| + | |||
| + | === Итог === | ||
| + | |||
| + | O<sub>итог</sub> = 0,2 * Дока + 0,5 * код + 0,3 * Защита | ||
Текущая версия на 12:08, 16 ноября 2025
Содержание
Проект 2025/2026
За советами и помощью всегда идите к автору проекта!!!
Зачем?
Чтобы научить вас делать минимально-максимальные проекты и быстро погрузиться в предметную область.
Этапы
Этап 1
Вам необходимо вписаться в проект в табличку. Там есть столбцы TL и Dev_n.
- TL — лид команды. Выбирается внутри команды (или может быть назначен лектором).
- Dev1, Dev2, Dev3, Dev4 — участники-разработчики.
Обязанности TL:
- может меньше писать код и больше заниматься проектированием и ревью;
- отвечает за выполнение задач командой;
- может писать столько же кода, сколько остальные, обязанности могут быть формальными.
Этап 2
Необходимо проработать идею и перенести её в документацию.
Лид команды создаёт в своём репозитории на GitLab (где он делает ДЗ) папку:
final_project
и выкладывает туда Markdown-файл со схемами и описанием проекта.
Хороший пример — UML, диаграммы Mermaid. Можно использовать сервис: https://mermaid-drawing.com/
К 25 ноября 2025 года 23:59 необходимо:
- Закоммитить документацию, включающую:
- графики и схемы взаимодействия вашей системы;
- описание проекта:
- что будет видеть пользователь;
- какие задачи необходимо выполнить;
- сколько времени потребуется на каждую задачу;
- кто что делает в команде.
- Скинуть репозиторий на GitHub, где будет вестись разработка.
Ссылки на GitLab с документацией и задачами размещаются в той же таблице, куда вы вписывались.
Вес этапа: 20%. Если его не сдать — преподаватели не смогут провалидировать идею и оценка на защите может сильно пострадать.
Этап 3
(Мог начаться параллельно со 2 этапом.) Это реализация проекта.
У вас был хороший пример структуры в ДЗ-1 и ДЗ-2 — примерно такую же ожидаем здесь.
Полезные best practices: https://github.com/topics/python-template
Требования:
- Структура проекта должна быть валидной (как в ДЗ2).
- Минимум бойлерплейта — соблюдайте принцип DRY.
- По возможности следовать SOLID (см. лекцию №2).
- Код должен быть покрыт тестами, coverage ≥ 65%.
- По минимуму писать функций и по максимуму использовать ООП.
- Использовать паттерны, которые проходили.
- Ваше приложение должно жить в докере (dockerhub)
- По возможности приложение должно быть развернуто в облачной среде. Если потребуется виртуалка, пишите https://t.me/turbomuza
Отдельное требование к ботам:
- Бот должен быть написан на aiogram
- Бот должен быть покрыт тестами
- Секреты бота должны быть скрыты от внешнего мира и подружены с .gitignore => внешний мир чтобы их никогда не увидел
Отдельное требование по БД:
- Секреты (логин и пароль) к БД должны быть спрятаны
- Схемы должны быть отрисованы в документации (на момент защиты должна быть в документации актуальная схема БД)
- Должно быть ассинхронное подключение
- Никаких сырых запросов, используем slqalchemy
Отдельное требование к МЛ:
- Обучающие данные должны быть закомичены
- Pypeline обучения (ваши джупитеры) должны быть закомичены
- Моделька должна быть куда-то выложена
Вес этапа: 50%.
Дедлайн: 20.12.2025, 23:59
К итогу дедлайна должен быть сделан последний коммит, а если потребуются последующие, то только минимальные по исправлению багов и мелких доработок, не повлекшие к существенному изменению архитектуры проекта.
Этап 4
После завершения реализации проекта необходимо подготовиться к защите.
TL команды собирает достижения всех участников и свои, описывает их в документе в папке:
final_project
Дедлайн: 18.12.2025, 23:59 Вес этапа: 30%.
Этап 5
Защита будет проходить в один из дней декабря 2025 (точная дата TDB).
Вы приходите в назначенный пулл, рассказываете всё, что сделали, отвечаете на вопросы преподавателя или ассистента.
Работоспособность вашего кода влияет на оценку в коэффициент с кодом
Продуктовая составляющая влияет на оценку в коэффициент с защитой
После этого получаете оценку и идёте отдыхать. :)
Итог
Oитог = 0,2 * Дока + 0,5 * код + 0,3 * Защита