CIOProgramowaniePolecane tematy

Micro Focus wspiera DevOps

Advertorial

Nowoczesne podejście do wytwarzania i cyklu życia aplikacji zakłada proste i logiczne zasady. Tylko tak można podążać za potrzebami biznesu i rynku. Ale w praktyce wdrożenie tych zasad wymaga wielu inteligentnych narzędzi i frameworków, aby ideę taką jak DevOps zaimplementować w sposób efektywny.

Micro Focus wspiera DevOps

Co najważniejszego zmienia się w cyklu życia i w sposobie wytwarzania oprogramowania? Można powiedzieć, że ciśnienie i presja, którą wywierają na działy dostarczające oprogramowanie klienci zarówno wewnętrzni jak i zewnętrzni. Presja użytkowników wewnętrznych, którzy z nowych aplikacji i rozwiązań będą korzystać. Ich oczekiwania się zmieniają, ponieważ pojawiła się, szybko podchwycona przez biznes, możliwość konwergencji usług. W efekcie to, co teoretycznie jest prostą, powstającą szybko w zwinnym projekcie aplikacją – wymaga wielu integracji, uwzględniania zmiennych, elastyczności, która pozwoli uwzględniać je. W przypadku aplikacji, które wymagają interakcji z klientem – zmiany muszą być wprowadzane szybko. Biznes nie chce czekać, a okazja rynkowa umożliwiająca wygranie z konkurencją pojawia się szybko i znika jeszcze szybciej. Dodatkowo, coraz bardziej złożone stają się środowiska aplikacyjne, które łączą rozwiązania on-prem, wirtualne, kontenery, chmurę…

Odpowiedzią stało się podejście DevOps, a w zasadzie DevOpsSec, które pozwala efektywnie, elastycznie, w krótkich cyklach dostarczać nowe aplikacje orazzmiany w nich, a także monitorować ich efektywność z punktu widzenia celu biznesowego. Tak naprawdę, jest to idea komunikacji pomiędzy utrzymaniem, wytwarzaniem, bezpieczeństwem i oczywiście – Biznesem. DevOps jest obecny na polskim rynku i przyciąga coraz więcej firm. Wyzwaniem jest ramowe, spójne, przemyślane jego wdrożenie i wykorzystywanie. DevOps obrósł w szereg „wyspowych” narzędzi podnoszących i wspierających efekty, jakie przynosi. Na pewnym etapie rozwoju organizacji i wyzwań stojących przed nimi niezbędne są jednakżerozwiązania, które mają cechy szerszych ram, swoistej architektury i dobrych praktyk, które niwelują ryzyko porażki w stosowaniu DevOps.

Boisko dla DevOps

Micro Focus rozwija od lat zarówno pojedyncze narzędzia jak i duże frameworki, które pozwalają zarządzać cyklem wytwarzania i szerzej cyklem życia oprogramowania. Jako, że tworzą one spójny kontekst dla działania m.in. w podejściu DevOps wdrożone są w 499 firm listy Fortune 500.

Takim środowiskiem jest na przykład Micro Focus ALM Octane, który pozwala na zarządzanie całym cyklem wytwarzania w duchu podejścia DevOpsSec. Od idei, zarządzania wymaganiami, przekuwania tego na zadania zespołów, zarządzanie cyklem testowania, wydawania i automatyzacją deploymentu, po utrzymanie i monitorowanie zachowania aplikacji – wliczając w to zarządzanie usługami związanymi z aplikacjami. Trzeba jednak stanowiczo podkreślić, że środowisko jest otwarte na rozwiązania firm trzech oraz Open Source, które wykorzystują użytkownicy.

Firmy potrzebują także bardziej ogólnych, uniwersalnych narzędzi – rozwiązania nadającego ramy projektowe (dla wszystkich, nie tylko oprogramowania), ale uwzględniające m.in. paradygmat DevOps. Taką możliwość stwarza Micro Focus Project and Portfolio Management (PPM), które integruje się płynnie ze wspomnianym środowiskiem ALM Octane (ale także innymi rozwiązaniami DevOpsowymi), pozwalając na znalezienie i zarządzanie zasobami, budżetami, , monitorowanie i raportowanie dowolnych projektów.

Poza wielkimi frameworkami, które skierowane są do najbardziej wymagających organizacji potrzebne są jednak także rozwiązania pozwalające na konkretne działania w ramach np testowania.

Wymiary automatyzacji

Jednym z palących wyzwań w DevOps są testy. Potrzeba ich dużo, na możliwie najwcześniejszych etapach, i dobrze zaprojektowanych, a w dodatku często powtarzalnych. Niezbędna jest więc ich automatyzacja – co przejawia się w wielu firmach tworzeniem zespołów bądź stanowisk ukierunkowanych wyłącznie na ten aspekt.

