Zalety stosowania otwartych źródeł

Oprogramowanie otwarte (open source software OSS) należy do innej kategorii niż oprogramowanie darmowe (free software) i może stanowić cenną część systemu produkcyjnego. Darmowe oprogramowanie niekoniecznie jest tanie ? wymaga dokładnego rozważenia kosztów rzeczywistych, praw własności oraz standardów korporacyjnych. Ponadto darmowe ? niekoniecznie musi oznaczać otwarte i vice versa. Oprogramowanie otwarte najczęściej jest rozpowszechniane na zasadach publicznej licencji GNU (GPL; www.gnu.org), co daje użytkownikowi pełne prawa do posługiwania się programem. GPL precyzuje, że program może być używany w dowolnym celu, rozdawany za darmo lub sprzedawany z zyskiem. Pozwala to na stosowanie OSS w obrębie aplikacji bez martwienia się o prawa własności. W rzeczywistości wielu sprzedawców oferujących swoje produkty wytwórcom używa elementów OSS, takich jak serwer sieciowy Apache oraz biblioteki Java.

OSS to dobra alternatywa, kiedy standardowe systemy komercyjne nie są w stanie spełnić oczekiwań użytkownika. Oprogramowanie komercyjne dobrze się sprawdza w zapewnianiu głównych funkcji systemów sterujących, ale nierzadko słabo obsługuje funkcje peryferyjne, takie jak zarządzanie kwalifikowaniem (produktów) czy zarządzanie możliwościami platformy sprzętowej, a także zarządzanie: dokumentacją, informacjami, testowaniem sprzętu oraz procedurami weryfikacji zgodności.

OSS jest najbardziej skuteczne, gdy wymagania są niewielkie, a oprogramowanie komercyjne zbyt drogie. Kiedy potrzebny jest stosunkowo skromny system, rozwiązanie OSS można oprzeć na serwerze LAMP. LAMP to skrót utworzony z pierwszych liter systemu operacyjnego Linux (www.linux. org), serwera sieci Apache (www.apache.org), bazy danych MySQL (www.mysql.com) oraz języka skryptowego Python (www.python.org).

Serwery LAMP są powszechnie stosowane z OSS dla aplikacji nastawionych na obsługę baz danych lub dla aplikacji o ograniczonych wymaganiach dotyczących czasu rzeczywistego. Serwery LAMP są solidne, często szybsze niż oprogramowanie komercyjne na takiej samej platformie i mniej podatne na ataki niż systemy Microsoft czy Oracle. Można je łączyć z maszynami klientami opartymi na rozwiązaniach LOM (LOM to skrót od pierwszych liter Linux, OpenOffice i Mozilla). OpenOffice (www.openoffice.org) zapewnia wsparcie edycji tekstów oraz arkuszy kalkulacyjnych, a Mozilla (www.mozilla.org) to przeglądarka internetowa. System LOM będzie pracował na niemal dowolnej platformie sprzętowej. Może on stanowić szczególnie wydajne kosztowo rozwiązanie, jeśli potrzebna jest duża liczba prostych stacji z wyświetlaczami, wymagających jedynie dostępu do przeglądarki, wyświetlania dokumentów oraz arkuszy kalkulacyjnych do wykonywania obliczeń.

Jeśli sprzedawcy nie są w stanie spełnić jakichś wymagań, bo potrzebne jest konstruowanie rozbudowanych rozwiązań, OSS również może okazać się wydajnym pod względem kosztów rozwiązaniem. Jeśli potrzebna jest integracja ze środowiskiem Microsoft .Net, ale nie można sobie pozwolić na poniesienie kosztu związanego z rozbudową takiego środowiska na zasadach komercyjnych, wtedy należy rozważyć zastosowanie Mono (www.go-mono.com). Mono to rozwiązanie otwarte służące do tworzenia darmowego wdrażania .Net Development Framework. Jeśli istnieje potrzeba przetestowania kodu .Net, wtedy najlepiej sprawdzić NUnit (www.nunit.org), gdzie łatwo znaleźć strukturę do testowania języków .Net. Innymi, przydatnymi narzędziami mogą okazać się: ArgoUML (argouml.tigris.org) służący do projektowania elementów pomocniczych, Bugzilla (www.bugzilla.org) do monitorowania defektów, CVS (www.cvshome.org) do weryfikacji zgodności wersji, PRCS (prcs.sourceforge.net) do graficznego interfejsu kontroli zgodności CVS oraz ReadySet (readyset.tigris.org) do zarządzania projektem. Rozwiązania OSS były szeroko testowane przez wielu użytkowników w różnych środowiskach, więc korzystając z rozwiązań OSS, należy rozważyć wniesienie własnego wkładu do społeczności OSS. Można podzielić się swoimi osiągnięciami, zgłaszając je środowisku ?open source?, aby inni mogli z nich skorzystać.

Dennis Brandl jest prezesem firmy consultingowej, która zajmuje się rozwiązaniami informatycznymi dla produkcji.