Świat szeroko otwarty

Kupować oprogramowanie aplikacyjne czy budować od podstaw? Wysokie ceny i koszty utrzymania pakietu komercyjnego, a także kontrakty serwisowe nie zachęcają. Z kolei projektowanie aplikacji od podstaw może być przedsięwzięciem zbyt trudnym, obciążonym dużym ryzykiem niepowodzenia. Przed podjęciem strategicznej decyzji warto rozważyć trzecie wyjście: oprogramowanie open source.

Kupować oprogramowanie aplikacyjne czy budować od podstaw? Wysokie ceny i koszty utrzymania pakietu komercyjnego, a także kontrakty serwisowe nie zachęcają. Z kolei projektowanie aplikacji od podstaw może być przedsięwzięciem zbyt trudnym, obciążonym dużym ryzykiem niepowodzenia. Przed podjęciem strategicznej decyzji warto rozważyć trzecie wyjście: oprogramowanie open source.

Połączenie bezpłatnego dostępu do kodu źródłowego i ogólnoświatowa społeczność programistów to atuty nie do przecenienia. W dodatku dostajemy możliwość startu z dojrzałym kodem bazowym, do którego można dodawać coraz to nowe rozszerzenia związane z rozwojem biznesu.

Nie są dzisiaj rzadkością opinie, że przejście na krytyczne aplikacje open source będzie miało większe znaczenie niż wybór systemu operacyjnego o otwartym kodzie źródłowym. Forrester Research prognozuje, że w ciągu kilku następnych lat coraz więcej firm będzie decydować się na aplikacje open source nie tylko z powodu kosztów, ale także mniejszych kłopotów niż z oprogramowaniem firmowym.

Firmy i organizacje stosujące aplikacje open source uzasadniają ich użycie większą elastycznością, niższymi kosztami i możliwością uzyskania większej kontroli nad takim oprogramowaniem.

Do niedawna jednak oferta open source była ograniczona. Poza Linuksem, serwerem webowym Apache i kilkoma serwerami baz danych, a także asortymentem narzędzi programistycznych, społeczność open source nie miała zbyt wiele do zaoferowania w kategorii oprogramowania dla biznesu. Powstały fundamenty, ale brakowało pełnokrwistych aplikacji.

Sytuacja się jednak zmienia. Dzisiaj istnieje już bogaty wybór oprogramowania biznesowego open source - od CRM do zarządzania zawartością, portali i RFID.

Droga do open source

Pomimo entuzjazmu, jaki przejawiają dostawcy i zwolennicy oprogramowania open source, pomyślne jego wdrożenie nie jest gwarantowane. Jak zwiększyć prawdopodobieństwo sukcesu? Oto zalecenia specjalistów.

Dobry plan na początek. Chociaż oprogramowanie open source może być szybko sprowadzone i zainstalowane, specjaliści zalecają, aby przy wdrażaniu tego typu oprogramowania postępować tak jak z aplikacjami komercyjnymi. Oznacza to dokładne planowanie wdrożeń i określenie długoterminowej strategii integracji, wparcia i kosztów laboratoryjnych.

Dobre wsparcie. Należy poszukiwać profesjonalnych usług serwisowych i przed zastosowaniem produktu open source upewnić się, że takowe są łatwo osiągalne.

Dokładne rozpoznanie modelu licencji. Open source nie jest synonimem słów "bezpłatne" czy "bez ograniczeń". W ramach open source funkcjonuje bardzo wiele modeli licencji (zob. ramka "Licencje na każdą okazję"), zarówno zarejestrowanych w Open Source Initiative (OSI), jak i własnych, często nawet komercyjnych. OSI udostępnia listę kilkudziesięciu modeli licencyjnych, obejmujących również najbardziej popularne: GPL (General Public License) i MPL (Mozilla Public License). GPL dopuszcza np. nieograniczone bezpłatne użytkowanie, modyfikacje i redystrybucję kodu źródłowego, ale narzuca ograniczenia, takie jak zakaz pobierania opłat licencyjnych za redystrybuowany kod.

Kod źródłowy. Jedną z największych korzyści z open source jest dostęp do kodu źródłowego. Są tu jednak dwa warunki: po pierwsze, zespół IT musi mieć doświadczenie w pisaniu skryptów i wykonywaniu prac programistycznych; po drugie, musi ponosić pełną odpowiedzialność za to, aby przerobiony kod spełniał oczekiwania użytkowników.

Łączenie kodów. Różnice w kodzie open source pochodzącym od różnych deweloperów mogą stwarzać trudności w szybkiej adaptacji i integracji pełnego stosu open source. Jedną z metod uniknięcia takich komplikacji jest posługiwanie się modelem LAMP, zintegrowanym stosem obejmującym Linux, Apache, MySQL i języki Perl, PHP lub Phython.