Jednym z najlepszych na rynku rozwiązań do automatyzacji testów funkcjonalnych jest rodzina produktów UFT (Unified Functional Testing) działających na aplikacjach webowych, mobilnych, terminalowych i innych. Olbrzymią zaletą UFT One jest wsparcie dla ponad 600 typów obiektów z którymi aplikacja (w imieniu użytkownika) może spotkać się na ekranie. Dodatkowo rozwiązanie jest odporne na różne zmiany w testowanych aplikacjach – np. przeniesienie przycisku „Zamawiam” w inne miejsce bądź zmiana jego koloru. Tego typu zmiany nie rujnują stworzonego scenariusza testowego, więc testerzy nie muszą tracić czasu na przygotowanie nowych scenariuszy.
Bardzo bliska współpraca pomiędzy Micro Focus oraz SAP umożliwia również wsparcie migracji tego środowiska do wyższych, coraz bardziej wyrafinowanych i wymagających wersji.

Micro Focus wspiera DevOps

Rodzina UFT to klasyk jakim jest UFT One, ale również UFT Mobile – do aplikacji mobilnych oraz UFT Developer – który realizuje ideę „shift left” – testowania już na etapie pisania oprogramowania celem zaoszczędzenia czasu i pieniędzy.

Jeśli aplikacja trafia do setek i dziesiątków tysięcy użytkowników, niezbędne są testy wydajnościowe – dostępności, skalowalności. Zespoły testowe muszą mieć możliwość emulowania jednoczesnej pracy w aplikacji setek bądź tysięcy użytkowników, w dodatku przy zadanych warunkach sieciowych. Dla najbardziej wymagających Klientów przygotowana została wersja Enterprise, która umożliwia m.in. koordynację pracy wielu geograficznie rozproszonych zespołów testerskich.

LoadRunner jest także dostępny jako usługa SaaS (LoadRunner Cloud) – wówczas jego działanie może być rozszerzone na usługę weryfikacji dostępności aplikacji dla użytkowników zewnętrznych poprzez symulowanie łączenia się ze stroną www zadanej grupy osób z określonej puli adresów IP i wykonywania danego scenariusza. Nie jest tajemnicą, że w gronie klientów jest również instytuacja, które dostarcza usługę aplikowania o fundusze europejskie, co powoduje, że w piku z aplikacji korzysta po kilkadziesiąt tysięcy użytkowników.

Największym problemem działów testowych jest gonitwa czasu – w tym to, że testerzy muszą długo czekać na dostępność aplikacji nie tylko testowanej, ale także powiązanych aplikacji, z którymi ma się ona łączyć – wliczając w to środowiska zewnętrzne. Truizmem jest już to, że dostępność pełnego środowiska aplikacyjnego jest wymogiem poprawnego testowania i zarazem jest bardzo problematyczna. Wyjściem jest więc zwykle tworzenie kopii tego środowiska produkcyjnego, co z kolei jest złożone pod względem licencyjnym, kosztowne i czasochłonne w utrzymaniu. Lepszym rozwiązaniem jest tworzenie swoistych “zaślepek” – Micro Focus Service Virtualization zamiast kopii emuluje działanie takiego zintegrowanego środowiska: najpierw “uczy się” sposobu zachowania każdej takiej zewnętrznej aplikacji, aby następnie udawać jej odpowiedzi podczas testów.

Bardzo ciekawym rozwiązaniem jest Micro Focus Robotic Process Automation (RPA). Z jednej strony to typowe narzędzie dla Biznesu, które robotyzuje ich manualne, powtarzalne, żmudne czynności (np. takie jak przepisywanie, wyciąganie bądź przetwarzanie danych do systemów), a z drugiej strony umożliwia organizacjom integracje różnych środowisk bez konieczności pisania, testowania i utrzymywania interfejsów – co jest szczególnie istotne gdy potrzeby zmiany funkcjonalności zgłaszane są często i są krótkotrwałe. Warto rozważyć wykorzystanie wówczas robota zamiast budowy całej funkcjonalności. Podam przykład “covidowy”: kiedy zarząd pewnej firmy leasingowej postanowił obniżyć prowizję dla licznej grupy kontrahentów, oszacowano szybko, że wytworzenie brakującej funkcjonalności zajęłoby 2-4 tygodnie. Wybrano więc inną możliwość: zainstalowano robota, który w o wiele krótszym czasie uzupełnił w okienku kilkudziesięciu tysięcy umów odpowiedni zapis, pozwalając na realizację wsparcia kontrahentów firmy.

Należy tu dodać, że z technologicznego punktu widzenia Micro Focus RPA jest bardzo blisko spokrewnione z UFT – od którego wzięło zarządzanie, elastyczność i odporność na zmiany interfejsu użytkownika oraz z Operations Orchestration – potężnym silnikiem orkiestrującym, który umożliwia komunikację przez API z masą różnych technologii co pozwala na zbudowanie nawet bardzo skomplikowanych procesów.

RPA jest specyficzne, ponieważ pobudza mocno wyobraźnię użytkowników Biznesowych. Roboty można wykorzystywać w działach kontrolingu, kadrowych, magazynowych, obsługi zamówień, operacyjnych, księgowości i wielu innych. Wszędzie, gdzie jest manualna, powtarzalna czynność, przenoszenie danych, obsługa zgłoszeń klientów – tam można wykorzystać roboty. Inwencja użytkownika i gotowość procesów decydują o zastosowaniu robota.

