W jednolitości siła

Jeśli chodzi o problemy informatyczne, sytuacja większości naszych firm jest komfortowa w porównaniu z wieloma dużymi przedsiębiorstwami i organizacjami za granicą. Większość firm zachodnich jest dobrze zinformatyzowana już od wielu lat. Przykładowo we Francji na wyposażeniu przedsiębiorstw jest ponad 15 tys. dużych komputerów typu mainframe, podczas gdy w Polsce może udałoby się (z najwyższym trudem) doliczyć setki mainframe'ów.

Jeśli chodzi o problemy informatyczne, sytuacja większości naszych firm jest komfortowa w porównaniu z wieloma dużymi przedsiębiorstwami i organizacjami za granicą. Większość firm zachodnich jest dobrze zinformatyzowana już od wielu lat. Przykładowo we Francji na wyposażeniu przedsiębiorstw jest ponad 15 tys. dużych komputerów typu mainframe, podczas gdy w Polsce może udałoby się (z najwyższym trudem) doliczyć setki mainframe'ów.

Czytelnik ma prawo zapytać co jest dobrego w tym, że w Polsce nie ma komputerów. Oczywiście źle jest jeśli nie ma komputerów w ogóle, bo ostatecznie to informatyka jest siłą napędową wielu działań technicznych i rynkowych poprawiając konkurencyjność wyrobów oraz pozycję rynkową firmy a w efekcie warunki życia ludzi.

Marnowanie wysiłku

Popatrzmy co się dzieje w świecie informatyki zdominowanym przez przestarzałe technologie: dwudziestoletnie komputery obsługują w najlepsze aplikacje napisane na początku lat 70. Dane w nich zgromadzone stają się coraz trudniej dostępne dla współczesnych użytkowników nowych aplikacji dla użytkownika indywidualnego, baz danych na biurko czy arkusza obliczeniowego. Użytkownik woli opracować sobie bazę danych dla własnych potrzeb niż zastanawiać się, w jaki sposób uzyskać dane z kolosa w szklanej klatce. W efekcie powiela się te same dane, tworzy niespójne systemy informacyjne, marnuje wysiłek oraz zasoby ludzkie i sprzętowe na wykonywanie pracy już raz zrobionej.

Informatycy w tych przedsiębiorstwach stają "na głowie", aby umożliwić użytkownikom współczesnych aplikacji na biurko dostęp do dawnych danych. Tworzą w tym celu skomplikowane systemy oprogramowania, umożliwiające komunikację z wieloma różnymi komputerami i systemami obsługi danych, współpracujące z wieloma protokołami komunikacyjnymi i sieciami (których też namnożyło się nie wiadomo kiedy). I znów marnuje się wysiłek ludzki i duże pieniądze, aby nie zmarnować cennych danych.

Middleware

Tak zwana pośrednia warstwa oprogramowania (middleware) ma służyć do tego, aby udostępnić dane z dawnych (i nowszych) systemów w niejednorodnym środowisku sprzętowym użytkownikowi indywidualnemu i zapewnić pożywkę nowym aplikacjom. Istnieje wiele różnych metod komunikowania się systemów komputerowych za pośrednictwem zdalnego wywołania procedur (Remote Procedure Call - RPC) czy kolejkowania komunikatów (Message Queueing) oraz produktów związanych z tymi technikami. Wszystkie mają zasadniczą wadę: dokładają niepotrzebnych komplikacji do i tak już skomplikowanego środowiska (wiele nowych funkcji API) oraz powodują zmniejszenie wydajności sieci, serwerów baz danych czy nawet samego komputera na biurko - nośnika części klienta

aplikacji.

Pewne próby wprowadzenia porządku podjęto w ramach środowisk Distributed Computing Environment (DCE) i Common Object Broker Architecture (CORBA). Umożliwiają one tworzenie środowisk przetwarzania rozproszonego dla niejednorodnych komputerów, systemów operacyjnych i . Ponieważ jednak zarówno DCE, jak i CORBA są to skomplikowane pakiety oprogramowania (podobno całe środowisko DCE wymagało opracowania ponad 10 mln linii kodu w języku C), wnoszą wiele dodatkowego obciążenia i wymagają potężnych komputerów do obsługi. Ponadto są to rozwiązania dla firm, które borykają się raczej z nadmiarem informatyki, niż z jej brakiem.

Dążyć do jednorodności

Dochodzimy do uzasadnienia tezy, że czasem brak informatyki jest lepszy niż jej nadmiar. Jeżeli w naszych przedsiębiorstwach, instytucjach rządowych i organizacjach brak jest kompleksowych systemów informacyjnych, to stwarza im to szansę opracowania aplikacji na miarę ich potrzeb obecnych i przyszłych, współczesnych możliwości technicznych oraz technologicznych, bez zajmowania się przestarzałymi komputerami, aplikacjami opracowanymi ćwierć wieku temu i danymi, których na szczęście (lub nieszczęście) nie ma.

Trzeba jednak uczyć się na cudzych błędach i nie tworzyć niejednorodnych środowisk sprzętowych, systemowych i aplikacyjnych, z którymi trzeba będzie za kilka lat borykać się tak samo, jak obecnie borykają się ci, co odziedziczyli informatykę z lat 70.

To prawda, że jeden producent oferuje lepszy kawałek sprzętu niż inny producent, lepszą realizację protokołu TCP/IP albo lepsze narzędzia do opracowania aplikacji. Jeżeli jednak zamierzamy uniknąć kłopotów z komunikacją, niezgodnością protokołu TCP/IP z używaną bazą czy koniecznością ręcznego kodowania aplikacji, to lepiej zdajmy się na możliwie najmniejszą liczbę producentów i dostawców.

Znam przypadek przedsiębiorstwa, które za duże pieniądze przeszkoliło swych specjalistów w zakupionym na początku projektu systemie CASE, opracowało znakomite diagramy dla aplikacji i przekonało się po niewczasie, że prawie cała praca poszła na marne, bo zakupiona znacznie później baza i towarzyszące jej narzędzia wysokiego poziomu nie są w stanie przejąć wyników wcześniejszych prac.

Taniej nie znaczy lepiej

Istnieje takie powiedzenie, że biednego nie stać na kupowanie tanio. Ma to szczególnie duże zastosowanie w informatyce. Solidne firmy są dlatego drogie, że oferują kompleksowe rozwiązania problemów informacyjnych i nie zostawiają klienta na lodzie z rozgrzebaną, nie dokończoną aplikacją czy niejednolitym zbiorowiskiem sprzętu "od sasa do lasa".

Proszę spojrzeć co dzieje się w naszej telekomunikacji. Z powodu zapóźnień technicznych w latach 70. mamy (prawie) najlepsze w Europie rozwiązania techniczne. Korzystajmy z szansy i twórzmy systemy informatyczne na miarę naszych czasów.