Dwanaście dobrych rad

Kanadyjski przemysł wydobywczy był jednym z pierwszych użytkowników systemów klient/serwer i GUI. Poczynając od późnych lat 80., w odpowiedzi na wzrastającą konkuręcję w sektorze źródeł energii, firmy z Calgary rozpoczęły walkę o rynek. Gdy ceny gazu ziemnego i ropy spaday, sygnał dla specjalistów ds. informacji był oczywisty: "Trzeba zintensyfikować dziłania, obniżając jednocześnie koszty. I to natychmiast". Pomimo dostateku dostępnych w mieście mainfraime'ów, specjaliści ds. informacji firm wydobywczych skoncentrowali swą uwagę na systemach klient/serwer i GUI, często łącząc komputery PC wyposażone w system Windows z serwerami Unixa.

Kanadyjski przemysł wydobywczy był jednym z pierwszych użytkowników systemów klient/serwer i GUI. Poczynając od późnych lat 80., w odpowiedzi na wzrastającą konkuręcję w sektorze źródeł energii, firmy z Calgary rozpoczęły walkę o rynek. Gdy ceny gazu ziemnego i ropy spaday, sygnał dla specjalistów ds. informacji był oczywisty: "Trzeba zintensyfikować dziłania, obniżając jednocześnie koszty. I to natychmiast". Pomimo dostateku dostępnych w mieście mainfraime'ów, specjaliści ds. informacji firm wydobywczych skoncentrowali swą uwagę na systemach klient/serwer i GUI, często łącząc komputery PC wyposażone w system Windows z serwerami Unixa.

Po trzech, czterech latach prac, zgromadzono wiele interesująych spostrzeżeń. Obecnie wielu starszych specjalistów ds. informacji z Calgary, dzieli się swymi doświadczeniami. Ich rady mogą być szczególnie przydatne dla tych firm, które jeszcze mają przed sobą wprowadzenie systemów klient/serwer.

Rada 1

Magiczne rozwiązania nie istnieją.

Ani systemy klient/serwer ani technologie GUI nie są magicznymi rozwiązaniami dla rozwoju systemów. Nie były nimi też: technologia CASE, 4GL czy programowanie obiektowe. Dla nikogo nie powinno to być zaskoczeniem.

"Jesteśmy w tym biznesie zbyt długo by wierzyć w złote jajka" - powiedział Tom Moen kierownik ds. technologii informacji w dziale marketingu Wascana Energy Inc.

Tylko ludzie cierpliwi, mający solidny plan i rozsadne oczekiwania moga stworzyć efektywnie działający system, o jakim nikt nie mógł jeszcze kilka lat temu marzyć.

Rada 2

Zapomnij ile wydałeś na mainframe.

"W naszym wypadku zaadaptowanie systemu klient/serwer było po prostu sprawą ekonomii" - stwierdza Grace Evans kierownik ds. rozwoju systemu w Amoco Canada Petroleum Company Ltd.

Dodaje, iż biznesmeni wahają się przed wprowadzeniem systemów klient/serwer ponieważ zazwyczaj wiele już zainwestowali w starsze technologie.

"Zapamiętaj podstawową zasadę: nie myśl o utopionym kapitale" - twierdzi. - "Zastanów się jak dużo kosztować cię będzie przeniesienie nowych systemów na platformę klient/serwer i porównaj to z powiększającymi się kosztami pracy na mainframie. Nasze nowe zintegrowane systemy obsługi dostaw gazu ziemnego przynoszą nam zyski rzędu 10 mln USD rocznie. Koszty nowego wyposażenia były minimalne w stosunku do rocznych opłat za korzystanie z mainframu. Teraz możemy je w ogóle wyeliminować."

Mimo to, wszyscy zgadzają się, że przejście na platformę klient/serwer nie jest tanie. Colin Card doradca techniczny w Gulf Canada Resourses radzi: "Nie popełniajcie błędów, system klient/serwer będzie kosztować was więcej niż się spodziewacie. Bądźcie przygotowani na ciężką naukę w trakcie jego wprowadzania".

On sam zna to wszystko dobrze. Gulf pracuje z systemami klient/serwer od czasu, gdy przenieśli swego Univaca w stan spoczynku w 1987 r.

Steve Wyatt, menedżer systemów informacyjnych w PanCanadian Peetroleum Ltd patrzy w inny sposób na koszty i zyski płynące z tych technologii.

"Przyzwyczailiśmy się budować aplikacje mainframe'owe, które robią niewiele więcej ponad przechowywanie i wyszukiwanie informacji pomocnych w podstawowych procesach pracy urzędniczej. Aplikacje jakie budujemy obecnie mają więcej elementów strategicznych. Oczywiście nie w pełni strategicznych, lecz zaczynamy dostarczać podstawowe procesy biurowe. Sądzę, że to właśnie systemy klient/serwer umożliwiły tę zmianę" - konkluduje. "Jest to jedyne wytłumaczenie dla kosztów i wysiłku jaki tutaj ponosimy".

