Migrace databáze odborných praxí a závěrečných prací z proprietární aplikace do open source prostředí (Projektová dokumentace)
Ladislav Pešta - vedoucí týmu Markéta Sedláková - zástupce vedoucího týmu Marek Balák Sandra Nagyová Zuzana Skřivánková Marie Šímová
Obsah
1.
ZADÁNÍ A CÍL PROJEKTU .............................................................................................2
2.
HARMONOGRAM (POSTUP) ŘEŠENÍ PROJEKTU - PLÁN A SKUTEČNOST ........3
3.
TECHNICKÁ DOKUMENTACE ŘEŠENÍ PROJEKTU ..................................................4
4.
JMENOVITÝ PODÍL JEDNOTLIVÝCH ČLENŮ TÝMU NA ŘEŠENÍ PROJEKTU ......5
5.
PROBLÉMY, S NIMIŢ SE TÝM SETKAL PŘI ŘEŠENÍ PROJEKTU ...........................5
6.
PŘÍNOS PROJEKTU PRO ČLENY TÝMU .....................................................................6 6.1.
CO NOVÉHO JSTE SE NAUČILI ........................................................................................... 6
6.2.
CO ZAJÍMAVÉHO JSTE ZJISTILI .......................................................................................... 6
6.3.
V ČEM JSTE SE MÝLILI, ZKLAMALI ...................................................................................... 6
6.4.
CO BYSTE PŘÍŠTĚ DĚLALI JINAK........................................................................................ 6
1
1. Zadání a cíl projektu Zadavatelem tohoto projektu je PhDr. Helena Kučerová, která je zároveň i kontaktní osobou. Hlavním cílem tohoto projektu je převést databázi z pro proprietární aplikace do open source prostředí. Jako takové prostředí bylo zvoleno MySQL v kombinaci s programovacím jazykem PHP, ve kterém bude uživatelské rozhraní. Jednotlivé cíle jak bude probíhat převod databáze: Export dat z proprietární aplikace Vytvoření databáze v MySQL Přizpůsobení dat pro MySQL Import dat do námi vytvořené databáze Tvorba uživatelského rozhraní v PHP
2
2. Harmonogram (postup) řešení projektu - plán a skutečnost Rozvržení jednotlivých úkolů jednotlivým členům je popsáno spolu s časovými údaji v následující tabulce, která popisuje skutečné časové údaje, které se shodují s plánovanými:
1.týden
Ustanovení týmových funkcí
2.týden
Zadání projektu, první informace o detailní problematice tématu
3.týden
Detailní informace o zadaném projektu, zvolen způsob řešení - MySQL + PHP technologii a rozvržení úkolů jednotlivým členů týmu
4-5.týden
Extrakce dat ze současné databáze
6-8.týden
Převod dat do databáze v jazyce MySQL, a její umístění na dočasné webové úložiště
9.týden
Kontrola obsahu současné databáze, návrh uživatelského rozhraní Tvorba uživatelského rozhraní
10-13.týden
3
3. Technická dokumentace řešení projektu Export dat z proprietární aplikace Program paradox (proprietární aplikace) umožňuje několik typů exportu dat. Pro následnou práci s daty jsme zvolili možnost exportu dat do souboru typu .xls. Což bylo nutné provést pro každou tabulku samostatně. Vytvoření databáze v MySQL Jako pracovní místo jsme si založili webovské stránky s podporou MySQL, kde jsme vytvořili databázi, ve které jsme následně vytvořili jednotlivé tabulky. Přizpůsobení dat pro MySQL Data v jednotlivých tabulkách, nyní v souborech typu .xls, jsme upravili pomocí funkce „CONCATENATE“, která umožňuje spojení obsahu více buněk. Na určitá místa jsme připsali klíčová slova jazyka MySQL a poté kopírováním formátu prvního řádku na zbylé řádky dosáhly formátu, který nám umožnil import dat do MySQL. Import dat do námi vytvořené databáze Samotný import námi upravených dat nebyl problematický jelikož webové úložiště, kde jsme měli naší pracovní databázi, podporovalo import velkého objemu dat. Využitím této funkce jsme byli schopni importovat vždy obsah celé tabulky v jediném kroku. Tvorba uživatelského rozhraní v PHP Aby bylo vidět do uživatelského rozhraní je potřeba se přihlásit pomocí přihlašovacího jména a hesla. V této fázi projektu je primárně nastavené heslo 123456 a prázdné uživatelské jméno. Stránka obsahuje tři tabulky. Studenti, Firmy, Závěr_Práce. V každé tabulce vidíme záznamy, které jsou uvedeny u dané firmy nebo studenta. Data jsou hodně rozsáhlá, proto není možné zobrazit je všechny najednou na stránku. Pokud tedy něco hledáte je důležité znát alespoň nějaké údaje. 4
U každého záznamu je možnost smazat a upravit. Volba smazat vymaže daný záznam z databáze. Volba upravit vás navede na stránku detail, kde jsou podrobné informace a dají se upravovat, mazat a vkládat. Navíc obsahuje každá z těchto tří stránek formulář pro vložení nového záznamu.
4. Jmenovitý podíl jednotlivých členů týmu na řešení projektu Export dat z proprietární aplikace – Šímová Marie Vytvoření databáze v MySQL – Pešta Ladislav Přizpůsobení dat pro MySQL – Nagyová Sandra Import dat do námi vytvořené databáze - Balák Marek Tvorba uživatelského rozhraní v PHP – Sedláková Markéta, Skřivánková Zuzana
5. Problémy, s nimiţ se tým setkal při řešení projektu Na první problém jsme narazili při volbě způsobu exportu dat z programu paradox. Na výběr bylo dostatek možností ale s přihlédnutím k následné nutné úpravě dat byla vybrána možnost exportu dat do souboru typu .xls. Další problém, jsme narazili při úpravě dat do formy vyhovující MySQL. Problémem byl formát dat, které program Microsoft Excel neustále převáděl jako hodnotu, na hodnotu zcela jinou. Bylo nutné použít další funkci: „HODNOTA.NA.TEXT“ díky které jsme byli schopni dále pracovat s daty dle našich požadavků. 5
Problém, který jsme nedokázali odstranit byl problém s políčkem v originální databázi, které umožňovalo velký počet znaků. Toto políčko nebyl program paradox schopen správně exportovat do souboru typu .xls.
6. Přínos projektu pro členy týmu Jako přínosy bych uvedl oživení si využívání funkcí nabízející program Microsoft Excel. Dále správné tvary příkazů v jazyce MySQL a PHP.
6.1.
Co nového jste se naučili
Pracovat s velkými objemy dat.
6.2.
Co zajímavého jste zjistili
Zjistili jsme, že složitost uživatelského rozhraní v programu PHP není tak velká jak jsme předpokládali na začátku.
6.3.
V čem jste se mýlili, zklamali
Zklamání nastalo v momentě, kdy jsme zjistili, že nedošlo k úplnému exportu dat z původní databáze. Toto zklamání bylo způsobenou nedokonalou komunikací mezi programem paradox a programem Microsoft Excel.
6.4.
Co byste příště dělali jinak
Volili bychom jiný způsob vytváření jednotlivých tabulek v databázi MySQL.
6