Tento harmonogram nastiňuje plánované rozvržení výuky v semestru. Jde o předběžný plán, který bude v průběhu semestru upřesňován.
Přednáška se koná vždy ve středu ve 14:00 v posluchárně D1. Toto je okopirovany seznam přednášek z loňska!
Úlohy se odevzdávají nejpozději do příštího cvičení.
V průběhu řešení projektu musí být dodrženy kontrolní body. Termíny pro splnění jednotlivých bodů jsou tyto:
10.4.2005
24.4.2005
Tento kontrolní bod musí být splněn tři dny před obhajobou projektu.
Předběžný návrh témat úloh:
API pro zpracování XML dokumentů (asi DOM4J)
XML Schema
XSLT
XQuery
Hodnocení předmětu PB138 je trojsložkové, zahrnující:
Pozor, úlohy mohou přispět až +12, ale také až -12 body do celkového hodnocení. Výsledná známka je dána celkovým počtem bodů:
počet bodů | typ ukončení | hodnocení |
---|---|---|
94 – 100 | zkouška | A |
88 – 93 | zkouška | B |
82 – 87 | zkouška | C |
76 – 81 | zkouška | D |
70 – 75 | zkouška | E |
0 – 69 | zkouška | F |
50 – 100 | zápočet | Z |
0 – 49 | zápočet | N |
Zadání úloh je možné nalézt v informačním systému na adrese https://is.muni.cz/auth/el/1433/jaro2005/PB138/za/. V průběhu semestru se řeší celkem čtyři úlohy, za každou z nich je možné získat 3 body. Ty student obdrží za včas odevzdanou úlohu, která neobsahuje žádné chyby. Pokud je úloha odevzdaná pozdě nebo obsahuje chyby a byla vrácena, student za ni získá nulový počet bodů. Pokud úloha není odevzdaná vůbec, přísluší za ni -3 body. Pozor! Pokud je při opravování úlohy nalezena chyba, student je povinen úlohu opravit a odevzdat znovu. Dokud není úloha bez chyby, považuje se za neodevzdanou (včetně tříbodové penalizace)! Pokud bude odhalen plagiát, úloha bude hodnocena jako neodevzdaná a případ bude postoupen disciplinární komisi.
Hodnocení projektů probíhá během jejich obhajob a skládá se z několika složek:
Podmínkou ke získání bodového hodnocení za projekt je nutné, aby byl projekt úspěšně vyřešen. Nelze tedy očekávat bodový zisk za obhajobu, dokumentaci a organizaci projektu, pokud bude vlastní řešení vykazovat zásadní vady.
Studenti, kteří ukončují předmět pouze zápočtem, řeší individuální projekt za 35 bodů. Tam je rozdělení bodů následující:
Má podobu písemné práce psané na papír, přihlašuje se na ni přes IS jako na zkoušku. Část otázek je spíše testového charakteru (výběr odpovědi nebo jednoduché doplňování), na část otázek se očekává tvořená odpověď rozsáhlejší, např. fragment DTD, XSLT stylu apod. Příklad zadání z minulých let lze najít na adrese ???.
Součástí výuky v předmětech PB138, PV168 a PA165 je řešení individuálního nebo týmového projektu. Cílem projektu je prokázat znalost probíraných technologií a schopnost jejich vhodného uplatnění při řešení nějakého rozsáhlejšího reálného problému. Aby projekty splnily svůj účel, je nutné dodržet soubor základních pravidel. Seznamte se s těmito pravidly důkladně, neboť jejich porušení pro vás může mít fatální následky.
Zadání projektu jsou vystavena v informačním systému jako balík témat Projekty u daného předmětu. Zveřejněná zadání projektů jsou pouze rámcová. Je možné je upřesňovat či doplňovat, ale veškeré změny musí schválit autor příslušného zadání (je u zadání uveden jako vedoucí).
Pokud máte zájem o své vlastní téma, můžete jej navrhnout svému cvičícímu, aby Vám jej vypsal. Téma musí mít přiměřený rozsah a odpovídat zaměření kurzu, tj.
Projekt nemusí být samoúčelný a řešený pouze v kontextu některého z těchto předmětů. Může jít o projekt do jiného předmětu, bakalářskou či diplomovou práci nebo i o projekt do práce, pro kamaráda, apod. Musíte však počítat s nutností dodržení těchto pravidel. V případě týmových projektů řešených zároveň jako diplomová či bakalářská práce je nutné věnovat zvýšenou pozornost dodržení pravidel pro řešení těchto prací a požadavku na jejich samostatné vypracování[1]. S ohledem na časový souběh předmětů PB138 a PV168 se přímo nabízí možnost řešení společného projektu v obou předmětech, což studentům mající oba předměty zapsány silně doporučujeme.
Pozor na dodržení zadání! Každou změnu v zadání musí schválit jeho autor a veškeré změny v zadání musí být zaznamenány v informačním systému. Pokud Váš projekt nebude odpovídat svému zadání v informačním systému nebo nebude splňovat některé z pokynů uvedených v tomto textu (např. programovací jazyk, formát dokumentace apod.), projekt bude hodnocen nízkým počtem bodů (případně nebude hodnocen vůbec).
Projekty mohou být individuální nebo týmové, v závisloti na předmětu a typu jeho ukončení:
Týmové projekty se řeší typicky ve čtyřčlených týmech. Pokud se k danému tématu přihlásí méně než tři studenti, je možné projekt řešit v takto redukovaném týmu pouze se souhlasem autora zadání. Každý tým si určí svého vedoucího, který bude práci koordinovat.
Primárním protředkem pro realizaci projektů je jazyk Java. V odůvodněných případech může autor zadání projektu povolit pro realizaci jeho části jiný programovací jazyk (Groovy, JavaScript, Perl, Python, Smalltalk, C/C++). Nesmí být použit jazyk PHP, a to ani kdyby jej schválil autor zadání!
Všechny projekty (individuální i týmové) musí být uloženy v subversion repozitory na stroji kore.fi.muni.cz. Subversion je systém pro řízení verzí, který výrazně usnadňuje týmový vývoj. Navíc umožní cvičícím sledovat pokrok při řešení jednotlivývh projektů. Pozor, je nutné dodržovat pokyny na adrese http://kore.fi.muni.cz:5080/subversion/!
Dalším užitečným nástrojem je Maven. Tento nástroj automatizuje řadu činností, které je nutné provádět při realizaci projektů. Umí automaticky překládat projekt, spouštět testy, generovat různé reporty, generovat www stránky projektu apod. Každý nově zřízený projekt na stroji kore má automaticky vygenerované příslušné projektové sobory, abyste mohli systém maven začít hned používat. Použití systému maven je povinné v tom smyslu, že Váš projekt musí být možné pomocí tohoto nástroje překládat a generovat k němu všechny reporty.
V projektu by měly být maximálně využity adekvátní prostředky:
v případě projektů do PB138 jde zejména o dotazovací jazyky (XPath, XQuery), nativní XML databáze, rozhraní JAXP, JAXM, JAXB, SOAP, XSLT transformace, atd.;
v případě projektů do PA165 jde o jednotlivé technologie z J2EE, jako jsou Servlety, JSP, JSF, JDO, EJB, JMS, webové služby, atd.
Hodnocení projektu bude závislé i na tom, jak šikovně využijete možností příslušných technologií a dostupných nástrojů. Můžete využívat libovolný volně dostupný (alespoň pro výukové účely) software.
Na řešení projektů máte k dispozici čas od jejich zadání do obhajoby. Dejte si však pozor na dodržení předepsaných kontrolních bodů. Pro získání příslušných účtů a přístupu do repozitory postupujte podle pokynů na adrese http://kore.fi.muni.cz:5080/subversion/.
Kdykoli je v projektu použit XML formát, musí k němu být vytvořeno (a dostupné) DTD, Relax NG nebo XML Schema, případně jiný formální model (Schematron, Examplotron, DSD...). Všechny projekty musí mít webové nebo GUI rozhraní (nebo obě), případně ještě rozhraní na příkazovém řádku. Pokud je někde požadováno generování tiskového výstupu, postačí vytvoření souboru ve formátu PDF nebo XHTML (nejlépe pomocí příslušné XSLT šablony).
Pozor! Na stroji kore se jako váš domovský adresář připojuje Váš domovský adresář ze stroje atlas (to je ten, co máte např. na serveru aisa). Aby to fungovalo, musíte si na adrese https://fadmin.fi.muni.cz/auth/sit/export_home.mpl povolit export domovského adresáře pro stroj kore.fi.muni.cz pomocí protokolu nfs.
Pro kontrolu průběhu řešení projektů jsou stanoveny tři kontrolní body:
Dodržení kontrolních bodů může být ověřeno i zpětně pomocí systému subversion, takže nezapomeňte příslušné materiály a zdrojové kódy pravidelně vkládat do repozitory!
Každý projekt musí mít také dokumentaci. Primární dokumentací jsou minimálně dvoustránkové zprávy k projektu, které vypracovává každý člen týmu zvlášť. Pokud je to pro daný typ projektu užitečné, může být k projektu přiložena i další projektová dokumentace. Za dokumentaci se považují také dobře komentované zdrojové kódy. Pokud je výstupem projektu nějaké obecně použitelné api, musí být dokumentováno pomocí systému JavaDoc.
Dokumentace k projektům (zejména zprávy k projektu) musí primárné ve formátu DocBook, z něhož se potom generuje např. HTML nebo PDF. Stránky projektu generované systémemem Maven mohou být ve formátu xdoc.
Úspěšné vyřešení projektů budou studenti prokazovat jejich obhajobou. Obhajoby se budou konat ve zkouškového období a jejich datum i místo konání bude zveřejněno v informačním systému (u předmětu PA165 jako zkouškový termín, v ostatních případech v aplikaci rozpisy).
Na obhajobu jednoho projektu je k dispozici 20 minut včetně dotazů i diskuse. Vlastní prezentace by neměla přesáhnout 15 minut, jinak bude přerušena a na obhajobu daného projektu bude nahlíženo jako na nedobře připravenou. Vedoucí týmu na začátku představí zadání projektu, řešitelský tým a stručně shrne dosažené výsledky. Poté vystoupí každý člen týmu s představením své části projektu, uvede použité technologie a nastíní architekturu své části systému. Na závěr proběhne diskuse. Součástí obhajoby by měla být elektronická prezentace výsledků (slidy, ukázky přístupné na síti, notebooku apod.).
Dejte si pozor, ať nezacházíte do zbytečných technických detailů. Zmínit se o konkrétních problémech, které bylo nutné vyřešit, je samozřejmě důležité, nicméně popisovat dlouhé popisovače aplikací ve formátu XML není dobrá strategie obhajoby.
Před obhajobou projektu musí být na www stránky projektu umístěny aktuální informace, finální verze programové části, dokumentace a zprávy k projektům. Na stránkách nesmí chybět ani všechny použité knihovny a jiné nástroje, které jsou potřebné pro překlad či používání nástroje. Samozřejmě není nutné přidávat instalační balíky s JDK nebo JRE.
[1] Tj. klíčové části projektu by měl vypracovat řešitel dané diplomové či bakalářské práce a ostatní členové týmu by se měli podílet spíše na podpůrných částech, které nejsou přímým cílem dané práce. Taktéž je velmi vhodné ve vlastní práci vymezit rozsah, který řešil přímo řešitel dané práce, a upozornit na části, které byly vyřešeny jeho kolegy v rámci tohoto projektu.