Search
Cílem semestrální práce je ověřit znalosti nabyté v rámci přednášek a cvičení, a umožnit studentům vyzkoušet si práci na větším projektu v Javě. Semestrální práci je možno vykonávat samostatně či ve dvojicích, větší skupiny nejsou dovoleny. Při práci ve dvojici se předpokládá, že rozsah celé práce bude větší než při samostatné práci. Studenti v týmu mohou být z různých paralelek - v tom případě se ale domluví s oběma cvičícími, u kterého z nich budou práci odevzdávat.
Téma semestrální práce si můžete určit sami, a pro formalizaci zadání je určen první checkpoint (viz níže); případně si můžete vybrat jedno z předpřipravených témat. V tom případě se však očekává, že dané zadání “obohatíte” o vlastní netriviální funkcionalitu. Předpřipravená zadání vám také mohou sloužit jako vodítko pro vlastní téma, abyste stanovili dostatečný rozsah práce. Rozsah bude případně korigován vašim cvičícím v jednotlivých checkpointech.
public
Průběžná práce a samotné odevzdání semestrálních prací probíhá ve třech “Checkpointech”, a to vždy v GitLab projektu, který vám byl automaticky založen na začátku semestru, a který naleznete na adrese https://gitlab.fel.cvut.cz/B242_B0B36PJV/username - tedy např. https://gitlab.fel.cvut.cz/B242_B0B36PJV/novakjan.
https://gitlab.fel.cvut.cz/B242_B0B36PJV/username
https://gitlab.fel.cvut.cz/B242_B0B36PJV/novakjan
Cílem tohoto odevzdání je formalizovat zadání, na kterém budete dále pracovat. Zadání bude tvořeno PDF dokumentem, o rozsahu ~2x A4, ve kterém je popsáno kompletní fungování aplikace z hlediska uživatele, a který by měl obsahovat:
V této fázi byste tedy měli mít podrobně vymyšlený celý projekt, a mělo by stačit se pustit do programování. Zároveň by měl mít každý po jeho přectení jasnou představu, jak bude vaše práce vypadat. Tedy například nikoliv „hráč bude hledat určité předměty“, ale „hráč bude hledat krystal, lektvar a meč…“; či nikoliv „uživatel ovládá raketu“, ale „uživatel pomocí kláves WASD ovládá raketu“.
Dokument se bude nacházet jednak ve vašem GitLab projektu, a jednak bude nahrán do BRUTE pod patřičný upload. Cvičící bude hodnotit podrobnost dokumentu, jeho formu i rozsah celé práce.
V rámci druhého checkpointu připravíte ve svém repozitáři:
Po tomto odevzdání by se základní struktura kódu neměla výrazně lišit, a mělo by stačit pouze doimplementovat předpřipravené třídy.
Veškeré dokumenty by se opět měly nacházet jednak v GitLab projektu, a jednak nahrané do BRUTE pod patřičný upload.
Poslední checkpoint je zaměřen nejen na dokončení celého projektu dle zadání z CP1, ale i finální prezentaci, jejíž formu vám sdělí cvičící na hodině.
Součástí odevzdání je i uživatelská dokumentace, která může být formou uživatelského manuálu, a která zahrnuje všechny podstatné aspekty aplikace (včetně jejího spuštění!). Inspirací vám může být například tato příručka pro hru FlatOut UC.
Dokončena by měla být i technická dokumentace, obohacena o dokumentaci ve formátu JavaDoc (není třeba generovat HTML formu!). Pokud bude použita komunikace po síti, doporučuje se specifikovat komunikační protokol - tedy jaká data a v jakém formátu se budou mezi serverem a klientem posílat.
Jiný termín odevzdání je možný pouze po předchozí domluvě s cvičícím, a to dostatečně dopředu! Pozdější odevzdání je možné pouze ve výjimečných případech (nemoc, apod.).