Bezpieczeństwo. Zwolennicy open source twierdzą, że technologia ta jest bardziej bezpieczna niż oferty komercyjne, pamiętać jednak należy, że oprogramowanie open source zawiera w sobie elementy "wolontariatu". Projektanci open source nie są tak motywowani jak dostawcy komercyjni do ogłaszania raportów o pluskwach i lukach w oprogramowaniu. Konserwatorzy open source bardzo różnią się między sobą pod względem szybkości i jakości reakcji na błędy oprogramowania. Oprogramowanie open source przechodzi wystarczająco dobre testy bezpieczeństwa, tak jak większość komercyjnych produktów. Warto jednak przedsięwziąć dodatkowe środki zapewniające jego bezpieczeństwo w sieci. Na początek należy zdecydować się na jedną z dystrybucji open source. Powinien też być zastosowany proces zarządzania wydaniami oprogramowania.

Nie należy się więc łudzić, że wdrażanie open source jest bezproblemowe. Nadal trzeba brać pod uwagę kontrakty serwisowe, a sprawy licencyjne mogą prowadzić do istotnych problemów. Niemniej jednak dzisiaj bardziej niż kiedykolwiek można podchodzić do open source z większym zaufaniem - pod warunkiem, że dobrze zna się jego opcje.

Przegląd aplikacji open source

Prezentowany przegląd aplikacji jest krótkim przewodnikiem po oprogramowaniu open source dla przedsiębiorstw. Nie jest to oczywiście lista ani kompletna, ani referencyjna - nowe oprogramowanie open source pojawia się każdego dnia. Pozwala jednak zorientować się w potencjalnych możliwościach i wybrać coś, co pomoże osiągnąć stawiany cel przy minimalnych kosztach i bez większych problemów.

Prezentujemy przykłady rozwiązań aplikacyjnych w dwunastu kategoriach, obejmujące zarówno projekty zrealizowane, jak i będące w trakcie realizacji.

Inteligencja biznesowa (BI)

Używanie komercyjnego oprogramowania BI (Business Intelligence) kojarzy się z dość znacznymi wydatkami. Logicznym tego następstwem jest więc rozwój prac nad BI w ramach open source. Pierwszą próbę podjęła Eclipse Foundation, która uczyniła BI jednym z siedmiu głównych projektów. W czerwcu 2005 r. Fundacja wydała wersję 1.0 Business Intelligence and Raporting Tools (BIRT) w ramach własnej Eclipse Licence (zatwierdzonej przez OSI).

BIRT to przede wszystkim system raportowania dla aplikacji webowych opartych na Javie. Składa się z dwóch części. Pierwszą są komponenty run-time na serwerze aplikacyjnym. Drugą kreator raportów, który jest dostarczany jako złącze programowe do Eclipse, zapewniające łatwą edycje typu WYSIWYG i paletę standardowych pozycji raportów. Pakiet wykorzystuje strukturę o nazwie Open Data Access, która zapewnia dużą elastyczność w wyborze źródeł danych. Dostępne jest profesjonalne wsparcie i szkolenia w zakresie tej technologii.

Inną organizacją, która zajęła się projektowaniem kompletnej platformy BI open source - obejmującej raporty, analizy, eksplorację danych i narzędzia przepływu zadań, jest Pentaho. Architektura serwera głównego projektu jest oparta na J2EE i towarzyszącym środowisku klienckim, które (podobnie jak BIRT) ma wykorzystywać Eclipse. Projektanci podjęli trud zawarcia w tej platformie nowoczesnych technologii, takich jak definicje XML dla całej zawartości i interfejsy web services dla komponentów analitycznych. Udostępnienie projektów planowano na koniec roku 2005, na zasadach licencji LGPL. Wydaje się, że platforma może stać się poważnym konkurentem na rynku BI.

Zarządzanie procesami biznesowymi (BPM)

Pewna liczba projektów open source dotyczy zestawów do zarządzania procesami biznesowymi (BPM - Business Process Management). Wraz z rozwojem SOA zwiększa się zapotrzebowanie ma motory open source procesów biznesowych do zarządzania i aranżacji różnorodnych usług.

Apache Software Foundation zajmuje się projektem Agila, opartym na kodzie wyjściowym przekazanym przez Gluecode w październiku 2004 r. Jest to zagnieżdżany motor BPM, dostosowany do obu platform: J2EE i J2ME. Projekt jest w fazie inkubacji i żadne elementy nie są dostępne publicznie.

Po nabyciu motoru workflow open source o nazwie jBPM również JBoss przenosi swoje doświadczenia w projektowaniu Java na BPM. jBPM może pracować jako samodzielna aplikacja lub jako komponent zagnieżdżony w innej aplikacji. Kod jBPM jest już dostępny na warunkach licencji LGPL. Poza samym motorem jBPM zawiera graficzny kreator procesów do tworzenia przepływu zadań. Przyszłe plany obejmują wbudowanie wsparcia BPEL (Business Process Execution Language) oraz - w dalszej perspektywie - rozszerzenie w kierunku pełnej magistrali ESB (Enterprise Service Bus).

Istnieje też pewna liczba mniejszych projektów, jednak ich stan jest często trudny do ustalenia. Zarządzanie procesami biznesowymi jest problemem złożonym, wymagającym specjalistycznej wiedzy. Jeżeli poszukuje się alternatywy open source w tej kategorii, to bezpieczniej postawić na projekty wywodzące się z profesjonalnych organizacji zasilanych finansowo i wyspecjalizowanych, jak Apache lub JBoss.


TOP 200