Jeśli w organizacji sprawnie działają różne zespoły developerskie i testowe skoncentrowane na wybranych liniach biznesowych to w pewnym momencie pojawia się ryzyko chaosu nakładających się wydań z których każde może wpływać na inne wydania lub aplikacje. Tak jak na ruchliwych skrzyżowaniach ustawiamy sygnalizatory tak w rozwiniętej organizacji należy wdrożyć rozwiązanie takie jak Release Control. Jeśli wesprzemy je narzędziem, które pomaga w automatyzacji deploymentu tych wydań – takim jak Deployment Automation – będziemy mogli powiedzieć, że obszar Release Management mamy dobrze przygotowany.

Otwartość i skuteczność

Rozwiązania Micro Focus, które wspomagają i porządkują nowoczesny sposób wytwarzania: PPM, ALM Octane, Release Control, Deployment Automation, UFT oraz RPA cechuje to, że same ze sobą naturalnie integrują się w indywidualny, efektywny ekosystem, a z drugiej strony pozostają otwarte na integrację z innymi, wyspowymi narzędziami, np. Open Source albo innych firm. To ważny czynnik dla firm dążących do poprawy efektywności poprzez lepsze oprogramowanie.

ALM Octane, który jest dobrze rozpoznawalną marką, przeżywa właśnie falę dalszego wzrostu zainteresowanie. To rozwiązanie klasy enterprise okazuje się interesującym, potrzebnym narzędziem także dla firm dużych i średnich, które muszą sprostać wyzwaniom szybkiego i podporządkowanego jakości wytwarzania aplikacji.
Także PPM jako całościowe, uniwersalne rozwiązanie do projektów, zyskuje nowych klientów. Dotychczas w wielu firmach podobne rozwiązania działały w ograniczonym zakresie, można powiedzieć – „wyspowo”, przez wybrane zespoły. Rodziło to szereg problemów, na czele z problemem spójności i efektywności portfela projektowego. Stąd zarządzanie na poziomie całego przedsiębiorstwa, w standardzie dotąd stosowanym w największych firmach, stało się bardzo interesujące i atrakcyjne dla dużych i średnich firm.

W podobnym stopniu fala zainteresowania dosięga także poszczególnych narzędzi, jak UTF, czy Service Virtualization. Są bardzo elastyczne we współpracy z różnymi technologiami klienta, a przy tym wiele firm zaczęło już dostrzegać i odczuwać wyzwania, z jakimi mierzą się coraz mocniej obciążani przez działy developerskie testerzy. Efektywne wykorzystanie ich czasu staje się niezbędne.

Także w kwestii realizacji wydań oprogramowania, potrzeby stają się coraz bardziej uniwersalne, jak np. potrzeby automatyzacji. Zwinny model wytwarzania oprogramowania powstającego wewnętrznie i dostarczanego z zewnątrz, np. z chmury publicznej, powoduje, że można sobie wyobrazić łatwo nieodległy czas, kiedy nawet przeciętna duża firma będzie realizowała wydania aktualizacji co 1-2 dni. Bez automatyzacji jest to nie do osiągnięcia.

Szerzej i bardziej świadomie

Coraz powszechniejsza adaptacja DevOps, a w zasadzie DevOpsSec, prowadzi oczywiście do tzw. „shift-left” czyli przesunięcia do najwcześniejszych faz testów funkcjonalnych, bezpieczeństwa, regresji – wszelkich zagadnień związanych z coraz mocniej powiązanymi bezpieczeństwem i jakością. Temu dynamicznemu i statycznemu testowaniu wsparcia udzielą rozwiązania takie jak UTF czy Fortify. Im więcej zadań tego typu znajdzie się po stronie Dev, tym lepszy wytwór trafi do testerów a potem szybciej – na produkcję. Im szybciej błędy zostaną wykryte tym taniej i szybciej będzie można je naprawić.

Coraz więcej firm do tego się przekonuje i dojrzewa. DevOps wraz z wachlarzem wspierających go narzędzi przebija się też tam, gdzie koszt pracy przestaje być naczelną przewagą konkurencyjną i zamiast walczyć o efektywność łatwiej do tej pory było zatrudnić dodatkową osobę.

Największym sukcesem DevOps jest nie tylko szybsze dopasowywanie się do wymagań rynku, ale również uda się objęcie nie tylko przez kierowników projektów, ale i choćby pojedynczych członków zespołów developerskich i testowych świadomością wpływu na Biznes jak i poczuciem odpowiedzialności za niego. To także kluczowy, wieńczący nowy schemat elementu zmiany podejścia do oprogramowania, który znajduje swoje wyraźne odbicie w rozwiązaniach PPM i ALM Octane.

Piotr Banaszewski, Software Sales Executive w Micro Focus Polska

Tagi

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *