Plans » Historie » Verze 2

Verze 1 (Jakub Jirůtka, 2012-03-09 21:18) → Verze 2/4 (Jakub Jirůtka, 2012-04-21 20:50)

h1. Plány do budoucna

Na této stránce naleznete stručný seznam plánovaných změn a nových funkcí do KOSapi. Napadne-li vás něco, co v tomto seznamu ještě není, určitě napište požadavek do "úkolů":/projects/kosapi/issues/new.

* -Napojení KOSapi-3.2 *Napojení KOSapi-3.1 na databázi KOS.- √ KOS.*
* Dodělání RESTful zdrojů pro data okolo rozvrhů, studentů, zkoušek atp.
** _Určitá podmnožina už je ve verzi 1 a 2, ale jelikož návrh vychází ze zkresleného rz.xml, tak se pro KOSapi-3 musí celé předělat._
* Implementace speciální podpory pro výukové kalendáře/rozvrhy, která by umožňovala do KOSapi zapisovat pravidelné (státní svátky) i mimořádné přesuny výuky. Dále sloučení rozvrhů z více fakult (a snad i ÚTVS), aby student i vyučující ve svém rozvrhu viděl předměty z „cizích“ fakult. Od začátku počítám s implicitní podporou „blokové výuky“ (tzv. kalendářní rozvrh).
** _Cílem je, aby generované výukové kalendáře odpovídaly skutečnému stavu._
** _Podpora pro blokovou výuku se v KOSu na ČVUT bude údajně zavádět letos, na AMU už ji pár let mají. Jedná se o možnost rozvrhování výuky nejen podle rigidního 14denního rámce, ale také na konkrétní datum a čas v semestru. Na FIT už je velmi potřeba._
* Definování právového modelu, nasazení OAuth autentizace a vyřešení autorizace na úrovni jednotlivých zdrojů.
** _Nezbytný předpoklad pro poskytnutí zdrojů i k neveřejným datům (např. známky studentů)._
* Začala svítat reálná naděje, že bychom mohli v dohledné době získat i _read-write_ přístup do KOSu, který bychom pro několik systémů (např. Edux, IS ČVUT) velmi potřebovali. To znamená implementaci zdrojů pro zápis v KOSapi.
* Návrh a referenční implementace (v Javě) klientské knihovny pro KOSapi, která ještě zjednoduší/zrychlí vývoj aplikací nad KOSapi. Dále poskytne vzorový příklad jak správně pracovat s RESTful službami (většina lidí to ještě neumí). Studenti pak v rámci SP/BP mohou implementovat knihovny pro další jazyky.
** _Jedná se v podstatě o fasádu nad RESTful službou pro konkrétní impl. jazyk, k velkým RESTful službám se standardně poskytují._