Návrh zadání SW projektu ”Nálezová databáze Jihočeské pobočky České botanické společnosti”

Všeobecný popis: Databázový systém umožňující zadávání a vyhledání dat o výskytu rostlin.
Typický uživatel systému je botanik bez zvláštních znalostí  a dovedností na PC. Standardní prostředky pro lokalizaci je turistická mapa 1/50 000, v méně častých případech GPS.
Databáze by měla navázat na současnou verzi Nálezové databáze Jihočeské pobočky ČBS a měla by zajišťovat minimálně obdobné funkce.

Zadávání dat 
V maximální míře jednoduché s minimálním počtem kroků. Při zadávání musí být možnost zadávat jak v současné době akceptovaná jména (Kubát ed. (2002): Klíč ke květeně České republiky, Praha, Academia), tak i jejich synonyma. Druhový seznam bude dodán. Druhy se budou zadávat jednotlivě, nebo ze škrtacích seznamů. Databáze by měla umožňovat práci s daty z GPS a transformaci souřadnicových systémů S42 na WGS84, SJTSK na WGS84.

Vyhledávání dat

Aplikace musí umožnit výběr dat podle různých kritérií, zejména podle názvu taxonu (v tomto případě při zadání jakéhokoliv jména určitého druhu – synonyma nebo akceptovaného jména, se vyberou i položky, kde bylo zadáno jakékoliv synonymum daného druhu), části lokality, nejbližšího většího sídla, roku nálezu, nálezce atd. Vybrané záznamy se budou zobrazovat v tabelární podobě nebo podobě sched – herbářových etiket (Podoba schedy bude dodána.), popř. exportovat do souboru (*.txt, *.dbf verze IV)

Vyhledávání nejbližšího sídla 

Sídlo zadává uživatel a je to povinná položka. Souřadnice z GPS se zapisují, pokud jsou k dispozici. GPS přijímač zatím botanici nepovažují za standardní součást a i když ji mají, tak ji používají pouze u vzácnějších druhů. U běžných druhů používají standardní textovou lokalizaci: U potoka 500m severozápadně od Holubova. Nejbližší sídlo má zejména účel vyhledání dat podle geografické polohy. Názvy nejbližších větších sídel jsou obce dle správního členění ČR.

Závěrem: povinné položky, které musí mít db záznam, jsou taxon, nálezce, rok nálezu, lokalita, nejbližší větší sídlo.

Architektura systému

Systém bude mít jeden centrální server, kde poběží webové rozhraní. Dále bude k dispozici GUI verze klienta, který bude schopen importovat data (pro offline práci s databází bez pevného připojení k Internetu). Jsou tedy 2 verze klienta: webové rozhraní a GUI klient. GUI klient může vyžadovat spuštění “offline” serveru na lokálním počítači, lokální síti

Uvažované nasazení

Celá aplikace poběží převážně na desktopu bez připojení k internetu, v menší míře na malých sítí LAN (Jihočeské muzeum, možná katedra botaniky BF JČU.

 Uživatelé ke konci roku vyexportují data, která zapsali během roku a dopraví je ke správci databáze. 
Na serveru by byla pouze aplikace pro prohlížení dat bez přesné lokalizace.

Správa dat
Zálohy a obnova dat. Export, import především s ohledem na práci GUI klienta, formát XML. 
Transakční zpracování.

Aplikace by měla umožňovat výměnu dat mezi dvěma databázemi v našem systému. Výměna dat by měla umožňovat nejenom přidávat data, ale provádět i jejich aktualizace ( např. z práce si odnesu část dat, doma je upravím a aktualizuji je zpátky v práci.) Provádět zálohování a obnovu dat ze zálohy, u databázových strojů s multigenerační architekturou odstraňování nepotřebných řádků (odmítnuté transakce, smazané řádky…). U exportu dat kromě obvyklých formátů by měly být podporované i otevřené formáty, zejména XML.

Webová část
Na serveru  by byla uložena data od jednotlivých přispěvatelů a bylo by zde rozhraní pro vyhledávání dat. Vyhledávací kritéria zde budou jednodušší a to pouze druh, rok nálezu a nejbližší větší sídlo. V další části by byl adninistrátorský nástroj umožňující přidávání dat na server, zálohování dat, obnova dat ze zálohy, popř. mazání dat.

Instalátor
Vzhledem k tomu, že se předpokládá nasazení jak na jednotlivých pracovních stanicích tak na malých LAN sítích, pak by měl umožňovat instalovat buďto jen klientskou část, nebo jen serverovou, popř. obě dvě současně. Instalátor by měl umět zjistit verzi JRE a jestliže bude instalována nevhodná verze tak na to uživatele upozornit a nainstalovat správnou verzi JRE a zkonfigurovat OS.

Technologie
Cílový operační systém: Win 32, Linux
Programovací jazyk: Java (i pro server)
Možné technologie pro server:

1) Databázový ovladač: JDBC třídy 4 – pro Interbase Firebird JCA/JDBC driver
Databázový stroj: Interbase Firebird 1.5, možná i podpora jiných db serverů s transakční logikou a standardem SQL92. Preferované využití PostgreSQL.
Webová část: PHP; MySQL 4  nebo PostgreSQL

2) Enterprise Java Beans, aplikační server dle výběru (Sun, Tomcat, Jboss) – viz J2EE, www.sun.com
Webová část: Java server pages

Poznámky:
Předpokládá se dodání uživatelského manuálu a dokumentace k programu.
Vývoj a distribuce nálezové databáze pod licencí GNU/GPL.
Existuje jistá možnost získání grantu pro tento projekt.