Projekt
Postup při vytváření projektu a bodování je uvedeno zde, termíny jsou uvedeny v plánu cvičení.
Projekt bude hodnocen a opravován (v rámci možností) průběžně. Hodnocen však bude jednotně jako celek v IS až po skončení semestru.
Na cvičení, ve kterém je určeno odevzdání (jednotlivých částí),
můžete ještě provést konzultaci, ale ke konci cvičení (v daném dni)
odevzdáte do svn (při problémech na e-mail cvičícího. Problémy
popište, abychom mohli svn upravit.). Do svn uložíte aktuální verzi,
která se po termínu „zmrazí“ (v den odevzdávání proto
raději provádějte minimum změn). Sledujte kdy se objeví
opravená/okomentovaná verze a připomínky zakomponujete do projektu.
Projekt bude obodován a podle počtu komitů a kvality provedených akci
budou body přepsány s korekcí jednotlivým autorům, tak aby odpovídaly
množství odvedené práce - proto si úkol rozdělte na (přibližně
stejné) části a na nich pracujte samostatně - neodevzdávejte z
jednoho konta/počítače.
V případě náhradního e-mailu: Subjekt
„zadání BPPC“. Odevzdávaný „zip“ soubor
pojmenujte kódem cvičení (po13=pondělí 13:00), jménem autora a názvem
tj. „po13_novak_zlomky“. Koncovku zip pro odeslání
smažte. Odevzdává jen jeden ze skupiny autorů. Po odevzdání
kontrolujte svůj mail, zda cvičící neodepíše že přišlo bez přílohy
(například kontrola virů …, doporučuji pro kontrolu poslat
kopii na jiný například někomu ze skupiny) - posílejte pouze soubory
typu „h“, „c“ a „cpp“ (jinak se
stanete obětí spam a vir filtrů).
Pozn.: tato stránka bude upravována/upřesňována na základě vašich dotazů.
Zadání témat projektů |
Vyberte si téma a dva spoluautory – do příštího cvičení Výběr spolupracovníků – projekt se vypracovává ve skupinách po třech studentech z jednoho cvičení (z důvodu času na konzultace). Doporučuji aby projekt vytvářel každý ze skupiny samostatně, poté jednotlivé verze srovnat, prokonzultovat a složit to nejlepší. Menší skupiny mohou být penalizovány. Výběr tématu (typ kontejneru) a datových typů - stejné téma mohou mít maximálně dvě skupiny na cvičení. Seznam témat. |
Nahlaste zvolené téma a skupinu spoluautorů ve svých cvičeních |
|
Na základě předloženého formuláře napište vlastní zadání vašeho projektu Napište zadání projektu podle předlohy.
Ve formuláři nahraďte červené části textu na základě vlastností
vašeho projektu. Zadání specifikuje základní metody, které musí
třída mít z hlediska procvičení základních mechanizmů fungování
tříd. |
|
hodnocení úplnosti a kvality zadání - 2 body |
|
Připomínky k zadání |
„globální“ chyby v zadání |
Odevzdávané soubory by měly začínat komentářem, jehož součástí jsou jména autorů, název projektu, skupina. Jako součást odevzdání se budou hodnotit správně fungující třídy CItem uložené v projektu v adresáři: CItem a hlavičkový soubor kontejneru uložený v projektu v adresáři: Projekt. Všechny hlavičkové soubory by měly být standardně ošetřeny proti vícenásobnému načtení. Zdrojové soubory CItem: Třídy pro
uložení prvku CItem jsou součástí připraveného projektu (společně
s CItemBase, kterou však neměňte) a měly by být doplněny pro
zvolené typy (různé od bool a TWeekDay) v hlavičkové i zdrojové
části. Původní CItem pro bool a TWeekDay zůstávají součástí
projektu. Určení, který z CItem je používán je realizováno pomocí
jeho zveřejnění do globálního jmenného prostoru (ke změně dochází
pouze na jediném místě v CItem.h). Hlavičkové soubory kontejneru: Projekt se
„odevzdává“ do svn, kde v adresáři trunk je vytvořen
podadresář Projekt, ve kterém na projektu budete průběžně pracovat
(aby se nepřetěžovala svn, ověřte nakonfigurování clienta - viz
www).
Očekáváme, že projekt v svn bude vždy přeložitelný bez chyb
(errors). Do stejného adresáře se bude později „odevzdávat“
i dokončený projekt. Odevzdání
tedy bude minimálně obsahovat: V rámci tvorby hlavičky by bylo dobré začít tvořit dokumentaci projektu (nebude hodnoceno v současném okamžiku ale až po odevzdání celého projektu). Pro tuto dokumentaci je určen adresář trunk/Dokumentace.
Hodnocení - podle kvality a úplnosti a počtu commitů do svn (každý člen pracující na projektu by měl minimálně jednou týdně upravit projekt smysluplným a výrazným způsobem) - 3 body
|
|
Zhodnocení hlaviček |
„globální“
chyby v hlavičkových
souborech. |
Pro zdrojové texty platí v podstatě totéž co pro odevzdání hlavičky, pouze s tím rozdílem, že se doplní i tělíčka metod/funkcí/operátorů a program bude fungovat tak, jak se od něj (v konečném stavu) očekává. Součástí je ukázka činnosti projektu (okomentovaný zdrojový soubor s main, který ukáže volání všech vytvořených metod/funkcí a zajistí kontrolu správného fungování vaší třídy (automatické testování správné funkcionality třídy)). Testováním se myslí například vyzkoušení metod pro odebrání prvku z prázdného objektu, operátor = pro a = a, zjištění počtu prvků objektu po několika přidáních a odebráních ... Samotná třída nebude interaktivně komunikovat s uživatelem. V ideálním případě nebude vypisovat a číst z konzoly vůbec nic (kromě streamů). Chybové stavy může main funkce detekovat zvláštní metodou třídy nebo je možné využít výjimky. Demonstrační program (funkce main) naopak interaktivní být mohou. Program bude demonstrovat načítání dat z konzoly (předtím vypíše popis formátu vkládaných dat se vzorovým příkladem takovýchto dat). Většina hodnot tedy nemusí být zadávány „z venčí“ programu ale mohou být součástí programu (nastavení pomocí konstruktorů, setterů). Tisk obsahu vašeho objektu na konzolu by měl být součástí demonstrace, není však nutné tisknout každou proměnnou po zavolání jednotlivých metod. Program se správně implementovanou knihovnou check nebude hlásit žádné memoryleaky. Soubory budou obsahovat jednoduché komentáře. Očekává se zapracování všech připomínek z předchozích hodnocení a implementace metod v rozsahu (původního) zadání. Změny vůči zadání i odevzdané hodnocené hlavičce jsou povoleny, očekává se, že změny a jejich důvody budou následně popsány v dokumentaci. Odevzdává se tedy do adresáře projekt minimálně: hlavičkový soubor třídy, zdrojový soubor třídy, soubory CItem (2x4ks), cpp soubor s ukázkou použití třídy (soubor s main), check, soubor vzorového zadání dat (je-li použit). Tyto soubory musí být přeložitelné (bez chyb a warningů) v prostředí MS Visual C (projekt prázdná konzola s default nastavením překladače).
Hodnocení zdrojů - kvalita
zdrojových textů, demonstrační program prezentující práci se
třídou s komentáři – 4 body, |
|
Zhodnocení zdrojů |
„globální“ chyby ve zdrojových souborech |
Krátká prezentace a obhajoba projektu (upřesněno cvičícím na předposledním cvičení) – cca 5 minut + dotazy - členové skupiny obhajují jednotlivě Prezentace
by měla obsahovat: úvod, datová reprezentace včetně variant,
přehled zajímavých metod, zajímavý kód, ukázka volání, možnosti
zlepšení. Prezentovat to v čem si myslíte, že váš projekt je
výjimečný, čím byste mohli obohatit ostatní. obhajoba bodování - 3 body – úvod, datová reprezentace včetně variant, přehled metod, zajímavý kód, ukázka volání, možnosti zlepšení |
|
Dokumentaci,
pouze ve formátu rtf (“Dokumentace.rtf“),
odevzdávejte do svn
trunk\Dokumentace. dokumentace bodování – zadání, hlavička (1b), filozofie návrhu, volba dat, (1b) privátní a veřejné funkce, konstruktory, UML diagram (1b), popis funkcí rozhraní (2b), … závěr (1b) – celkem 6 bodů |
|
Zhodnocení projektů |
„globální“ chyby v projektech |
Poslední úpravy 2011-12-05