Niezależnie od korzyści wszyscy zgadzają się, iż projekty klient/serwer nie powinny być oceniane jedynie w kategoriach oszczędności kosztów. Istnieją oczywiste dowody, że nowe systemy są na wiele sposobów lepsze od swych poprzedników. Wielokrotnie tańsze, przynoszą także korzyści w innych dziedzinach.

Rada 3

System klient/serwer zmusza do zbliżenia się do użytkownika.

"Zmusza całą organizację do lepszego zapoznania się z technologiami komputerowymi... do poznawania ich mozliwości i ograniczeń" - stwierdza Wyatt.

Od czasu wprowadzenia tych systemów na mikrokomputery, specjaliści ds. informacji i użytkownicy muszą nawzajem dobrze się rozumieć.

"Mikrokomputer użytkownika jest jak opona testująca nawierzchnię" - informuje Vikki Wellwood, kierownik działu projektów w Canadian Hunter Exploration. - "Kiedy użytkownicy opowiadają co chca zobaczyć na swoich komputerach PC, nie możesz od razu im pomóc, ale dużo lepiej poznajesz ich potrzeby."

Specjaliści ds. informacji widzą w tym wzajemne korzyści. Poprzez wspólną pracę ze specjalistami wdrażającymi system "klienci zaczynają doceniać złożoność struktur danych jakie niezbędne są do wspomagania aplikacji jakich żądają" - mówi Wyatt. "Doceniają też ludzi, którzy mają im to wszystko stworzyć".

Rada 4

System klient/serwer nie jest specjalnie dobry bez środowiska GUI.

Mimo, iż technologie te nie są bezpośrednio powiązane, projekty klient/serwer w Calgary niemal zawsze zawierają w sobie GUI - najczęściej Windows.

"Użytkownicy nie interesują się systemem klient/serwer" - stwierdza Wellwood - "Oni chcą tylko natychmiastowych odpowiedzi i łatwego dostępu. Jeśli wasze opowieści o problemie z przesyłaniem informacji w sieci spotkają się z niezrozumieniem użytkownika, bądźcie pewni iż odpowiedź uzyskacie wówczas, gdy powiecie im co to znaczy dla ich komputerów PC... Dla użytkownika głównym zagadnieniem w technologii klient/serwer jest natychmiastowy dostęp i interfejs - głównie interfejs".

Card zgadza się z tym - "użytkownicy widzą bezpośrednie korzyści z GUI i prawdopodobnie nie widzą potrzeby zajmowania się technologią, dzięki której to wszystko jest możliwe". - Po chwili myślenia dodaje - "oczywiście dopóki nie zaczyna się "czkawka" w sieci".

Tak czy inaczej to właśnie klienci doprowadzają do powstawania systemów klient/serwer niezmiennie wyposażonych w środowisko Windows. Oskarżajmy Microsoft - to przecież szerokie rozpowszechnienie i akceptacja Windows wypuściło tego dżina z butelki.

"Spójrz!" - elokwentnie mogliby powiedzieć użytkownicy. - "Mam procesor tekstów i arkusz kalkulacyjny w środowisku Windows. Używam ich cały czas. Mogę przejść się po sklepach i kupić software dla Windows wykonujący prawie każde zadanie. Dlaczego nie możecie zbudować mojej aplikacji w Windows?"

Wyatt opowiada - "masowy rozwój pakietów aplikacji GUI/klient/serwer dla przemysłu energetycznego spowodował, iż nasi użytkownicy wymagają coraz więcej i racja jest po ich stronie... oni po prostu nie zaakceptują aplikacji specjalistów bazującej na terminalu 3270, gdy mogą nabyć takie, które działają na komputerach PC i stacjach roboczych".

Jest oczywiście i mroczna strona zbratania się użytkowników z technologią. "Mimo tego, iż są oni coraz lepiej zaznajomieni z tymi technicznymi rozwiązaniami które mogą nabyć" - stwierdza Wyatt, - "ich zrozumienie dla problemów zarządzania źródłami danych w tej technologi nie jest duże. Nie wierzę w to, iż nie rozumieją, jak skomplikowane dla nas jest zarządzanie danymi rozprzestrzeniającymi się między sieciowymi serwerami i mainframe'ami".

Rada 5

Nie ma zbyt wielu rzeczy niemożliwych dla systemów klient/serwer.

Dowodzono, że zwykłe aplikacje nie są zbyt odpowiednie dla technologii klient/serwer.

