Skip to content

Latest commit

 

History

History
 
 

README.md

Указания за разработка на курсов проект

  1. Курсовите проекти са индивидуални.

  2. Може да изберете един от предложените проекти или да измислите и предложите собствена идея. Проекти по собствена тема се приемат след предварително одобрение – изпратете предложението си на екипа на курса.

  3. Всички курсови проекти трябва да покриват следните общи изисквания:

    • Демонстрират знания и умения за:
      • работа с вход-изход и файлове
      • многонишково програмиране
      • мрежова комуникация.
    • В сървърната част, обработката на клиентските команди и бизнес логиката се извършва отделно от мрежовата комуникация, като решението е многонишково и работи коректно в concurrent среда.
    • Включват unit тестове с поне 50% line code coverage.
    • Осигуряват коректна валидация на входните данни.
    • Имат ясен и добър обектно-ориентиран дизайн.
    • Използват подходящи изключения за коректно докладване и обработка на грешки.
    • Прилагат подходящи структури от данни и ефективни алгоритми.
    • Съдържат четлив и добре структуриран код.
    • Използват единствено Java SE и външни библиотеки и API-та, разглеждани в курса или изрично указани в условието. При необходимост или желание за използване на допълнителни технологии, това следва предварително да се обсъди с екипа на курса.
    • Съдържат кратка техническа документация (README), описваща архитектурата на решението, основните компоненти и начина, по който е организирано concurrent изпълнението и гарантирана коректността му.

🤖 Отговорно използване на AI и академична почтеност

Използването на генеративни AI инструменти (напр. GitHub Copilot, ChatGPT и др.) е допустимо като помощно средство в процеса на учене, но не и като заместител на самостоятелното мислене, проектиране и разработка. Всеки студент носи отговорност за разбирането, тестването и аргументирането на кода, който предава.

При използване на AI инструменти това задължително следва да бъде ясно и коректно декларирано в документацията на проекта – с описание кои части са генерирани или подпомогнати от AI, с каква цел, и как е проверена тяхната коректност. Изискването важи както за продуктивния код, така и за тестовете.

Положителната оценка на проекта предполага, че съществената част от кода и тестовете е разработена самостоятелно, без AI асистенция. Степента и характерът на използване на AI се вземат предвид при формирането на крайната оценка.

Представянето на заимстван или автоматично генериран код, който не е коректно деклариран, както и невъзможността той да бъде обяснен, защитен или самостоятелно рефакториран по време на защитата, ще се третира като нерегламентирано подпомагане или плагиатство и ще води до санкции съгласно правилата на курса и университета.

Целта на тези изисквания не е да ограничи използването на съвременни инструменти, а да насърчи отговорната им употреба, реалното усвояване на материала и поддържането на високи стандарти на академична почтеност.

Варианти за теми

# Тема
1 Authentication Server
2 Bookmarks Manager
3 Dungeons Online
4 Uno
5 Food Analyzer
6 Split(NotSo)Wise
7 Spotify
8 Torrent Server
9 Password Vault
10 Todoist
11 Cryptocurrency Wallet Manager
12 По ваш избор