Rozvrhovací systém - specifikace

Ročníkový projekt, MFF UK

Základní nástin aplikace

Rozvrhovací systém pro střední školu má umožňovat sestavení rozvrhu pro (celou) školu, na základě požadavků předaných systému. Má umožňovat ruční editaci rozvrhů (ideálně přes grafické rozhraní), a zobrazení jednotlivých součástí rozvrhu. Bude implementovat několik algoritmů (heuristik) pro výpočet optimálního rozvržení. Tyto algoritmy poběží paraleně, ruční editace rozvrhu bude platná pro všechny.

Omezující podmínky zadání

Součásti

Aplikace se bude sestávat z několika částí - samostatných (pod)aplikací. Výpočetní část, která bude implementovat příslušný algoritmus, dále pak klientská část, která bude zobrazovat výsledky uživateli a umožní mu upravovat aktuálně dosažené výsledky.

Vstupní data

Vstupní data budou ve formátu připravitelném (volně) dostupným software, např. XML, TXT apod. Data budou rozdělena do několika částí:

Jednoduchý náčrt entit + vztahů

Jednoduchý náčrt entit a vztahů

ER diagram databáze

ER Diagram databáze a vztahů mezi entitami

Prostředky implementace

Vývoj bude probíhat na operačním systému Linux, s důrazem na pokud možno co nejsnažší přenositelnost na MS Windows. Pro implementaci bude použit jazyk C++, pro uživatelské rozhraní knihovna GTK+ (s C++ rozkraním GTK--). Pro uložení dat a jejich sdílení mezi jednotlivými součástmi aplikace bude použita relační databáze, pravděpodobně PostgreSQL.


©2005 Luděk Cigler, licensed under GPL