"Często słyszymy, że mainframe jest bardziej odpowiedni dla dużych aplikacji zorientowanych na transakcje" - stwierdza Evans. Sama nie zgadza się z tym poglądem.

"Wcale nie jest tak, iż system klient/serwer jest słabszy do tego typu aplikacji. To nasz stosunek do tego problemu jest nieodpowiedni".

Evans opowiada - "gdy mówimy, że zwykła aplikacja, jak np. księga główna, nie będzie dobrze działać w technologii klient/serwer, koncentrujemy się bardziej na procesie niż na rezultatach. Gdybyście spróbowali uruchomić system księgowy w technologii klient/serwer w sposób w jaki robi się to na mainframe, to by się to nie powiodło ".

"Z drugiej strony gdy patrzymy na stary proces w nowy sposób, możemy zrobić prawie wszystko rozdzielając pracę na wiele maszyn".

Rada 6

Nie należy martwić się ryzykiem nie dotrzymywania kroku rozwoju technologii. Nikt nie dotrzymuje kroku.

"Musicie nauczyć się unikania ciosów" - stwierdza Moen - "Powinniście myśleć o technologicznej strukturze do której

możecie dopasowywać nowe produkty zamiast o stałym zestawie technologicznych standardów".

Card zgadza się z tym - "Kierujemy się architekturą, wizją i podstawowymi założeniami. Nie można modyfikować standardów wystarczająco szybko. Nie będziecie mieli takiego luksusu by przybijać gwoździami każdy detal zanim przejdziecie dalej... W tym biznesie czasami trzeba uczyć się metodą prób i błędów".

Taki typ myślenia nie jest obcy kompaniom energetycznym z Calgary. Czasami wydają one miliony dolarów wiercąc na chybił trafił odwierty, które okazują się suche.

Rada 7

Nie wolno zapominać o technicznej złożoności tego co się robi i o ludziach, którzy będą potrzebni, aby to wykonać.

Implementacje klient/serwer dotyczą wielu różnych powiązanych elementów hardware'u i software'u. Wiele systemów operacyjnych (klient i serwer), sieciowe systemy operacyjne, interfejsy komunikacyjne, GUI i same aplikacje muszą być tak zarządzane, by mogły działać jak pojedyncze, efektywne, dostępne urządzenie.

"Każdy kawałek układanki może zawierać błędy, a zarazem każdy z nich zależy od stabilności pozostałych elementów" - twierdzi Moen - "Te właśnie interakcje mogą was pogrzebać. Poza sprawą technologii, działanie systemu zależy także od współpracy programistów, analityków sieci, współpracowników zajmujących się sprzętem i oczywiście użytkowników. Bardzo ważna jest pewność, iż ma się organizację, która dzięki wspólnej pracy ludzi zaangażowanych w przedsięwzięcie sprzyja osiąganiu efektów".

Rada 8

Aby zbudować system klient/serwer niekoniecznie potrzeba nowych ludzi, ale na pewno potrzeba nowego sposobu myślenia.

Istnieje powszechnie utrzymujący się pogląd, że ludzie przeszkoleni w rozwijaniu systemów mainframe'owych czasami pozostają "dinozaurami". Uważa się zatem, że są nieodpowiedni do rozwijania systemów klient/serwer. Natomiast ludzie przeszkoleni w zakresie komputerów PC mają być bardziej efektywni w pracy z GUI i technologiami klient/serwer.

"Nie mogę się z tym zgodzić" - stwierdza Evans. - "To raczej kombinacja różnych umiejętności działa dla dobra projektu. Specjaliści od mainframe'u wnoszą dyscyplinę i doświadczenie którego, co smutne, brakuje części projektantów systemów klient/serwer".

"Ludzie specjalizujący się w mainframe'ach przyzwyczajeni są budować back-upy, procedury zabezpieczające i osiągać czas efektywnej pracy systemu przekraczający 99%" - mówi Evans - "W środowisku klient/serwer nie tylko narzędzia operacyjne i administracyjne są relatywnie niedojrzałe, lecz tak samo jest i z ludźmi którzy je zbudowali... Połamali zęby na kodowaniu systemów do komputerów PC przeznaczonych dla indywidualnych użytkowników, a nie mają dyscypliny niezbędnej do zbudowania sprawdzonych systemów sieciowych, od których zależałaby cała

korporacja".

Wellwood bardziej rozważnie używa ludzi posiadających umiejętności z zakresu mainframe w swoich projektach klient/serwer.

"To jest całkiem nowy świat... Nie możesz osiągać sukcesów budując systemy klient/serwer i aplikacje GUI posiadając sztywną, hierarchiczną mentalność mainframe'ów... Powinieneś raczej zmienić całkowicie swoją psychikę" - stwierdza.

