BAKALÁŘSKÁ PRÁCE Úplné pokrytí potřeb malého podnikatele open source softwarem Full coverage of small businesses needs by open source software
Uni c or n Col l e ge 20 10 Uni c or n Col l e ge, V Ka ps l o v ně 27 6 7/2 , Pr aha 3, 130 0 0 Ná ze v pr ác e v ČJ :
Ná ze v pr ác e v AJ :
Úpl né p ok r yt í p otř eb m alé ho pod n ik at el e op en s ou r c e s of twar e m F ul l c ov er a ge of s m all bus ine s s e s ne e ds b y ope n s ou r c e s of twar e
Aut or :
Luk áš Če r ve n k a
Ak ad em ic k ý r ok :
201 0
Kon tak t:
E- m ail: luk as .c er ve nk a@pn b .c z T el. : ( +4 20) 123 4 66 4 65
Bakalářská práce Úplné pokrytí potřeb malého podnikatele open source softwarem Full coverage of small businesses needs by open
1.
ZADÁNÍ
▪3▪
Bakalářská práce Úplné pokrytí potřeb malého podnikatele open source softwarem Full coverage of small businesses needs by open
2.
ABSTRAKT
Cílem této bakalářské práce bylo zjistit, zda-li je možné pokrýt potřeby malého podnikatele open source softwarem. Aby byla problematika open source softwaru plně pochopena, vysvětlil jsem na začátku práce vznik open source softwaru, jeho vlastnosti, výhody a popsal vývoj open source softwaru. Až poté jsem přešel k vybírání konkrétního open source softwaru. Abych mohl zkonkretizovat potřeby podnikatele, vybral jsem si jednoho konkrétní podnikatele, majitele malého penzionu. Pro toho jsem hledal open source software z několika oblastí. Operační systém, správu hotelu, správu skladového hospodářství, point-of-sale software, účetní software a kancelářský balík. Z každé oblasti jsem hledal vhodný software a poté ho prakticky testoval. Došel jsem k závěru, že v každé oblasti existuje alespoň jeden software, který splňuje všechny požadavky. Výsledkem mé práce je, že potřeby malého podnikatele lze pokrýt open source softwarem. Také jsem potvrdil některá tvrzení o vývoji open source softwaru, které jsem uvedl na začátku mé práce, a to na základě zkušeností s testovaným softwarem.
Klíčová slova: open source software, Open Source Definition, vývoj open source software, správa hotelu, point-of-sale, účetnictví, skladové hospodářství, Linux, kancelářský balík
▪4▪
Bakalářská práce Úplné pokrytí potřeb malého podnikatele open source softwarem Full coverage of small businesses needs by open
3.
ABSTRACT
The aim of this work was to find out if it is possible to cover all the needs of small businesses by open source software. To be sure that you understand the open source software, I explained at beginning of my work the history and the evolution of open source software, its advantages, specifics and I also described the specifics of development of open source software. Then I could start to look for the open source software. I wanted the needs of a small business to be more concrete, so I chose an owner of a small hotel to be the representative of a small business. Then I looked for the open source softwares which can cover different areas of his business. The software areas I had to cover were: an operating system, a hotel management, a warehouse management, a point-of-sale software, an accounting software and an office suite. In every area I looked for suitable softwares, which I tested afterwards. In every area there was at least one software that completely met all the requirements I had. I came to conclusion that it is possible to cover all the needs of small businesses by open source software. I also confirmed some of the statements I made about the development of open source software at the beginning of the work. I confirmed that by my experience with open source software I had during the testing.
Keywords: open source software, Open Source Definition, development of open source software, hotel management, point-of-sale, accounting, warehouse management, Linux, office suite
▪5▪
Bakalářská práce Úplné pokrytí potřeb malého podnikatele open source softwarem Full coverage of small businesses needs by open
4.
PROHLÁŠENÍ
Prohlašuji, že svou bakalářskou práci na téma Úp ln é pok r yt í po tř e b m al ého pod n ik a te le open s our c e s of t war em jsem vypracoval samostatně pod vedením vedoucího bakalářské práce a s použitím odborné literatury a dalších informačních zdrojů, které jsou v práci citovány a jsou též uvedeny v seznamu literatury a použitých zdrojů. Jako autor uvedené bakalářské práce dále prohlašuji, že v souvislosti s vytvořením této bakalářské práce jsem neporušil autorská práva třetích osob, zejména jsem nezasáhl nedovoleným způsobem do cizích autorských práv osobnostních a jsem si plně vědom následků porušení ustanovení § 11 a následujících autorského zákona č. 121/2000 Sb.
V Praze dne
…….………………. Lukáš Červenka
▪6▪
Bakalářská práce Úplné pokrytí potřeb malého podnikatele open source softwarem Full coverage of small businesses needs by open
5.
PODĚKOVÁNÍ (DOBROVOLNÉ)
Děkuji vedoucímu bakalářské práce za účinnou metodickou, pedagogickou a odbornou pomoc a další cenné rady při zpracování mé bakalářské práce. Dále bych chtěl poděkovat své přítelkyni, za pomoc při korektuře a pevné nervy.
▪7▪
Bakalářská práce Úplné pokrytí potřeb malého podnikatele open source softwarem Full coverage of small businesses needs by open
6.
OBSAH
1. 2. 3. 4. 5. 6. 7. 8.
Zadání................................................................................................................................3 Abstrakt.............................................................................................................................4 Abstract.............................................................................................................................5 Prohlášení..........................................................................................................................6 Poděkování (dobrovolné)..................................................................................................7 Obsah.................................................................................................................................8 Úvod................................................................................................................................10 O Open source softwaru..................................................................................................11 8.1 Jak vznikl open source software...............................................................................11 8.2 Co znamená „open source software“........................................................................12 8.3 Výhody open source software..................................................................................13 8.3.1 Nižší pořizovací poplatky.................................................................................13 8.3.2 Otevřené formáty..............................................................................................13 8.3.3 Snižuje pirátství................................................................................................13 8.3.4 Archivace dokumentů.......................................................................................14 8.3.5 Větší odolnost vůči monopolizaci.....................................................................14 8.4 Vývoj open source softwaru....................................................................................14 8.4.1 Síla open source komunit..................................................................................16 8.5 Kde najdeme open source software..........................................................................16 8.6 Závěr .......................................................................................................................17 9. Open source software pro malého podnikatele...............................................................18 9.1 Operační systém.......................................................................................................19 9.1.1 OpenSuse..........................................................................................................19 9.1.2 Ubuntu...............................................................................................................20 9.1.3 Zhodnocení.......................................................................................................20 9.2 Management penzionu..............................................................................................20 9.2.1 Sunalis...............................................................................................................21 9.2.2 Open Reservation Management System...........................................................21 9.2.3 Php-residence....................................................................................................21 9.2.4 FGMP Hotel Management................................................................................23 9.2.5 Hotelier.............................................................................................................24 9.2.6 Zhodnocení.......................................................................................................25 9.3 Point-of-sale software .....................................................26 9.3.1 Floreant POS.....................................................................................................26 9.3.2 OpenBravoPOS.................................................................................................28 9.3.3 Zhodnocení.......................................................................................................31 9.4 Skladové hospodářství..............................................................................................31 9.4.1 ERP software....................................................................................................31 9.4.2 Simple Inventory System..................................................................................32 9.4.3 OpenOffice šablona..........................................................................................33 9.4.4 OpenBravo POS................................................................................................33 9.4.5 Zhodnocení.......................................................................................................34
▪8▪
Bakalářská práce Úplné pokrytí potřeb malého podnikatele open source softwarem Full coverage of small businesses needs by open
9.5 Účetní software.........................................................................................................35 9.5.1 Gnucash.............................................................................................................35 9.5.2 JGnash...............................................................................................................36 9.5.3 Zhodnocení.......................................................................................................37 9.6 Kancelářský balík.....................................................................................................37 9.6.1 OpenOffice.org ................................................................................................38 Závěr....................................................................................................................................39 10. Conclusion.....................................................................................................................41 11. Seznam použité literatury..............................................................................................43 12. Seznam použitých symbolů a zkratek...........................................................................44 13. Seznam obrázků............................................................................................................45 14. Seznam tabulek..............................................................................................................46
▪9▪
7.
ÚVOD
Tématem mé bakalářské práce je Úplné pokrytí potřeb malého podnikatele open source softwarem. Práci rozdělím do dvou částí. V první části se zaměřím na podrobnější vysvětlení pojmu open source. Vysvětlím vznik myšlenky open source a popíši, do jaké podoby se myšlenka vyvinula. Dále se budu zabývat výhodami open osurce softwaru oproti proprietárnímu softwaru. Také vysvětlím, jak se open source software vyvíjí. Jeho vývoj má svá specifika a liší se od klasické představy o vývoji komerčního software, proto je velmi důležité se o jeho vývoji zmínit. V závěru první části se budu zabývat tím, jaké požadavky má open source komunita na nástroje pro vývoj open source software a kde můžeme open source software nalézt. V druhé části se zaměřím na použitelnost konkrétních open source software pro malého podnikatele. Malým podnikatelem je zde myšlena firma o maximálně několika zaměstnancích. Budu srovnávat vybraný software, který pokrývá určitou oblast potřeb našeho vybraného podnikatele na základě konkrétních kritérií. V závěru zhodnotím, zda-li je možné pokrýt potřeby tohoto podnikatele úplně. Pokud ne, tak do jaké míry, nebo zda-li se vůbec vyplatí nasazovat open source software v tomto prostředí. Také shrnu, co vše zajímavého a nového o open source jsem během testování softwaru zjistil.
▪ 10 ▪
8.
O OPEN SOURCE SOFTWARU
8.1 Jak vznikl open source software Abychom pochopili, jak vůbec vznikl pojem open source, musíme se podívat do historie. Princip sdílení software a zdrojového kódu existuje prakticky již od začátku tvorby software. Bylo to díky tomu, že tvorba software byla v počátku doménou akademiků a universitní půdy. Po vzniku komerčních firem na tvorbu softwaru se mnoho z výše zmíněných akademiků stalo zaměstnanci a začali vyvíjet software uzavřený. [2] To se nelíbilo Richardovi Stallmanovi, který v roce 1984 založil Free Software Foundation. „Stallmanova filozofie byla, aby zdrojový kód byl vždy volně přístupný. Stallman viděl informatiku a programování jako vědu a stejně jako se ve vědě šíří objevy volně, aby mohli být následně podrobeny přezkoumání z mnoha úhlů, tak byl pro šíření zdrojového kódů (objevů) volně. To by mimo jiné také podrobilo kód přezkoumání (debuggingu) a pomohlo rychlejšímu vývoji a inovacím.“ [1]. Aby zabránil společnostem zneužití svobodného softwaru pro své vlastní účely vydal GNU General Public License (GPL). Ta zaručovala, že při použití zdrojového kódu chráněného touto licencí, musel být program, ve kterém byl kód použit, šířen také pod GPL. GPL je dodnes nejpopulárnější open source licencí. [8] Pod GPL licencí začal s projektem GNU, který měl za cíl vytvořit kompletně svobodný operační systém GNU. GNU operační systém měl po několika letech vývoje spoustu nástrojů, ale byl stále bez té nejdůležitější části systému – jádra. To se ale mělo změnit, když v roce 1991 Linus Torvalds začal pracovat na jádru operačního systému nazvaném Linux. Ten v roce 1992 po zkombinovaní s GNU vytvořil kompletně svobodný operační systém GNU/Linux. [2] Pojem open source vznikl až v roce 1998. To se sešli vůdcové hnutí za svobodný software a přemýšleli, jak myšlenku svobodného softwaru rozšířit. Bylo jasné, že myšlenka svobodného softwaru se v business světě neuchytila. Důvodem bylo také to, že v angličtině je slovíčko free (svobodný, zadarmo) vícevýznamové. Nikdy nebylo dostatečně vysvětleno, že v pojmu free software, bylo slovo free použito právě ve významu svobodný a ne zadarmo. V angličtině byl tento problém vysvětlován hláškou. „Free as in free speech, not as in free beer“. [3] Dohodli se, že začnou používat termín open source. Krátce poté založili Open Source Initiative (OSI). OSI měla za úkol rozšiřovat a prosazovat myšlenku open source. Jako hlavní nástroj k tomu měla sloužit Open Source Definition (OSD). Open Source Definition vznikla transformováním Debain Social Contract. Hlavní rozdíl mezi ní a GPL byla, že umožňovala mnohem větší volnost v používání kombinace open source softwaru spolu s proprietárním software. Důležité to bylo ve známém problému mezi linuxovými desktopy KDE a GNOME. KDE byla závislá na proprietární knihovně Qt+, jejichž tvůrci by v době
▪ 11 ▪
před OSD měli možnost buď knihovnu vydat pod GPL a ztratit tak nad ní kontrolu nebo ji zanechat ve stavu, ve kterém se nacházela. Ani jedno by ale nebylo řešení, které by se líbilo všem. Po vzniku OSD se ovšem nabídla možnost šířit knihovnu pod licencí, která bude kompatibilní s OSD a umožní tak KDE, zbavit se přívlastku grafického prostředí závislého na proprietární knihovně. Zároveň kontrola nad knihovnou zůstane u tvůrců. I přesto, že se tvůrci knihovny nejprve bránili, nakonec podlehli tlaku open source komunity a vydali knihovnu pod open source licencí . OSD je od vydání standardem pro open source licence a svou pozici si stále drží.
8.2 Co znamená „open source software“ Open source software je jakýkoliv software, který je šířen pod licencí, která splňuje OSD. Momentálně splňuje podmínky OSD 66 různých licencí. Každý software musí splňovat všechny z deseti bodů. [10] •
Každý může vlastnit jakékoliv množství kopií softwaru, dále je šířit či prodávat a nemusí za tyto práva platit.
•
Software musí obsahovat zdrojový kód a povolovat šíření, jak pomocí zdrojového kódu, tak jako zkompilovaný program. Pokud se program nešíří se zdrojovým kódem, musí existovat jednoduchý způsob, jak si zdrojový kód obstarat.
•
Software musí povolovat modifikace a nesmí zakazovat šíření pozměněného softwaru pod stejnou licencí
•
Licence může zakazovat modifikace původního kódu a povolovat modifikaci softwaru jen pomocí záplat
•
Licence nesmí diskriminovat žádnou skupinu lidí
•
Licence nesmí diskriminovat žádné odvětví
•
Práva spojená s programem se musí vztahovat na všechny, jimiž je program dále distribuován bez nutnosti schválení další licence těmito stranami.
•
Práva spojená s programem nesmějí záviset na tom, že je program součástí konkrétní distribuce softwaru. Pokud je program vyňat z této distribuce a používán nebo distribuován v rámci podmínek licence daného programu, všechny strany, jimž je program dále distribuován, by měly mít stejná práva jako ty, které jsou poskytovány ve spojení s originální distribucí softwaru.
•
Licence nesmí omezovat jiný software, který je šířen s licencovaným softwarem. Nesmí tedy například nařizovat, že veškerý software s ním šířený musí být také open source
•
Žádné ustanovení licence nesmí být založeno na použití určité technologie nebo stylu rozhraní
▪ 12 ▪
8.3 Výhody open source software Tato část mé práce je inspirovaná myšlenkami z knihy Bohumíra Štědroně. [5]
8.3.1 Nižší pořizovací poplatky Open source software neznamená, ať si to většina lidí myslí, že je zadarmo. Pokud se podíváme hned na první bod OSD vidíme, že i open source software lze prodávat. Kdo by ale kupoval software, který může mít zadarmo? Stačilo by totiž koupit software pouze jednou, a poté je již možné ho šířit volně nebo za nižší cenu v úplně stejné podobě. U open source software tedy odpadá nutnost platit pořizovací poplatky. Rozdíl mezi pořízením licencí pro Microsoft Office a Open Office je relativně vysoká částka, i přesto, že kvalitou jsou obě řešení srovnatelná.
8.3.2 Otevřené formáty Open source software nemůže z definice používat žádné uzavřené formáty. Aby si každý programátor nevymýšlel formát vlastní, existují formáty přesně definované. Nejznámější vytvořila nezisková organizace OASIS (Organization for the Advancement of Structured Information Standards). Nazývá se Open Document Format (ODF). Po technické stránce se jedná o otevřený formát dokumentů založený na XML, který je možný použít na textové dokumenty, tabulkové dokumenty, prezentace, grafy či obrázky. Je také pamatováno na ukládání metadat dokumentu jako např. autor, jazyk atd. Vzhledem k tomu, že je tento formát založen na XML, je ho možné jednoduše transformovat do jiných datových struktur (např. HTML). Díky tomu, že je dokument strukturovaný, je možné z nich vybírat programově jen určité části a díky textové podobě XML je možné dokumenty i jednoduše šifrovat a komprimovat. Formát je nezávislý na softwaru či platformě, díky tomu je možné předávat si data mezi různými aplikacemi, které formát podporují.
8.3.3 Snižuje pirátství Lidé si nelegálně stahují či vypalují programy, které se jim nechtějí platit, připadají jim drahé a tak volí pro ně pohodlnou a levnou cestu. Riskují tím ale velké pokuty i vězení. Kdyby jim někdo nabídl, že můžou mít software s podobnou kvalitou zadarmo a legálně neváhali by. Open source toto nabízí. Open source software je zadarmo a nabízí velmi podobnou funkčnost jako komerční software. Rozdíly jsou často ve věcech, které průměrný uživatel prakticky nevyužívá.
▪ 13 ▪
8.3.4 Archivace dokumentů Pokud budete pracovat s dnešními dokumenty za dvacet let a používáte proprietární formáty dokumentů, je docela velká pravděpodobnost, že dokument nebude moci přečíst. Případně vám to bude činit velké potíže. Proprietárním formátem můžeme mít namysli třeba formát .doc, který používá Microsoft Word. Používáním otevřených formátů velmi snižujete tuto pravděpodobnost. Formát ODF je standard, navíc je schválen jako ISO norma a je tudíž velmi velká pravděpodobnost, že se bude používat ještě dlouho.
8.3.5 Větší odolnost vůči monopolizaci Už Richard Stallman se při zakládání Free Software Foundation obával, že při současném vývoji by situace mohla vést k ovládnutí trhu se softwarem několika velmi silnými hráči. [1] Bylo to v době, kdy se začal prosazovat proprietární software, který omezoval uživatele uzavřeným zdrojovým kódem, zákazu kopírování apod. Pokud by se vyvíjel pouze software s uzavřeným zdrojovým kódem, umíme si asi představit, jak by to dopadlo. Podobnou situaci jsme vlastně i zažili, kdy Microsoft ovládl svět software se svým operačním systémem Windows. Díky tomu, že měl ohromnou převahu v operačních systémech, nejdůležitějším softwaru, co se v počítači nachází, dokázal ovládnout trh i na jiných frontách. Microsoft Office, Internet Explorer, Windows Media Player to všechno jsou aplikace, které byly instalovány právě s Windows a získali díky tomu velký podíl na trhu. Naštěstí stihl být open source software použitelný dostatečně rychle a začal tak konkurenční boj. Na jedné straně Microsoft s velkým tržním podílem, uzavřenými formáty a uzavřeným kódem. Na druhé straně software otevřený, který dával uživatelům svobodu, nesvazoval je licenčními podmínkami a byl zadarmo. Postupem času se objevil operační systém Linux a začal konkurovat operačnímu systému Windows. Mozilla Firefox konkuroval Internet Exploreru. OpenOffice se objevil jako náhrada za Microsoft Office. Najednou se objevila možnost volby a vzniklo i konkurenční prostředí, ze kterého nejvíc profituje uživatel.
8.4
Vývoj open source softwaru
V této kapitole si objasníme specifika vývoje open source softwaru, protože se od vývoje proprietárního softwaru značně liší. Eric Raymond ve své eseji The Cathedral and the Bazaar popisuje dva modely vývoje open source softwaru. První z nich přirovnává ke stavbě katedrály. Zdrojový kód je k dispozici uživatelské základně pouze při každém releasu, ale mezi releasy je k
▪ 14 ▪
dispozici pouze skupině lidí, kteří software vyvíjí. Podobá se to vlastně vývoji proprietárního software, pouze se zveřejňuje zdrojový kód. Druhý z nich přirovnává k bazaru. V tomto případě je zdrojový kód k dispozici všem lidem, kteří o to mají zájem neustále. Jako komunikační kanál se používá Internet a každý se může stát vývojářem nebo testerem. Existují ale některé omezení, hlavní je, že takto nelze tvořit software na zelené louce. Síla bazar modelu je spíše ve vylepšování, nacházení chyb a a jejich opravování. Proto je nutné mít nejdříve něco, co je spustitelné, případně alespoň testovatelné. Tedy první release musí člověk naprogramovat sám, nebo s týmem, bez pomoci veřejnosti. Další podmínkou je, že lidé za projektem musí vidět něco, co má smysl. Software může vypadat ošklivě, být plný chyb, ale pokud lidé uvidí v projektu něco úžasného, co je dosažitelné v blízké budoucnosti, tak se rádi do projektu zapojí. Je to ale model, který vám při dobré myšlence a kvalitním vedení dá k dispozici prakticky neomezené lidské zdroje. Nejznámější takto vyvíjený software je Linux. Jeho vývoj byl veden Linusem Torvaldsem, který sám o sobě říká, že je líný člověk a tak se jen snažil, aby nemusel dělat všechno. Zřejmě tehdy ani netušil, že se v budoucnu ukáže, jak je to velmi efektivní metoda vývoje. Do té doby se většina lidí domnívala, že vývoj komplexního softwaru vyžaduje určitou centralizaci, tak jak je obvyklé u proprietárního software, tedy že ho například vyvíjí jedna společnost. Ve společnosti je jasně dané kdo projekt povede, kdo software navrhne, vývojáři dostanou na papíře, co naprogramují, testeři ho poté otestují, vybraní lidé ho proberou se zákazníkem, zapracují se změny atd. Torvalds při vývoji Linuxu využil několik věcí, které poté Raymond ve své knize The Cathedral and the Baazar popsal jako pravidla, kterými by se měl řídit vývoj open source software. Raymond říká, že „Every good work of software starts by scratching a developer's personal itch.“ Torvaldsovi vadilo, že operační systém MINIX, který používal byl licencován tak, že mohl být použit pouze pro výukové účely a nemohl být modifikován. Začal tedy psát vlastní operační systém, který částečně vycházel z MINIXu. Raymond definuje druhé pravidlo, které říká, že dobří programátoři ví jak kód psát, výborní programátoři vědí, jak ho přepisovat nebo znovu použít. Torvalds nezačal psát Linux úplně na zelené louce, ale nechal se inspirovat již zaběhlým operačním systémem MINIX, jehož kód ale přímo nevyužil. [9] Další pravidlo, které je typické pro open source je „Release early, release often“. Torvalds už od první verze (0.01) zveřejnil svůj kód a to ještě nebyl Linux ani spustitelný. Ve verzi 0.12 byl Linux kernel relativně stabilní a obsahoval několik částí, které byly napsány jinými programátory. V době největšího tempa vydával Torvalds Linux každý den. [9] Díky tomuto přístupu každý viděl, že projekt žije a že úsilí, které programátor či tester na projektu vyvine, nepřijde nazmar. a Dokonce bude i rychle zapracováno. Dále to pomáhalo motivovat vývojáře pro práci na projektu. Je pro ně
▪ 15 ▪
lepší, když vidí svoji práci za několik dnů v dalším vydání a nemusí čekat půl roku. Je to jeden z důvodů, proč se kolem Linuxu vytvořila tak velká skupina vývojářů. To vede k dalšímu pravidlu, které se Linuxu povedlo skvěle naplnit. „Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix obvious to someone“. U nás se říká, že víc hlav víc ví. V softwaru platí víc hlav, vidí více chyb. S množstvím lidí může vzniknout i mnoho problémů, především ve vývoji. Naštěstí Linux byl v jádru velmi modulární a to umožňovalo nezávisle pracovat mnoha lidem najednou. Vždy ale musí být někdo, kdo celý vývoj bude řídit. To měl na starosti právě Torvalds, který měl plnou kontrolu nad tím, co se z vyvinutých částí kódu do finální verze dostalo a co ne. Negativa plynoucí z kontroly práci velkého počtu lidí, zdaleka nepřevyšují nad pozitivy. Odpověď na otázku, jestli najde víc chyb v software 15 testerů nebo 1000 testerů je jasná. Díky tomu, že je všem přístupný zdrojový kód, tak je i ten kriticky hodnocen a podrobován testům a to od mnoha nezávislých testerů. Když se chyba najde, může ji tester sám opravit. Stejně tak může vývojář při vývoji nalézt chybu v cizím kódu. Nikdo tak nemá specifickou roli. Každý dělá to, co umí a to co ve skutečnosti dělat chce. Když se chyba najde, je velká pravděpodobnost, že někdo bude problému dostatečně rozumět a chybu opraví. A to rychleji než při vývoji proprietárního software. Existuje studie, že jsou linuxové nástroje spolehlivější oproti komerčním Unixům, a to o 4-36%. [6]
8.4.1 Síla open source komunit Abychom ukázali, jak ohromnou sílu open source komunita má, stačí se podívat na několik výzkumů. Operační systém, tak komplexní jako Linux, stojí neuvěřitelné množství práce. Napsání celé distribuce Debian 4.0 etch včetně všech balíčků v roce 2008 by stálo skoro $13 miliard, v přepočtu skoro 240 miliard korun. [11] Ačkoli je to pouze odhad, síla která je z těchto čísel vidět je ohromná. Za Debianem nestála žádná komerční společnost, jako u jiných populárních distribucí. Vše bylo vytvořeno lidmi, kteří pracovali bez vidiny peněz.
8.5 Kde najdeme open source software Z výše uvedených specifik vývoje open source software je vidět, co každý open source projekt musí řešit. Je nutné mít místo, kde si každý může zdrojové kódy stáhnout a kde také může vložit úpravy, které na programu udělal. Dále je potřeba místo, kde mezi sebou můžou komunikovat lidé, pracující na projektu. Dále je nutné mít systém na správu chyb a jejich oprav. Pokud je projekt už ve fázi, kdy je možné ho používat, je potřeba projekt prezentovat. Pro projekt by bylo dobré mít vše na jednom místě.
▪ 16 ▪
SourceForge.net je platforma, která má pomáhat při vývoji open source software a stala se tedy zároveň i místem, kde je možné open source software stáhnout. Momentálně v něm existuje 176843 projektů, z nichž je větší část ve stádiu vývoje. SourceForge.net nabízí kompletní služby na kontrolu celého projektu jako zálohování, správu verzí nebo kontrolu release souborů a různé statistiky. Pro komunikaci s uživateli je k dispozici hlasování, komentáře k projektu, novinky projektu, diskuzní fórum, wiki a další. Vzhledem k popularitě je na SourceForge.net prakticky všechen open source software, co v poslední době vznikl. I proto se SourceForge.net stal místem, kde jsem většinou hledal open source software pro druhou část práce. Větší projekty mají většinou své vlastní stránky, kde můžeme vývoj softwaru sledovat, a zapojovat se do něj. To už jsou ale případy, kdy za projektem stojí větší společnost a ta chce mít nad celým procesem vývoje větší kontrolu. Takovým příkladem může být prohlížeč Mozilla Firefox nebo kancelářský balík OpenOffice.
8.6 Závěr V první části mé práce je shrnuto vše potřebné, abychom pochopili problematiku open source software. Vysvětlil jsem, jaké hlavní myšlenky a jací lidé stojí za vznikem open source hnutí. Z těchto myšlenek vznikla pravidla definovaná v Open Source Definition, která musí každá open source licence a tedy i software dodržovat. Tato pravidla jako šíření softwaru spolu se zdrojovým kódem, povolení modifikací ve zdrojovém kódu a volnost šíření softwaru dávají větší volnost uživatelům. Vytvořila také specifické prostředí pro vývoj softwaru. Uživatel se může stát vývojářem a sám si upravit software podle svých potřeb nebo může pomoci jiným vývojářům s vývojem nové funkcionality. Uživatel se může stát testerem a pomoci tak produkovat kvalitnější kód. Pokud máme k softwaru vztah, existuje velké množství možností, jak mu pomoci být ještě lepší. Tyto principy zaujaly velké množství lidí, kteří pomohli vytvořit nebo vylepšit software jako je Linux, OpenOffice.org, Mozilla Firefox a další. Je mnoho oblastí, pro které již existuje kvalitní open source software. Otázku na kterou budu hledat odpověď ale je, zda existuje i kvalitní software na pokrytí potřeb malého podnikatele.
▪ 17 ▪
9. OPEN SOURCE SOFTWARE PRO MALÉHO PODNIKATELE V této části své práce budu zkoumat, zda-li je open source software schopen pokrýt potřeby malého podnikatele. Abych mohl určit potřeby tohoto podnikatele a mohl se zaměřit konkrétně na jednu oblast, vybral jsem jako cílového uživatele majitele penzionu. Majitele penzionu jsem vybral hlavně proto, že jeho potřeby nelze pokrýt pouze jedním komplexním softwarem. Nejprve jsem vybíral software, který takový podnikatel může ve své práci potřebovat. Identifikoval jsem procesy, které musíme softwarem pokrýt. Hlavní proces hotelu je ubytování hostů. V této oblasti musíme zajistit celý cyklus ubytování, který začíná rezervací pokojů. Pokračuje poté příjezdem hosta a zapsáním na recepci. Proces končí zúčtováním ceny pobytu a odjezdem hosta z penzionu. Součástí penzionu je i restaurace, takže by bylo výhodné využít pointof-sale software pro koncový prodej produktů restaurace. Pro evidenci stavu skladu bude majitel penzionu potřebovat jednoduchou správu skladu. Dále bude potřebovat kancelářský balík, který využije při psaní smluv, tvorbu tabulek, grafů a prezentací. Pro správu financí využije účetní aplikaci. Základem softwarové výbavy počítače je operační systém, i ten budeme vybírat mezi open sourcem. Shrnutí softwaru, který jsem pro naše řešení hledal: •
Operační systém
•
Software na správu penzionu
•
Point-of-sale software
•
Skladové hospodářství
•
Účetní software
•
Kancelářský balík
V každé kategorii je na výběr z mnoho softwaru, musel jsem si tedy předem určit kritéria, podle kterých jsem se rozhodoval, zda-li software vůbec vyzkouším. Velmi důležité bylo, aby software byl už ve stádiu, kdy má nějakou stabilní verzi. Kladně jsem hodnotil velký počet stáhnutí a velký počet kladných hlasů na projektu. Zkoumal jsem všechny informace o projektu a hodnotil, jak projekt vidí ostatní uživatelé. Velkou výhodou bylo pravidelné vydávaní nových verzí a oprav. Jedním z nejdůležitějším kritérií bylo, aby software, alespoň podle poskytnutých informací, co nejpřesněji
▪ 18 ▪
pokrýval potřeby našeho podnikatele. Rozhodoval jsem se pouze pro software, který funguje pod operačním systémem Linux.
9.1 Operační systém Jádrem každé softwarové výbavy počítače je operační systém. Pokud jsem chtěl najít open source řešení, musel jsem také hledat open source operační systém. Jasným kandidátem je Linux a některá jeho distribuce. Rozhodl jsem se, že vyzkouším 3 distribuce: Ubuntu, OpenSuse a Fedora. Ubuntu jako zástupce všech distribucí, které jsou odvozené z Debianu. OpenSuse a Fedora jako komunitní verze populárních komerčních řešení. Všechny operační systémy jsem hodnotil podle dvou hlavních kriterií. První kritérium bylo příjemné, dobře vypadající a intuitivní uživatelské prostředí, aby majitel penzionu, který nemusí být počítačový odborník, dokázal se systémem pracovat. Druhým kritériem byla dostupnost softwaru přímo přes správce balíčků v operačním systému. Tito správci umožňují jednoduchou instalaci balíčků a hlavně poté dokáží jednoduše balíčky aktualizovat. Pro ušetření času a jednoduchost jsem operační systémy instaloval do virtuálního stroje. Díky tomu jsem bohužel musel vynechat testování Fedory, protože WmWare Player ji nepodporuje. Testoval jsem tedy nakonec pouze dvě distribuce, OpenSuse a Ubuntu.
9.1.1 OpenSuse Operační systém OpenSuse je sponzorován společností Novell a je to odnož od jejich komerční verze Suse Linux. OpenSuse oproti komerční verzi umožňuje zapojení komunity do vývoje. OpenSuse jsem bez problémů stáhl ze stránky projektu, i přes jeho velkou velikost (4GB). V nabídce bylo velké množství možností, jak obraz instalačního DVD stáhnout. Zaujalo mne, že nabídka obsahovala i stahování přes torrent. Instalace proběhla naprosto bez problémů, prakticky bez mé asistence. Jediné, co jsem musel vybrat bylo grafické prostředí GNOME nebo KDE. Vybral jsem grafické prostředí KDE, protože následující kandidát Ubuntu využívá GNOME. Uživatelskému prostředí jsem neměl co vytknout, podobá se velmi uživatelskému prostředí Windows. Chybí klasická linuxová horní lišta, místo toho má lištu spodní, kde v levém dolním rohu je menu podobné nabídce Start. Design systému, včetně ikon a oken, vypadá dobře. V základní instalaci je obsaženo vše potřebné pro použití běžným uživatelem. Správce balíčků se nazývá v OpenSuse Yast2. Obsahuje opravdu velké množství balíčků, přehledně členěných do kategorií podle využití. I přesto, že používá jiného správce balíčků než Ubuntu, ve výsledku umí oba vše, co je potřebné. Zásadní rozdíl mezi nimi není poznat. V OpenSuse se mi
▪ 19 ▪
líbila možnost otevření si terminálu ve složce, ve které se právě nacházím. Tuto možnost Ubuntu nenabízí.
9.1.2 Ubuntu Ubuntu je nejpopulárnější distribuce [7] a je známá tím, že je vhodná pro linuxové začátečníky. Pokud je podnikatel začátečník s Linuxem, může být Ubuntu lepší volba. Instalace Ubuntu proběhla zcela bez problémů. Po prvním restartování počítače jsem se však nemohl přihlásit jinak než v nouzovém režimu. Po krátkém hledání jsem zjistil, že problém může být v nastavení průhlednosti oken. U tak stabilní distribuce jako je Ubuntu, je tento fakt překvapující. Poté, co jsem nastavil okna jako neprůhledná, problémy přestali. Naštěstí to byl také poslední problém, který jsem s Ubuntu měl. Většina aplikací potřebná k pohodlnému běhu počítače je už v Ubuntu předinstalovaná. Uživatelské prostředí považuji za přehlednější než v OpenSuse. Stejně tak i správce balíčku Synaptic. Subjektivně musím říci, že se mi s Ubuntu pracovalo o trochu lépe. Jedinou výtku kterou bych k Ubuntu měl je, že nelze otevřít terminál v jakékoliv složce v původní instalaci a tuto možnost je třeba doinstalovat.
9.1.3 Zhodnocení Pro malého podnikatele bych vybral distribuci Ubuntu, která mi přišla o trochu příjemnější na používání. Obě distribuce jsou si ale velmi podobné a dokážu si představit, že bych jako linuxový začátečník nenašel velké rozdíly mezi žádnými z nejpopulárnějších distribucí. Ve správci balíčků jsem nenašel podstatný rozdíl, který by rozhodl. Všechny balíčky, které jsem instaloval byly dostupné v obou distribucích.
9.2 Management penzionu Nejprve jsem musel určit jaké požadavky na software pro podporu managementu hotelu jsou důležité. Software může být tlustý klient i webová aplikace. Webová aplikace je výhodná, pokud umožňuje rezervaci uživatelům přes internet. Pokud tuto možnost software nenabízí, není to nepřekonatelný problém, protože existuje velké množství stránek, které jsou schopny rezervace zprostředkovat, a můžeme pak využívat pouze ruční vkládání rezervací. Klíčovou funkčností je zarezervování pokoje. Abychom mohli zarezervovat pokoj, je nejprve nutné definovat, jaké druhy pokojů se v hotelu nachází, kolik postelí je na každém pokoji a jaké jsou ceny. Pro efektivní
▪ 20 ▪
rezervaci požadujeme, aby byla možnost vidět, které pokoje jsou momentálně volné a které jsou obsazené. Software bude umět spočítat cenu za celý pobyt. Samozřejmostí je příjemné uživatelské prostředí. Vzhledem k tomu, že management hotelu určitě nebude součástí balíčků jakéhokoliv operačního systému, software jsem začal hledat rovnou na SourceForge.net.
9.2.1 Sunalis Sunalis jsem vybral jako nejvíce stahovaný software na SourceForge.net tento týden mezi hotel management softwarem. Byl naprogramován v Ruby on Rails a podle screenshotů vypadal software velmi dobře. Sunalis se mi bohužel nepodařilo nainstalovat. Komentář na SourceForge.net to shrnul dobře „Great software but difficult to install“ . Při napojení do databáze se vždycky zobrazily chyby, nepodařilo se mi to ani na jednom operačním systému. Problémy s instalací jsem neměl pouze já, na fóru tohoto softwaru je spousta vláken s problémovou instalací, většina je ale bez odpovědi. Zhodnocení: Instalace softwaru se nezdařila.
9.2.2 Open Reservation Management System Open Reservation Management System jsem vybral jako druhý nejstahovanější hotel management software na SourceForge.net tento týden. Software jsem zavrhl velmi rychle. Po stáhnutí jsem nemohl najít jakýkoliv návod k instalaci. Jediná dokumentace, která byla k programu dodána, byl readme soubor. V souboru jsem se dozvěděl, že ke spuštění klienta je potřeba Python, o instalaci webové aplikace jsem se nedozvěděl vůbec nic. Po tom co jsem zjistil, že je aplikace ve stavu prerelease, jsem se rozhodl nezabývat aplikací dále. Poslední verze byla vydána před více jak šesti lety, pravděpodobnost, že se vydá nová verze, je velmi nízká. Zhodnocení: Tato aplikace nesplňuje ani to nejzákladnější, co bychom očekávali. Mojí chybou bylo, že jsem se nejdříve nepodíval, v jakém je stavu. Očekával jsem, že druhá nejstahovanější hotelová aplikace bude funkční.
9.2.3 Php-residence Po neúspěších, které jsem měl se SourceForge.net, jsem se rozhodl změnit svoji strategii a spolehnout se na Google. Po vyhledání termínu „open source hotel management“ jsem vybral první odkaz, který vedl na stránku o softwaru Php-residence. Tento hotel management software, jak je už z názvu poznat, je psaný v PHP a běží tedy jako webová aplikace. Software jsem
▪ 21 ▪
neinstaloval, ale pouze jsem ho testoval v demo aplikaci, která je dostupná na domovské stránce tohoto projektu. Společnost, která vyvinula Php-residence nabízí na svých stránkách i hosting, včetně zařízení domény. Součástí stránek je i fórum, které slouží jako podpora tohoto produktu. Fórum je relativně živé, nachází se tam přes 400 příspěvků, z čehož lze soudit, že odpověď na většinu běžných problémů, je už zodpovězena. Php-residence je podle informací na stránkách používaná ve více než 40 hotelech. Jedná se ale pouze o hotely, které se o jmenování na stránkách přihlásili, takže číslo může být daleko vyšší. Na stránkách projektu je také dostupná dokumentace, kde je velmi podrobně popsaná instalace a dokonce je zde i video zaměřené na počáteční konfiguraci po instalaci. Uživatelské rozhraní není pro uživatele přívětivé a design vypadá velice amatérsky. Před nasazením softwaru do hotelu je nutné upravit alespoň kaskádové styly . Funkčností ale Phpresidence své nedostatky v uživatelském rozhraní vynahrazuje. Obsahuje téměř vše, co jsme si v požadavcích definovali. Po instalaci lze nastavit vše, co může hotel pro svoji funkci potřebovat. Můžeme nastavit kompletní informace o pokojích, včetně inventáře. Můžeme si také definovat různé služby, za které budeme vyžadovat extra poplatek. Například si tak může nastavit, že za vypůjčení fénu si budeme účtovat 5 Euro. Dále lze vytvořit cenové tarify, kdy je cena různá pro jednotlivá období, což simuluje sezonní výkyvy v cenách. Potom už jednotlivé tarify přiřadíme pokojům a můžeme přijímat rezervace. Aplikace vytváří rezervace velmi chytře. U každého pokoje lze nastavit prioritu. Pokoje s nízkou prioritou se při rezervaci obsazují nejdříve. Aplikace je dokonce schopná sama měnit rezervace, pokud by se tím uvolnilo místo pro jinou rezervaci. S rezervacemi je možno pracovat hromadně, je zde možnost klasického řazení a filtrování. Také je možné rezervace zobrazit v přehledné tabulce, kde je přesně vidět, kdy je jaký pokoj obsazený. Dalším požadavkem bylo spočítání ceny pobytu. Tento požadavek Php-residence také splňuje. K platbě za pobyt je možné vytisknout zúčtovací dokument. Další výhodou je možnost zobrazit velké množství různých statistik, jako je vytížení pokojů za určité období nebo statistiky tržeb v různých obdobích. Velmi zajímavá věc, kterou nám autoři nabízejí jsou takzvané šablony. Jednotlivé šablony si můžeme vložit do webové stránky a ty nám poté budou komunikovat s naší aplikací. Ve verzi, kdy používáme software na vlastním hostingu jsou nám nabízeny tři. Šablona, pomocí které můžeme zkontrolovat, zda-li jsou v zadaný datum volné pokoje. Dále šablona, která nám ukazuje ceny všech pokojů a veškeré přirážky. Nakonec šablona, která nám umožní zobrazit kalendář obsazení hotelu. Pokud využíváme hostovanou verzi, můžeme využít i další dvě šablony, díky kterým lze platit zálohy pomocí kreditní karty nebo Paypalu.
▪ 22 ▪
Nevýhody této aplikace jsou ve špatně navrženém ovládání a v nejasném překladu do angličtiny. Autoři nejsou rodilí mluvčí, díky čemuž jsem často nemohl pochopit, jaká funkce některých tlačítek a co mám vyplnit do některých formulářových polí. Většina formulářů je také nepřehledná a nápověda by u nich velmi pomohla. Zatímco autorům po dlouhé době vývoje asi přišlo vše jasné a nepotřebné k vysvětlení, mně jako uživateli, který viděl aplikaci poprvé to tak nepřišlo. Jako uživateli, který s aplikací pracoval poprvé, si myslím, že by autoři měli na nápovědě a přehlednosti formulářů zapracovat.
Ilustrace 1: Php-residence - tabulka rezervací
Zhodnocení: Php-residence splňuje úplně všechny požadavky, které jsme si pro software na správu hotelu stanovili. Navíc obsahuje i několik funkčností, které jsme ani nevyžadovali. Práci nám ale jistě ulehčí a zpříjemní. Aplikace nám také umožňuje už do hotových webových stránek vložit šablony, které potenciálním hostům umožní kontrolovat dostupnost pokojů i jejich ceny. Mezi nevýhody patří špatné uživatelské prostředí a jazykový překlad. To jsou ale nevýhody, které lze snadno opravit a stačí k tomu jen základní znalost HTML a CSS.
9.2.4 FGMP Hotel Management Tento týden třetí v počtu stažení na SourceForge.net byl FGMP Hotel Management. Jeho instalace byla jednoduchá, jediné, co aplikace pro svůj běh vyžadovala bylo založení databáze v MySQL a Javu. Javu aplikace vyžadovala, protože byla napsaná ve Swingu jako tlustý klient. Poté už stačilo jen spustit .jar soubor. Aplikace mi po celou dobu práce s ní připomínala nekvalitní seminární práci z programování. První nedostatek jsem zjistil už při přihlašování. Nedostal žádnou zprávu, že jsem přihlášen, ani nedošlo k žádnému přesměrování. Jediná změna byla ta, že jsem mohl kliknout na
▪ 23 ▪
tlačítko Logout. Následovala konfigurace připojení do databáze a jazyka a mohl jsem začít nastavovat hotel. Aplikace nabízí zařazení vytvořených pokojů do jednotlivých mnou vytvořených kategorií, lišící se cenou. Než jsem přišel na způsob, jak poznám, že se kategorie opravdu přidala, měl jsem uložené tři stejné. Dále lze v aplikaci nastavit údaje o hotelu, které se poté zobrazují na účtenkách. Nastavit lze také poplatky za zrušení rezervace a složka, do které se budou ukládat vygenerované účtenky. Je možno vytvořit různí uživatele a každému uživateli lze nastavit 6 různých oprávnění. Nejproblematičtější funkčnosti jsou rezervace a přidávání hostů. Při prvním použití aplikace jsem byl nucen přeložit si německou nápovědu, abych zjistil, jakým způsobem přidat hosta. Ani po překladu jsem však způsob nenašel. Jako běžný uživatel bych očekával, že když kliknu v menu na položku Hosté, naleznu na stránce možnost přidat hosta. Tato možnost na stránce není. Operace, které udělat můžeme, je vyhledaní hosta podle několika údajů. Po vyhledání můžeme editovat jeho údaje nebo mu rezervovat pokoj. Založení hosta totiž probíhá na stránce pro rezervace. Místo formuláře je zde připravená editovatelná tabulka s jedním řádkem. Neprobíhá jakákoliv kontrola zadaných údajů. Zbytek procesu rezervace probíhal stejně zmatečně, ale nakonec se mi po dlouhé době podařilo pokoj zarezervovat.
Ilustrace 2: FGMP Hotel Management - vytvoření rezervace
Zhodnocení: FGMP Hotel Management by jako řešení teoreticky sloužit mohl. Uživatel by se ale s aplikací musel naučit pracovat a nedělat žádné pro aplikaci neočekávané úkony. Z vyžadovaných funkčností podporuje téměř všechny. Nikde ale není přehledně vidět, kdy jsou jaké pokoje volné.
▪ 24 ▪
Kvalita uživatelského prostředí aplikace také není velká. Navíc nenabízí ani nic navíc, čím by zaujala mezi ostatními.
9.2.5 Hotelier Na stránce projektu je popisek : „Hotelier je unikátní hotelový open source software, který vám umožní nainstalovat plně funkční online hotel.“ [8] Jak jsem se později přesvědčil, není to pravda. Při snaze o úspěšné spuštění aplikace se vyskytlo několik menších překážek, jejichž řešení ale nebylo časově náročné. U dobře fungujícího projektu by tyto potíže neměly nastat. Nejprve jsem si stáhl zabalenou aplikaci a rozbalil. Přečetl jsem si soubor Install, kde byla ale popsána instalace CMS systému Joomla, na kterém je celé řešení založeno. Poté jsem si přečetl, že k instalaci jsou potřeba dva soubory. Jeden z nich jsem ale na SourceForge.net nenašel a musel jsem soubor stáhnout přes domovskou stránku projektu. Následovala instalace, která byla velmi jednoduchá. Na konci instalace jsem byl požádán o zadaní hesla, pomocí kterého se budu do aplikace přihlašovat. Spustil jsem webovou aplikaci. Ta vypadala velmi dobře, ale nemohl jsem najít funkčnosti, které jsou potřeba pro plně funkční online hotel. Očekával jsem, že funkčnosti bude možné zapnout přes administrátorské rozhraní. Po spuštění administrátorského rozhraní jsem byl vyzván k zadání hesla. Zadal jsem heslo, o které jsem byl požádán na konci instalace, aplikace mě však nepřihlásila. Po několika pokusech a reinstalaci celé aplikace jsem si otevřel fórum tohoto projektu a dozvěděl jsem se, že se při instalaci se heslo neukládá. Dále jsem našel radu, jak problém vyřešit. Heslo, pod kterým se budu chtít přihlašovat bylo nutné prohnat hashovací funkcí a poté ho ručně nakopírovat do databáze. Problém se tímto vyřešil a mohl jsem se přihlásit. V administrátorském rozhraní jsem se dále snažil najít slibované funkčnosti. Ty jsem ale nenašel, a tak mohu říci, že Hotelier je pouze šablona webových stránek vytvořených pro CMS Joomla. A tak jsem se pokusil najít alespoň nějaké rozšíření pro Joomla, které by umožňovalo online rezervace. Na webové stránce Joomla.org jsem našel skoro třicet rozšíření, ale většina z nich byla komerčních. Vyzkoušel jsem dvě nekomerční, ale ani jedna instalace se nezdařila, pravděpodobně kvůli problémům s právy v Linuxu.
Zhodnocení: Hotelier je obyčejná šablona do CMS Joomla. Jako software pro správu hotelu se nedá použít. Lze použít Joomla společně s rozšířeními na rezervaci, ale většina rozšíření je placená. Nepodařilo se mi najít řešení, které by bylo možné bez problémů zprovoznit a vyzkoušet.
▪ 25 ▪
9.2.6 Zhodnocení V oblasti správy hotelů není velký výběr a už vůbec není výběr z kvalitního softwaru. Většina z vybraných aplikací měla podobné chyby. Mezi chyby patřila hlavně špatná dokumentace a velmi špatné uživatelské rozhraní. Jediná aplikace, která splňovala požadavky byla Php-residence. Proto bych jako aplikaci pro hotel použil Php-residence. Před nasazením této aplikace bych ale upravil uživatelské rozhraní.
9.3 Point-of-sale software Point-of-sale (POS) softwarem se myslí software, přes který se obhospodařuje koncový prodej. U restaurace to je správa lístků (objednávek) a vyřízení platebních transakcí. Správa lístků by měla umět vytvářet a spravovat lístky pro jednotlivé stoly. Tato funkce by měla být co nejjednodušší a nejpohodlnější pro uživatele, protože tuto činnost uživatel vykonává nejčastěji. Při placení by mělo být umožněno platit lístek nejen hromadně, ale i po částech. Software musí mít také podporu pro platbu v hotovosti a platbu pomocí platební karty. Ke každé platbě musí být schopen vytisknout účtenku. Uživatelské rozhraní musí být ovladatelné přes dotykový displej. Software by mimo správy lístků a vyřizování platebních transakcí měl umět také základní správu uživatelů a rolí. To proto, aby si zaměstnanec nemohl prohlížet data, která mu nejsou určena. Software musí také umět jednoduché vytvoření jídelního menu, podporu české měny a možnost nastavení daní. Na SourceForge.net jsem našel dvě aplikace, které jsem se rozhodl otestovat. První aplikací je Openbravo POS, což je point-of-sale software, u kterého existují dvě verze. Jak verze s placenou podporou, tak takzvaná community verze, která je open source a zcela zdarma. Openbravo POS je zaměřen spíše na prodej zboží, obsahuje ale i modul pro restaurace a právě ten jsem testoval. Druhou aplikací je FloreantPos, který je přímo POS pro restaurace.
9.3.1 Floreant POS Floreant POS jsem vybral podle velmi kladných komentářů na SourceForge.net a také díky velké aktivitě projektu, nový kód přibývá každých pár dní. Aplikace běží od začátku nad databází PostgreSQL. Celá aplikace je napsaná v Javě. Hned po spuštění jsem zjistil, že uživatelské prostředí vypadá velmi profesionálně a je přizpůsobené dotykovým displejům.
▪ 26 ▪
Po přihlášení je nutné nejdříve aplikaci nastavit v modulu backoffice. Lze tam nastavit uživatele a jejich práva. Práva se dají rozdělit do tří skupin. Práva pro číšníky, manažerské práva a práva administrátora. Práva pro číšníky jim dovolují práci s lístky. Manažerská práva umožňují práci s hotovostí a administrátorská dovolují nastavovat aplikaci, vytvářet nové uživatele a přiřazovat práva uživatelům. Dále v modulu backoffice můžeme nastavovat informace o jídlech, rozdělovat je do kategorií (např. snídaně, obědy, večeře), do skupin (např. předkrm, nápoje, dezerty) a každému jídlu můžeme přiřadit modifikátory (např. u steaku rare, medium, well-done). Můžeme si nastavit tiskárnu pro účtenky a pro lístky s objednávkou do kuchyně. Samozřejmostí je nastavení měny a informací o restauraci, které se objeví na vytisknutých účtenkách. V modulu nechybí možnost definovat různé slevy a kupony. Poslední věcí, kterou v backoffice najdeme, jsou různé druhy reportů. Hlavní obrazovka nám nabízí seznam lístků a operací, které s lístky můžeme provádět. Každý lístek se váže k jednomu stolu. Stůl je zde reprezentován pouze přiřazeným číslem. Krom zřejmých funkčností jako je tvorba lístků, je zde také možnost lístky rozdělovat, slučovat (pokud bude platit jeden člověk za více stolů), lístek můžeme zrušit a znovuotevřít a spoustu dalších možností. Rozdíly mezi některými operacemi s lístky nejsou pro uživatele bez zkušeností v restauraci snadno pochopitelné. Určitě ale obsahuje všechny funkčnosti, které bude malá restaurace potřebovat. Platba je možná provést několika způsoby, momentálně však neexistuje způsob, jak platby vyzkoušet. Aplikace pro provedení platby vyžaduje fyzické zapojení kasy a tiskárny účtenek. Na projektu je velmi pozitivní obsáhlé a aktivní fórum. Na fóru jsem zjistil několik potřebných informací, včetně toho, že zaplatit bez připojené kasy a tiskárny nelze. Objevují se tam i různé triky, jak obejít některá business pravidla, která jsou naprogramovaná přímo v aplikaci. Jedním takovým business pravidlem je nutnost zadat u každého stolu počet hostů a pro každého hosta je nutné mít objednané pití. Toto pravidlo si vyžádalo několik restaurací při přizpůsobování softwaru pro jejich potřeby. Podle názorů uživatelů, které se objevují na fóru, existují restaurace, kterým toto pravidlo znepříjemňuje práci. Jeden aktivní uživatel ihned na fóru uvedl trik, jak toto pravidlo obejít. Pro nezkušené vývojáře můžeme na fóru najít návod, jak zprovoznit software v Netbeans. Na stránkách softwaru je k dispozici podrobná uživatelská dokumentace a možnost objednat si komerční podporu aplikace.
▪ 27 ▪
Ilustrace 3: Floreant POS - seznam lístků
Zhodnocení: Floreant POS je velmi kvalitní software, který nabízí všechny funkce potřebné pro chod restaurace. Nabízí však i spoustu dalších funkčností. Některé z nich využije pouze uživatel, který má s restauracemi zkušenosti. Kvalitní dokumentace a komunita ochotná pomáhat je velmi další plus pro Floreant POS.
9.3.2 OpenBravoPOS Při vyhledávání POS softwaru na SourceForge.net je Openbravo POS (OBPOS) na prvním místě. Instalace softwaru proběhla rychle a jednoduše. Aplikaci bylo možno spustit v kancelářských programech přímo v Ubuntu, což shledávám velice kladné. Software jsem instaloval klasickým způsobem přes instalační soubor, který jsem stáhl přes webové stránky projektu. Až poté jsem zjistil, že je software možné nainstalovat přes správce balíčků přímo v Ubuntu. Po spuštění je nutné nejdříve zapnout modul pro restaurace. Modul se zapíná způsobem, který by mne osobně bez nahlédnutí do dokumentace nenapadl. Mezi 15 jinými nastaveními je nutné najít nastavení typu lístku. Typ lístku je nutné změnit na lístek pro restaurace. Po změně nastavení jsou už vidět na hlavní obrazovce graficky znázorněné jednotlivé stoly. V aplikaci existuje možnost si polohu a
▪ 28 ▪
počet stolů jednoduše nastavit. Každý uživatel si tyto údaje nastaví tak, aby odpovídaly jeho restauraci, podporovány jsou i vícepatrové restaurace. V aplikaci si uživatel také snadno nastaví měnu, jazyk, formátování datumu, čísel a podobně. Ve správě uživatelů máme v aplikaci předpřipravené role hosta, zaměstnance, manažera a administrátora. Každá role má povolení k určité množině objektů. Každý objekt je representován Java třídou. Díky tomu můžeme povolovat nebo zakazovat i přístup k formulářům. Každá role má pravidla zapsaná ve vlastním XML souboru. Pro uživatele toto není ideální řešení. Aby mohl uživatel přidat roli právo k objektu, musí si najít v dokumentaci název odpovídající třídy. Definice produktů není v OBPOS tak podrobná a jednoduchá jako ve Floreant POS. Každému produktu lze přiřadit pouze jednu kategorii, ale každá kategorie může mít rodičovskou kategorii. Díky tomu je možné v OBPOS vytvořit všechny případy, které můžeme vytvořit ve Floreant POS. Není možné jednoduše přidat k produktu modifikátor. Velkou výhodou OBPOS je, že v sobě obsahuje podporu pro skladové hospodářství. Definice produktů však neumožňuje plné využití této funkčnosti. Nelze totiž jednoduše nastavit z kterých podproduktů se celé jídlo skládá. To by umožňovalo, aby při prodeji jídla ze skladu zmizely všechny podprodukty, z kterých se jídlo skládá. Na oficiálním fóru Openbravo POS se už objevil návod, jak se dá i tohoto dosáhnout. Vyžaduje to však ruční zásah do databáze, funkčnost zatím není v UI podporovaná. Funkčnost se ale chystá do jedné z příštích verzí. Je už totiž vytvořená v komunitním projektu, odvozeném z OBPOS, který se zaměřuje na fast-food restaurace. Tento projekt je oficiálně podporován i přesto, že je kompletně vytvořen komunitou,. Práce s lístky není v OBPOS tak propracovaná, jako ve Floreant POS. Ke každému stolu lze přiřadit pouze jeden lístek. Ten však nejde slučovat ani rozdělovat. S lístkem můžeme provádět pouze operace: vytváření, editování, zaplacení. Platba může probíhat různými způsoby. OBPOS nabízí platbu v hotovosti, platbu platební kartou, platbu šekem, nebo může být účet neproplacen. Platba v hotovosti umožňuje zadat částku číselně, novinkou v této aplikaci je možnost zadat částku pomocí ikon bankovek a mincí, které číšník obdrží. Samozřejmostí je výpočet, jaké množství peněz by měl číšník vrátit. Další funkčnost, kterou software OBPOS nabízí, je rezervace stolů. Rezervace je klasickým způsobem na jméno zákazníka. Kromě jména je nutné do aplikace zadat také počet rezervovaných míst. Po příchodu hosta obsluha klikne na tlačítko „vyřídit rezervaci“ a přiřadí příchozím hostům stůl. Z toho vyplývá, že rezervovaný stůl není předem v aplikaci blokován, o vše se musí starat obsluha. Na konci každého dne je nutné uzavírat kasu. To znamená vybrat z kasy veškerou hotovost. Aplikace je schopna spočítat sumu veškerých operací, které v kase proběhly. Lze tak snadno a jednoduše zkontrolovat, zda-li hotovost v kase odpovídá hodnotě v aplikaci. Tyto údaje je
▪ 29 ▪
také možné vytisknout v několika formátech. OBPOS také nabízí různé jiné reporty, i když jich není tolik jako u Floreant POS. Dokumentace k aplikaci není úplně kompletní. Co se týče uživatelské dokumentace, jsou zdokumentované pouze dvě části. Část o zákazníkovi a životní cyklus prodeje. Dále máme k dispozici dokumentaci k vytváření vlastního vzhledu lístku a k vytváření rolí. Je důležité, že tyto funkčnosti, které nejdou přímo provést v UI, jsou alespoň dobře zdokumentované. Zbývající část aplikace zdokumentovaná není. Oproti tomu dokumentace vytvořená pro komunitu, nebo-li pro uživatele, kteří se chtějí zapojit do projektu, je na výborné úrovni. Existuje dokumentace pro vývojáře, pro překladatele i pro uživatele tvořící dokumentaci.
Ilustrace 4: Openbravo POS - hlavní obrazovka
Zhodnocení : Openbravo POS je na velmi dobré cestě, aby se stal řešením použitelným pro jakoukoliv restauraci. Pokud se ale zaměříme na samotnou point-of-sale část, chybí zde několik funkčností, které v tom aplikaci brání. Mezi ně řadíme například rozšířenou práci s lístky, nebo jednoduší tvorbu oprávnění pro uživatele. Software jako celek ale nabízí oproti konkurenci funkčnosti, jako je rezervace stolů, skladové hospodářství nebo grafický výběr stolů, což je pro software výhodou.
▪ 30 ▪
9.3.3 Zhodnocení Pokud bych si měl vybírat software, který budu chtít nasadit jako samostatné POS řešení, jednoznačně bych si vybral Floreant POS. Ten obsahuje veškerou funkčnost, kterou může restaurace potřebovat. Nenabízí ale žádné další funkčnosti a rozšíření. Při výběru softwaru, který by měl být součástí celého komplexnějšího řešení, vybral bych Openbravo POS. Je to software sice zaostávající v oblasti samotného prodeje, ale nahrazuje tento handicap ostatními funkčnostmi. Software se stále zlepšuje, je obhospodařován fungujícím tým a má kolem sebe velmi aktivní uživatelskoukomunitu.
9.4 Skladové hospodářství Skladové hospodářství hraje v penzionu s restaurací důležitou roli. Abychom vždy měli dostatek všeho, co je potřeba, musíme sledovat stavy zásob na skladu. Navíc nám to může pomoci i jako kontrola proti krádežím od zaměstnanců. Dále musíme umět zaznamenat nákup a prodej zboží a veškeré jiné úbytky a přírůstky zboží na skladu.
9.4.1 ERP software ERP software neboli Enterprise Resource Planning software slouží ve společnosti hlavně jako místo integrace a automatizace procesů související s výrobou výsledného produktu. Všechny druhy ERP softwaru nabízí mnoho modulů. Prakticky vždy nabízí i modul pro účetnictví a skladové hospodářství. Proto jsem se nejdříve rozhodl vyzkoušet, zda-li nepůjde pokrýt skladového hospodářství a účetnictví jedním softwarem. Jako první jsem vyzkoušel PostbooksERP. Instalace proběhla bez nejmenších problémů, ale po spuštění mě program zaskočil svou komplexností. I když je označen [12] jako software pro malé a střední podniky, nasazení takového řešení u malého podnikatele je nereálné. Strávil by více času obhospodařováním softwaru než samotným businessem. Také by musel nejdříve svůj hotel na půl roku uzavřít, aby mohl zaškolit všechny zaměstnance pro práci s tak komplexním softwarem. Testoval jsem ještě několik ERP systémů, ale u všech byl problém s komplexností stejný. ERP software se tak ukázal jako zbytečně robustní řešení pro malého podnikatele. Myšlenku, že obě oblasti vyřešíme jedním softwarem, tak musíme zavrhnout. Závěr: ERP software nám nabízí všechny funkce, které hledáme. Kromě nich nám ale nabízí i velké množství funkčností nepotřebných. Pro malého podnikatele je u softwarového řešení klíčem k úspěchu jednoduchost a rychlá zvládnutelnost jednotlivých aplikací. ERP software tento
▪ 31 ▪
požadavek nesplňuje. I přesto, že by bylo dobré mít co nejvíce oblastí integrované v jedné aplikaci, musíme tedy toto řešení zavrhnout.
9.4.2 Simple Inventory System Jediný jednoduchý samostatný software, který jsem našel na správu skladu byl Simple Inventory System. Podle popisu se sice software specializuje na oděvní průmysl, většina funkčností bude ale pro všechny oblasti podnikání použitelná. Aplikace je napsaná v PHP s častým použitím Javascriptu a AJAXu. Instalace byla rychlá a bezproblémová, vše bylo přesně popsané v instalační příručce. K aplikaci neexistuje jiná dokumentace než je právě instalační příručka. Dokumentaci jsem hledal i na domovských stránkách projektu. Místo dokumentace jsem na stránkách nalezl nabídku hosting aplikace, konzultace a zálohy dat. Po spuštění se zobrazila jednoduchá webová aplikace. Podle menu vypadalo, že aplikace obsahuje všechny funkčnosti, které jsem po softwaru na skladové hospodářství požadoval. Nejdříve jsem vytvořil kategorie produktů a produkty do nich zařadil. Tato funkčnost probíhala bez problému. Problémy se vyskytly až ve chvíli, kdy jsem chtěl produkty do skladu nakoupit. Po stisknutí tlačítko pro vyhledání produktu aplikace nebyla schopna produkt vyhledat. Zkontroloval jsem, že produkt se stejným identifikátorem se v databázi vyskytuje. Po prozkoumání fóra, kde jsem řešení problému nenašel, jsem se rozhodl prozkoumat zdrojový kód. Chybu jsem velmi rychle objevil a opravil. Po opravení chyby vyhledání produktu už fungovalo. Zjistil jsem ale nový problém, nefungující výběr množství nakoupeného zboží. Díky tomu zde nebyla možnost zboží nakoupit. Po tomto problému jsem se rozhodl, že testování aplikace ukončím.
Ilustrace 5: Simple Inventory System - zadání nákupu zboží
▪ 32 ▪
Závěr: Nejprve se zdá, že Simple Inventory System je zajímavé řešení. Po delší práci s aplikací se ale vyskytnout chyby, podle kterých můžeme usoudit, že se na aplikaci přestalo pracovat ještě před jejím dokončením. Velkou zvláštností je, že autoři na svých webových stránkách nabízí spoustu služeb k softwaru, který vlastně vůbec nefunguje.
9.4.3 OpenOffice šablona Vzhledem k nízkým požadavků na aplikaci mě napadlo, že by problém mohl být vyřešen šablonou do tabulkového editoru v OpenOffice.org. Hledal jsem tedy OpenOffice šablonu, která by umožňovala funkční skladové hospodářství. Po nalezení šablony jsem však zjistil, že poskytuje pouze jednu z požadovaných funkčností. Jednalo se o funkčnost, která umožňovala znát aktuální stav skladu. Šablona neuměla zpracovat prodeje ani nákupy zboží. Nákupy a prodeje se tedy zadávají pouze jako změna zůstatku množství zboží. Závěr: Tuto OpenOffice šablonu bych použil jen v nejkrajnějším případě. A to jedině pokud by jediná další možnost byla psát veškerá data na papír.
9.4.4 OpenBravo POS Software OpenBravo POS (OBPOS) jsem už představil dříve. Nyní se zaměříme na jinou část tohoto softwaru, na skladové hospodářství. V aplikaci si můžeme nastavit několik skladišť. Pro správu konkrétního skladiště existuje několik možností, jak se zbožím operovat. Zboží lze nakoupit, prodat, přesunout ze skladiště do skladiště, prohlásit zboží za rozbité, přidat a odebrat zboží ze skladiště. U každého produktu můžeme nastavit určité množství, pokud nám aktuální hodnota množství zboží klesne pod tuto hodnotu, objeví se informace v reportu o chybějícím zboží. U každého produktu lze také nastavit, z jakého skladiště se bude automaticky odebírat, pokud je prodán pomocí OpenBravo POS. Největší výhodou, kterou OBPOS nabízí je spolupráce s prodejem zboží. Při každém prodeji zboží, se tento kus zboží automaticky odečte ze skladu. V aplikaci je tak vždy dostupná informace, jaké množství zboží by mělo být v daný okamžik ve skladu. V restauraci tato funkčnost není taková výhoda, jako třeba v obchodě s oblečením. Většina produktů v restauraci se totiž skládá z několika surovin, navíc nelze přesně definovat, jaké množství surovin se na jaký produkt použije. Informace o množství zboží na skladu, tak nikdy nemůže být úplně přesná. Pokud chceme zjistit, jaké množství určitého zboží se vyskytuje na skladě, vygenerujeme přednastavený report. Reportů se v této aplikaci využívá pro získávání informací z databáze. Existuje i možnost vytvářet si vlastní reporty.
▪ 33 ▪
Ilustrace 6: OpenBravo POS - úprava množství zboží ve skladu
Zhodnocení: Použití OBPOS pro skladové hospodářství je výhodné pouze pří použití OBPOS i pro prodej. Jinak nevyužijeme hlavní výhody OBPOS, což je spolupráce skladového hospodářství s prodejem. Při rozhodnutí použít OBPOS jako point-of-sale software je zároveň rozumné ho použít i jako skladové hospodářství
9.4.5 Zhodnocení V oblasti skladového hospodářství není mezi open source softwarem velká řada možností. Existuje pouze malé množství softwaru, který by se zaměřoval pouze na skladové hospodářství. Většina softwaru řešící skladové hospodářství jsou komplexní aplikace pokrývající velké množství procesů ve firmě. Tyto aplikace však potřebují úpravy, aby je mohl konkrétní podnik začít používat, potřebují také zaučení zaměstnanců a jsou časově náročné na obsluhu. Proto jsem vybíral mezi jednoduššími řešeními. Jediné řešení, které splňovalo všechny požadavky bylo OBPOS. Pokud bychom se rozhodli využít OBPOS i jako point-of-sale, mohli bychom využít integrace s prodejem.
▪ 34 ▪
9.5 Účetní software Účetnictví je nezbytnou součástí každého podnikání. Proto součástí našeho řešení bude i účetní software. Po účetním softwaru požadujeme, aby byl schopen účtovat podvojně. Uživatelské rozhraní by mělo být pro uživatele přívětivé a aplikace dostatečně jednoduchá, aby se ní uživatel rychle naučil pracovat. Účetní software musí podporovat českou měnu. Poté, co jsem získal dostatek informací, jsem se rozhodl vyzkoušet dvě aplikace, Gnucash a JGnash. Nezkoušel jsem software, který uměl ERP, POS apod, protože takovýto software nemůže být jednoduchý. Preferoval jsem software zaměřený na malé podniky nebo osobní finance s podporou podvojného účetnictví.
9.5.1 Gnucash Gnucash je účetní program pro malé podniky a osobní finance. Jeho vývoj začal už v roce 1997. Instalace byla jednoduchá, Gnucash je obsažen přímo ve správci balíčků v Ubuntu. Hned po spuštění mi byly nabídnuty tipy a dokumentace. Dle mého názoru, je dokumentace ke Gnucash nejlepší ze všech mnou vyzkoušených aplikací. V dokumentaci nejsou popsány pouze funkčnosti aplikace, ale dokumentace obsahuje i vysvětlení základních účetních principů, takže se s aplikací může naučit pracovat opravdu každý. Kdykoliv jsem potřeboval s aplikací pomoci, odpověď jsem v dokumentaci našel. Aplikace je přeložená do češtiny, názvy všech účtů jsou ale v angličtině. Při počáteční konfiguraci si můžeme vybrat měnu a základní podobu účtů. Typů konfigurací účtů je velké množství, od studentské, podnikatelské až po důchodovou. Po zvolení si pro nás správné konfigurace, se dostaneme na stránku s účty. Počet, názvy a struktura účtů závisí na konfiguraci, kterou jsme si vybrali. S účty se pracuje tak, jak by člověk ovládající základy účetnictví očekával. Vyjma toho umí samozřejmě Gnucash i vícenásobné transakce mezi více účty najednou. Aplikace podporuje i práci s více než jednou měnou. Lze plánovat pravidelné transakce, ty se na účty zaznamenávají automaticky v periodě, kterou si určíme. Tuto funkčnost dobře využijeme například pokud pravidelně platíme nájemné. Toto jsou ale všechno funkce, které jsou prakticky v každém účetním software pro osobní finance. Gnucash však nabízí i funkčnosti určené speciálně pro podnikatele. V menu Podnik, je možnost zakládat účty dodavatelů a odběratelů a také pro ně vytvářet faktury. Faktury lze upravit tak, aby vypadala jak podnikatel potřebuje. Faktura se může po vytvoření automaticky promítnout na odpovídající pohledávkový účet. Totéž lze udělat i pro dodavatele. Gnucash neobsahuje speciální funkčnost pro výplaty. I výplaty však lze v Gnucash udělat, všechny údaje ale musí uživatel zadávat ručně. Pomoc při řešení tohoto problému také nalezneme v dokumentaci.
▪ 35 ▪
Ilustrace 7: Gnucash - hlavní obrazovka s účty
Závěr: Gnucash je kvalitní aplikace. Instalace i uživatelské prostředí je vynikající, výhodou pro české uživatele je přeložení do češtiny. Aplikace má podrobnou dokumentaci. Díky funkčnostem, které jsou určené pro malého podnikatele je pro něj Gnucash ideální řešení.
9.5.2 JGnash JGnash je software zaměřený více na osobní finance. Jeho uživatelské rozhraní je jednodušší a přehlednější než Gnucash. Je to také díky tomu, že nabízí méně funkčností. JGnash zatím není přeložený do češtiny. Počáteční konfigurace probíhá podobně jako u Gnucash. Rozdíl je, že v nabídce máme na výběr z méně konfigurací počátečních účtů. Jedná se spíše o software pro osobní finance, což je viditelné již z názvu účtů v minimální konfiguraci. Účty, které aplikace vyžaduje jsou Výdaje, Příjmy a Bankovní účty. V oblasti osobních financí nabízí JGnash totožnou nabídku funkčností jako Gnucash. Díky přehlednějšímu uživatelskému rozhraní je ale JGnash jednodušší na používání. Malému podnikateli ale kromě jednoduchosti, nenabízí žádné výhody.
▪ 36 ▪
Ilustrace 8: JGnash - hlavní obrazovka s účty
Zhodnocení: JGnash je svým zaměřením software pro osobní finance. Nemůže se zatím stát alternativou pro malého podnikatele. Aplikace umí dobře podvojné účetnictví a je jednoduchá. Pro malého podnikatele ale nenabízí žádné funkčnosti na podporu jejich podnikání.
9.5.3 Zhodnocení V oblasti účetnictví není v open source softwaru moc velký výběr. Účetnictví je většinou součástí komplexnějšího řešení. Pokud hledáme jednoduché řešení, zjistíme, že většina softwaru je zaměřena spíše na osobní finance. Jediným řešením, které nabízí dobrou podporu pro malého podnikatele je Gnucash.
9.6 Kancelářský balík Prakticky každý počítač by měl mít ve své softwarové výbavě kancelářský balík. I když nebudeme chtít dokumenty vytvářet, potřebujeme mít možnost minimálně dokumenty otevřít a přečíst. Malý podnikatel ale bude jistě chtít i dokumenty tvořit. Mohou to být smlouvy, grafy zisků, tabulky či prezentace. Všechny tyto dokumenty lze vytvořit v nástrojích, které nabízí každý kvalitní kancelářský balík. Při výběru open source kancelářského balíku není nutné dlouho hledat. Kancelářský balík OpenOffice.org nemá velkou konkurenci.
▪ 37 ▪
9.6.1 OpenOffice.org OpenOffice.org vznikl s cílem nabídnout uživatelům svobodný kancelářský balík, fungující na všech hlavních platformách, který bude založen na svobodných komponentách a souborovém formátu. Balík je vyvíjen pod záštitou firem Sun Microsystems a Novell, podílí se na něm ale i spousta dobrovolných programátorů. OpenOffice.org se inspiroval kancelářským balíkem Microsoft Office. To je možné poznat z nabídky nástrojů, které nabízí, a v podobném ovládání aplikací.
Nástoj
Microsoft Office
OpenOffice.org
Textový editor
Microsoft Word
OpenOffice.org Writer
Tabulkový procesor
Microsoft Excel
OpenOffice.org Calc
Prezentace
Microsoft PowerPoint
OpenOffice.org Impress
Databáze
Microsoft Access
OpenOffice.org Base
Tabulka 1: Obdobné aplikace v Microsoft Office a OpenOffice.org
Pro úspěch open source kancelářského balíku je nutná podpora veškerých formátů které používá balík od Microsoftu. Ten má stále většinový podíl na trhu. Počínaje verzí 3.0 OpenOffice.org skutečně podporuje všechny formáty, i ty které používá nový Microsoft Office 2007. Kromě proprietárních formátů od Microsoftu podporuje hlavně otevřené formáty Open Document. Instalace balíku je v operačním systému Linux bezproblémová, většina distribucí balík přímo obsahuje. Pokud balík není distribucí podporován, lze ho vždy stáhnout pomocí správce balíčků. Práce s jednotlivými nástroji není zcela intuitivní, zejména tehdy, když potřebujeme využít méně obvyklých funkčností. Důležitá je v tomto případě kvalitní dokumentace a návody. OpenOffice.org obsahuje velmi kvalitní a podrobnou nápovědu přímo v každém z nástrojů. Na domovských stránkách lze naleznout velké množství dalších návodů a triků, jak s nástroji pracovat. OpenOffice.org lze vylepšovat pomocí rozšíření. Typickým rozšířením jsou slovníky, které umožňují využívat funkce kontroly proti překlepům. OpenOffice.org nabízí vše, co může uživatel od kancelářského balíku vyžadovat. Nevýhodou může být, poněkud neintuitivní ovládání oproti konkurenčnímu komerčnímu řešení od Microsoftu. V oblasti open source softwaru, ale konkurenci nemá.
▪ 38 ▪
ZÁVĚR V závěru mé bakalářské práce shrnu všechny důležité poznatky, a zhodnotím výsledky testování open source softwaru pro malého podnikatele. Vybavit počítač pro běžného uživatele pouze open source softwarem je určitě možné a můžeme se s tím setkat u populárních linuxových distribucí. Já jsem se však snažil nalézt odpověď na otázku ne zcela zřejmou, a to, zda-li je možné takto vybavit malého podnikatele, konkrétně majitele či provozního malého penzionu. Je jasné, že většina populárních aplikací má své komerční i open source zástupce. Lze ale také nalézt software pro správu hotelu, účetnictví nebo point-of-sale? Při tvorbě této práce jsem zjistil, že je možné pokrýt potřeby majitele malého podniku pouze open source softwarem. V každé oblasti, kterou jsem se rozhodl pokrýt, jsem našel alespoň jednoho zástupce, který dokázal splnit požadavky, jež jsem definoval. V mnou navrženém řešení bych jako operační systém použil linuxovou distribuci Ubuntu. Ubuntu je uživatelsky přívětivý a i člověk neznalý Linuxu se s ním dokáže rychle naučit pracovat. Pro správu hotelu bych vybral Phpresidence. Kromě toho, že nabízí fungující správu hotelu, také nabízí aktivní prvky, kterými může podnikatel obohatit webové stránky penzionu a zkvalitnit tak služby. V restauraci bych použil software OpenbravoPOS. Tento software bude fungovat zároveň i pro správu skladu. Velkou výhodou je integrace prodeje se skladem, pokud zboží prodáme, z evidence skladu bude zboží automaticky ubývat. Veškeré účetnictví budeme zaznamenávat do aplikace Gnucash. Tato aplikace nám kromě základních funkcí podvojného účetnictví pomůže i automaticky zaznamenávat transakce za nákupy od jednotlivých dodavatelů. Pro tvorbu a čtení dokumentů bude mít podnikatel k dispozici kancelářský balík OpenOffice.org. Všechny tyto aplikace jsou živé projekty, které se neustále vyvíjí a zlepšují. I na takto malém množství projektů jsou jasně viditelné rozdíly ve vývoji a které strategie vývoje jsou úspěšnější. Vyskytují se zde projekty, jež jsou vyvíjené spíše stylem katedrály, ale i projekty vyvíjené spíše stylem bazaru. Php-residence je typický zástupce vývoje stylem katedrály. Software je vyvíjený pouze vývojovým týmem. Jediné způsoby, kterými mohou lidé k vývoji softwaru přispívat jsou dary, překlady do nových jazyků a hlášení chyb. Projekt funguje už skoro osm let, jeho vývoj je však velmi pomalý. V seznamu nových požadavků pro příští verze softwaru se nachází neustále velké množství požadavků pro jeho vylepšení. I přesto, že se projekt vyvíjí tak pomalu a není zcela dokonalý, má své příznivce. Proto si myslím, že by větší otevření komunitě projektu velmi pomohlo a tempo vývoje by se zrychlilo.
▪ 39 ▪
Openbravo POS se naopak snaží být komunitě co nejotevřenější. Lidem je umožněno se podílet na vývoji softwaru, testování jeho funkčností, tvorbě dokumentace či překladech do různých světových jazyků. Na domovské stránce tohoto projektu je možné zveřejňovat kusy kódu, které usnadňují používání aplikace pro ostatní uživatele. I přesto, že se může podílet velký počet uživatelů na velkém množství aktivit, v projektu nedochází k problémům, zmatku nebo nedorozuměním. U každé aktivity je jasně daný návod a postup, který umožňuje příspěvky komunity řídit a kontrolovat. Popsání všech postupů a návodů, kontrola všech příspěvků uživatelů byla jistě náročná, nyní z toho ale již projekt těží. Jako příklad můžu uvést, že příští verze OpenBravo POS má jako jeden ze tří hlavních cílů, kromě přidání hardwarové podpory dalších zařízení a vylepšení integrace, zapracování funkcionality z komunitních projektů. To znamená, že už novou funkcionalitu sami autoři skoro nevyvíjí, jen zapracují funkčnost napsanou komunitou. Existuje přes 30 komunitních projektů tvořící nové jazykové verze pro OpenBravo POS, některé software dokonce přizpůsobují tak, aby vyhovoval daňovým a zákonem stanoveným specifikám dané země. Při testování open source softwaru jsem získal mnoho zkušeností a mohu jedině souhlasit s Ericem Raymondem, který popisuje model bazaru jako nejlepší model vývoje open source softwaru. Většina open source projektů se bohužel nedostane ani do fáze, kdy může komunitu zaujmout a následně ji zapojit. Některé projekty zase jen neumí využít příležitostí, které jim komunita nabízí. Z mých zkušeností při testování různých typů open source softwaru však mohu říci, že čím více je do projektu komunita zapojena, tím je výsledný software kvalitnější.
▪ 40 ▪
10. CONCLUSION In conclusion of my thesis I will summarize all the relevant information and appraise the results of testing of open source software for small businesses. It is definitely possible to equip the computer of an average user only by open source software and we can see that in popular Linux distributions. What I was looking for, was an answer for not that obvious question. The question was: Is is possible to equip the computer of an owner of a small hotel, with only open source software, that will also help him with his business. Most of the most popular software has its commercial and open source versions. Will I find open source version of software for hotel management, accounting or point-of-sale software? I came to conclusion that it is possible to find open source software, which can cover all the needs of a small business. In every area I specified I found at least one software, which met all the requirements. In my solution I would use Linux distribution Ubuntu as an operation system. Ubuntu is user-friendly and even people, who are not familiar with Linux can work with it quite easily. As a hotel management software I would choose Php-residence. It provides fully functional hotel management and also provides templates which a businessman can put on his web pages to provide users with additional functionality. I would deploy Openbravo POS software in hotel restaurant. It can work as both a point-of-sale software and a warehouse management software. That is a great advantage for us, because when we sell a product, warehouse management already knows that and it can lower the balance of that product in the warehouse automatically. I would use Gnucash for the accounting. It offers good basic functionality for double accounting, but also supports some business features. For writing and reading documents the businessman can use office suite OpenOffice.org. All these applications are very active projects, which are constantly evolving and improving. We can see the differences between development strategies and its success even on such a small number of projects. Some of them has gone with the way of a cathedral development style, others develop their application with bazaar style. Php-residence software is developed in a typical cathedral-style. The application is developed only by a developer's team. The only way, how users can contribute to the project is by donation, by translating to different languages and by reporting bugs. The project is eight years old, but the development pace is very slow. The TO-DO list for the next versions is very long. The project despite its flaws has its users and they would be glad to help and to speed up the development process. I think that opening up to the community would be a great help for the project.
▪ 41 ▪
Openbravo POS on the other hand tries to stay as much open to the community as possible. Users can participate in the development, they can test application, they can write documentation or translate application and documents to different languages. On the homepage of project you can publish code snippets, which can help other users. Even though there are many people participating and contributing to the projects, you don't see problems, chaos or misunderstanding very often. Every activity has guides, which must be obeyed and they help to control and manage the contributions of the community. Writing all these guides and managing the contributions is a hard work, but it has payed off. For example the main goals of the next version of OpenBravo POS are: adding hardware support to some new device, better integration with other OpenBravo software, adding functionality from community projects to the main branch. So the application is in state that the developers don't really develop new functionality, the community does. There are more than 30 community projects, which make new language mutations of OpenBravo POS. In these mutations developers often change the source code, so the application corresponds to the local laws and taxes. I learned a lot about open source software during my testing. I must agree with Eric Raymond, who describes the bazaar style development as superior to all other ways of developing open source software. Unfortunately most open source projects end before they get to the state, when they can appeal to the community and get people to join the project. Some projects have the community around itself, but can't take the opportunity it provides. From my experience from testing many different open source softwares, I can say that the more the community contributes to the project the better the project is.
▪ 42 ▪
11. SEZNAM POUŽITÉ LITERATURY 1. DIBONA, Chris; OCKMAN, Sam. The Voices from the Open Source Revolution. : O'Reilly Media, 1999. 288 s. Dostupné z WWW:
2. GOLDMAN, Ron; GABRIEL, Richard P. Innovation Happens Elsewhere: Open Source as Business Strategy. [s.l.] : Morgan Kaufmann, 2005. 424 s. Dostupné z WWW: . 3. FOGEL, Karel. Producing Open Source Software: How to Run a Successful Free Software Project. [s.l.] : O'Reilly Media, 2005. 304 s. Dostupné z WWW: . 4. RAYMOND, Eric S. The Cathedral and the Bazaar. 1997. [cit. 2010-05-04] Dostupné z WWW: . 5. ŠTĚDROŇ, Bohumír. Open Source software ve veřejné správě a soukromém sektoru. [s.l.] : Grada, 2009. 124 s. 6. RAYMOND, Eric . Eric S. Raymond's Home Page [online]. 1998 [cit. 2010-05-04]. The Halloween Documents. Dostupné z WWW: . 7. Distrowatch.com [online]. 2010 [cit. 2010-05-04]. Hodnocení návštěvnosti. Dostupné z WWW: <www.distrowatch.com>. 8. SourceForge.net [online]. 2010 [cit. 2010-05-04]. Rozdělení podle licencí. Dostupné z WWW: . 9. TORVALDS, Linus. School of Computer Science [online]. 1992 [cit. 2010-05-04]. LINUX's History. Dostupné z WWW: 10. Open Source Initiative [online]. 1999 [cit. 2010-05-04]. The Open Source Definition. Dostupné z WWW: . 11. Free Software Magazine [online]. 2000 [cit. 2010-05-04]. Impossible thing #1: Debian GNU/Linux. Dostupné z WWW: .
▪ 43 ▪
12. SEZNAM POUŽITÝCH SYMBOLŮ A ZKRATEK Zkratka
Popisek
ERP
Enterprise Resource Planning
XML
eXtensible Markup Language
PHP
Hypertext Preprocessor
UI
User Interface
POS
Point of Sale
CMS
Content Management System
GNU
GNU's Not Unix
ODF
Open Document Format
GPL
General Public Licence
HTML
Hyper Text Markup Language
DVD
Digital Versatile Disc
ISO
International Organization for Standardization
CSS
Cascading Style Sheet
KDE
K Desktop Environment
GNOME
Gnu Network Object Model Environment
MINIX
MINimimal unIX
▪ 44 ▪
13. SEZNAM OBRÁZKŮ Ilustrace 1: Php-residence - tabulka rezervací......................................................................23 Ilustrace 2: FGMP Hotel Management - vytvoření rezervace.............................................24 Ilustrace 3: Floreant POS - seznam lístků............................................................................28 Ilustrace 4: Openbravo POS - hlavní obrazovka..................................................................30 Ilustrace 5: Simple Inventory System - zadání nákupu zboží..............................................32 Ilustrace 6: OpenBravo POS - úprava množství zboží ve skladu.........................................34 Ilustrace 7: Gnucash - hlavní obrazovka s účty....................................................................36 Ilustrace 8: JGnash - hlavní obrazovka s účty......................................................................37
▪ 45 ▪
14. SEZNAM TABULEK Tabulka 1: Obdobné aplikace v Microsoft Office a OpenOffice.org...................................38
▪ 46 ▪