"Należy myśleć terminami obiektów i przetwarzania sterowanego zdarzeniami... Zakładanie, iż jesteś w stanie stworzyć system klient/serwer i aplikacje GUI ponieważ znasz się na mainframe'ach jest zbliżone do przypuszczenia, że umiesz latać helikopterem ponieważ wiesz jak się jeździ na rowerze".

Rada 9

Czasami software nie jest tak niezawodny jakby się tego oczekiwało.

Mimo technologicznej złożoności tych systemów, pewne pozytywne charakterystyki narzędzi mainframe'ów nie są oczywiste w softwarze systemów klient/serwer.

Moen twierdzi - "w czasach "wielkich maszyn" przyzwyczailiśmy się polegać na tym, że sprzedawcy dostarczają czysty kod... Błędy były wyjątkiem".

Wraz z nastaniem technologii klient/serwer ta niezawodność zniknęła. "Przy prędkości z jaką nowe produkty pojawiają się na rynku oczekujemy, że software nie będzie działał, gdy się już go otrzyma. Mamy jednak nadzieję, że znajdziemy jakieś wyjście".

Ta niepewność jest szczególnie przykra dla Moen ponieważ często irytuje ją zmienność w taktyce sprzedaży proponowanej przez producentów.

"Nie można kupować produktów klient/serwer bez podstawowej oceny" - twierdzi - "Przy złożonych relacjach między software'm i hardware'm, z jakimi musimy się uporać, coraz ważniejsze staje się testowanie wszystkiego przed zakupem".

Rada 10

Skoncentrować się na sieci.

Kluczową sprawą jest funkcjonalność infrastruktury komunikacyjnej przy budowaniu aplikacji klient/serwer.

"Wszystkie te nowe narzędzia żyją i umierają w sieci" - tłumaczy Wyatt - "W miejsce mainframe, w naszym biznesie, sieć stała się pierwotnym nośnikiem aplikacji".

Wysiłki jakie przedtem kierowano na utrzymywanie niezawodności systemu mainframe'owego skoncentrowały się teraz na zabezpieczeniu stabilnej, szybkiej sieci.

"W wielu organizacjach" - stwierdza Wyatt, - "zepsucie się sieci miałoby gorsze efekty niż strata mainframe'a".

Rada 11

Pilotowe wdrożenie systemu u sympatyzujących użytkowników.

Rozruch systemu klient/serwer będzie miał podstawowe znaczenie dla długoterminowego sukcesu technologii.

"Nie należy zaczynać z bardzo wizualnymi aplikacjami" - radzi Card - "Dobrze jest także mieć użytkownika pozytywnie nastawionego do zadań jakie sobie postawiono. Przy zagrożeniu opóźnieniami i techniczną złożonością problemu niepotrzebny jest szybko denerwujący się użytkownik wymagający szybkich efektów".

Rada 12

Nie musisz tego robić w ten sam sposób w jaki przedtem zrobili to inni.

Pomimo całego "szumu" jaki towarzyszy technologiom klient/serwer i GUI, jako powiewowi przyszłości, wiele firm jeszcze nie zdecydowało się na to. Większość z nich poszukuje łatwej drogi do nowych technologii. Calgaryjczycy radzą by nie działać identycznie jak wszyscy przy wybieraniu zestawu narzędzi.

"W tym mieście" - stwierdza Wellwood - "wydaje się iż wszyscy masowo zdecydowali się na PowerBuildera... My przyjrzeliśmy się wszystkiemu trochę bliżej i wybraliśmy ObjectView."

Kompanie z Calgary reprezentują szeroką różnorodność zestawów narzędziowych. PanCanadian jest prawdopodobnie najbardziej agresywna w pogoni za nowymi technologiami. Wybiera kombinację GUI i systemu klient/serwer z hierarchiczną orientacją obiektową wraz z korzystaniem ze środowiska NextStep na sieci komputerów PC i serwerów Sun.

Gulf używa komputerów PC i serwerów Sun, kojarząc je z siecią Novell i budując aplikacje w C i Paradoxie. Wascana eksperymentowała z wieloma narzędziami w tym Actorem i PowerBuilderem, aby w końcu wybrać Visual Basic Microsoftu. Amoco Canada z sukcesem korzystło z PowerBuildera Powersoftu.

Podsumowanie

Trzymać głowę do góry i mieć oczy szeroko otwarte.

Pomijając różnorodność narzędzi jakimi pracują ludzie których opinie poznaliśmy, wszyscy zgadzają się, iż inwestycja w system klient/serwer i GUI warta jest włożonego w nią wysiłku.

I dlatego powinno się budować nowe aplikacje w systemie klient/serwer.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200