Audyt oprogramowania

Audyt oprogramowania jest zespołem czynności służących do optymalizacji wykorzystania licencji na oprogramowanie posiadanych przez firmy i instytucje. Podejmowane działania takie, jak ewidencja licencji, ich cykliczna weryfikacja i okresowe raportowanie licencji dają organizacjom pełną wiedzę na temat aktualnego stanu posiadanych zasobów software’owych oraz stopnia ich wykorzystania.

Informacje te pozwalają na podejmowanie decyzji dotyczących m.in. usuwania niewykorzystywanych, zbędnych instalacji, a w efekcie poprawę wydajności działania środowiska informatycznego. Do tego dochodzi eliminacja ryzyka powstającego w razie ewentualnego użytkowania aplikacji wbrew warunkom umów licencyjnych.

Audyt oprogramowania – system na bazie rozwiązań open source

Oferowany przez ESKOM audyt oprogramowania polega na budowie i implementacji w środowisku IT klienta odpowiedniego systemu, opartego w całości na rozwiązaniach open source. Poniesione koszty obejmują więc tylko czynności związane z ich wdrożeniem i utrzymaniem. Elementy składowe systemu tworzą:

aplikacja GLPI (Asset Management System) – narzędzie do ewidencji i zarządzania posiadanymi zasobami (licencjami),

– narzędzie do ewidencji i zarządzania posiadanymi zasobami (licencjami), aplikacja OCS (Autodiscovery System) – rozwiązanie cyklicznie monitorujące urządzenia w celu wykrycia ewentualnych zmian,

– rozwiązanie cyklicznie monitorujące urządzenia w celu wykrycia ewentualnych zmian, skrypty raportowe.

Obie aplikacje podczas implementacji zostaną zintegrowane, a dopełnieniem systemu są skrypty generujące raporty. Oprogramowanie GLPI oraz OCS pracuje w systemie Linux (preferowana dystrybucja CentOS), a właściwa praca OCS wymaga instalacji jego agentów (służących do detekcji instalacji) we wszystkich monitorowanych urządzeniach. Agent pracuje w tle, wykorzystując jedynie minimalnej ilości zasobów (4 MB RAM).

Wdrażanie i utrzymanie systemu audytu

Wdrażany przez ESKOM audyt oprogramowania jest systemem budowanym w kilku, następujących po sobie etapach. Schemat działania obejmuje czynności:

instalowanie i konfigurowanie aplikacji GLPI oraz OCS,

instalowanie agentów OSC na urządzeniach,

inicjalne zasilenie bazy GLPI,

instalowanie skryptów raportowych,

weryfikację listy zainstalowanego oprogramowania z dostarczoną dokumentacją licencyjną.

Warunkiem poprawnego audytu, a w szczególności czynności, takich jak weryfikacja czy raportowanie licencji, będzie dostarczenie kompletu dokumentów dotyczących posiadanych przez Klienta licencji na oprogramowanie oraz nałożenie ograniczeń na użytkowników nadzorowanego środowiska – w celu odebrania im możliwości samodzielnych instalacji.

Utrzymanie systemu polega na zautomatyzowanych, konfigurowalnych czynnościach, obejmujących m.in. częste (co godzinę) zbieranie informacji o zainstalowanym oprogramowaniu oraz generowanie dobowych raportów. W przypadku wykrycia rozbieżności między stanem wzorcowym a obecnym, system wnioskuje o akceptację lub odrzucenie nowo zainstalowanego przez użytkownika oprogramowania. W przypadku akceptacji, baza licencji jest poszerzana, z kolei decyzja o odrzuceniu skutkuje deinstalacją oprogramowania.

Kompleksowy audyt oprogramowania – koszty budowy i utrzymania systemu

Ponoszone przez klienta koszty budowy i wdrożenia systemu audytu są uzależnione od wielkości objętego nim środowiska informatycznego i obejmują dwa zespoły czynności:

prace instalacyjne – stała opłata ryczałtowa, uwzględniająca czynności instalacji systemu operacyjnego, aplikacji GLPI i OCS oraz skryptów raportowych, w wysokości 4 800 PLN,

prace konfiguracyjne – opłata będzie uzależniona od wielkości nadzorowanego środowiska oraz stopnia automatyzacji procesów. Pomocne w jej oszacowaniu będzie wypełnienie informacji w poniższej tabeli:

Utrzymanie i Rozwój Oprogramowania

Świadczymy usługi związane z tworzeniem oprogramowania dedykowanego dla Klienta. Zapewniamy zespoły analityków, projektantów, programistów, testerów, architektów systemu i kierowników projektu, dysponujących doświadczeniem w tworzeniu, rozwoju i modyfikacji oraz integracji i utrzymania oprogramowania. Zastosowane technologie oraz wysoko wykwalifikowana i doświadczona kadra, pozwalają na świadczenie usług w zakresie zaawansowanych systemów big data. Świadczymy usługi w oparciu o najlepsze światowe standardy w zakresie zarządzania projektami, zbierania wymagań, projektowania i wytwarzania, testowania, zarządzania usługami, co jest poparte wyszkolonym, certyfikowanym personelem.

Jesteśmy autorem jednego ze strategicznych systemów państwa – systemu ubezpieczeniowego dla Kasy Rolniczego Ubezpieczenia Społecznego (KRUS). Zajmujemy się rozwojem, utrzymaniem i eksploatacją systemów dziedzinowych dla KRUS dotyczących ubezpieczeń społecznych rolników, ubezpieczeń zdrowotnych i świadczeń krótkoterminowych oraz bazy referencyjnej danych osobowych.

Systemy Ubezpieczeniowe dla KRUS

nSIU – to nowy system informatyczny ubezpieczeń społecznych będący centralnym systemem Kasy Rolniczego Ubezpieczenia Społecznego (KRUS). System użytkowany jest przez Centralę KRUS i 271 Placówek Terenowych całego kraju. System jest dostępny 24/7/365 i codziennie używa go ponad 3 000 użytkowników, którzy korzystają z przeglądarki internetowej. System nSIU obejmuje ubezpieczenia społeczne, ubezpieczenia zdrowotne, świadczenia krótkoterminowe, statystykę KRUS i wypadki rolnicze (włączone do nSIU w 2016 roku funkcjonalności poprzedniego systemu WYPROL). Napisany został w technologii JAVA EE, ORACLE i wdrożony w październiku 2015 roku po pełnej migracji wszystkich danych z systemu KRUSnal opartego o ADABAS, KACHNA opartego o Firebird i KRUSnal-C opartego o ORACLE). System obsługiwany jest w modelu współpracy na zasadzie outsourcingu (przetwarzanie w dwóch ośrodkach obliczeniowych ADS z replikacją online bazy danych do ośrodka zapasowego). System nSIU udostępnia wszystkie funkcjonalności w trybie online, w tym wszystkie sprawozdania, raporty, zaświadczenia, generowane w czasie rzeczywistym na życzenie użytkownika. System nSIU posiada również główny, centralny zasób danych osobowych ubezpieczonych w KRUS (CZDO), który jest referencyjny dla innych systemów dziedzinowych KRUS zintegrowanych z nSIU, jak np. FARMER, Archiwum i Workflow.

Obszar posiada kompetencje w zakresie:

Zarządzania: PRINCE2, MoR, ITIL.

Tworzenia aplikacji na zamówienie zgodnie z najlepszymi praktykami oraz przy wykorzystaniu zaawansowanej inżynierii oprogramowania: Wytwarzanie oprogramowania zgodnie z metodykami RUP, Scrum, XP. Analiza wymagań – kompleksowa analiza w zakresie analizy procesów biznesowych przedsiębiorstwa (BPMN), od analizy wymagań biznesowych, po identyfikację i specyfikację wymagań systemowych (UML). Analiza i projektowanie – opracowywanie architektury systemu oraz szczegółowego projektu systemu (OOAD, UML). Implementacja – Implementacja złożonych, wydajnych i wysokodostępnych systemów z zastosowaniem szerokiej gamy języków programowania, frameworków i technologii (między innymi Java EE/SE, PL/SQL, JavaScript, ExtJS). Wiedza merytoryczna w zakresie systemów finansowo-księgowych oraz systemów ubezpieczeń. Testy manualne – testy w oparciu o metodyki zwinne oraz Waterfall. Testy automatyczne interfejsów WEBowych:

– Testy serwisów dynamicznie generowanych

– Tworzenie narzędzi wspomagających testy

– Tworzenie Framework-ów na potrzeby procesu testów

Zautomatyzowane dostarczanie, integracje i wdrażanie aplikacji

Wprowadzenie metodyki DevOps do tworzenia i utrzymania oprogramowania pozwala na zautomatyzowanie tego procesu, a także na zwiększenie produktywności i efektywności zespołów. Jednak do efektywnego przeprowadzania procesów ciągłej integracji, dostarczania oraz wdrażania aplikacji konieczne jest zastosowanie odpowiednich rozwiązań informatycznych. Narzędzia te usprawniają i automatyzują wykonywanie zadań związanych z tworzeniem kodu, wprowadzaniem zmian, przeprowadzaniem testów, czy wdrażaniem i dostarczaniem oprogramowania. Rozwiązania te pozwalają efektywnie modernizować oferowane usługi, dzięki wykorzystaniu informacji zwrotnej od użytkowników, szybkiemu wprowadzaniu zmian i dostosowywaniu oprogramowania do zmieniających się potrzeb rynkowych. To wpływa na osiągnięcie przewagi konkurencyjnej przedsiębiorstwa i większą satysfakcję klientów.

ApiOmat to platforma, która eliminuje wszystkie przeszkody w transformacji cyfrowej organizacji i zapewnia infrastrukturę oraz narzędzia do digitalizacji i wprowadzenia nowoczesnego modelu biznesowego. Od szybkiego prototypowania i integracji w przedsiębiorstwie, poprzez operacje IT i analitykę użytkownika – ApiOmat zapewnia możliwość skalowania i zarządzania usługami realizowanymi z wykorzystaniem rozwiązań cyfrowych lub przez Internet.

API Management – Kompleksowe zarządzanie cyklem życia API i mikroserwisów

Interfejsy API i mikroserwisy są kluczowymi elementami budującymi platformy cyfrowe, które łączą aplikacje, programistów i dane, zapewniają lepsze doświadczenia użytkowników i

unowocześniają modele biznesowe. API Management umożliwia budowę skalowanego środowiska o wysokiej dostępności i wydajności. Pozwala tworzyć, zabezpieczyć, dostarczać i zarządzać pełnym cyklem życia interfejsów API i mikrousług. Daje sprawność i elastyczność startupów każdemu przedsiębiorstwu i dba o to, aby każda organizacja mogła maksymalnie wykorzystać nowe możliwości dzięki nowoczesnej architekturze aplikacji. Rozwiązanie umożliwia zarządzania pełnym cyklem życia API w procesie tworzenia oprogramowania. Wprowadza też dodatkową warstwę zabezpieczeń na poziomie API dla aplikacji.

Continous Delivery Automation – Szybsze, wydajne i bezbłędne wdrażanie aplikacji

To skalowalne rozwiązanie do klasy Enterprise, które w efektywny sposób pomaga przedsiębiorstwom wykonywać i optymalizować proces wdrażania oprogramowania. CDA umożliwia koordynację i skrócenie czasu uruchomienia aplikacji, umożliwiając bezobsługowe wdrożenie /zero-touch/ od etapu projektowania po produkcję. Moduł ten pozwala organizacjom zbudować podstawy Continuous Delivery dla dowolnych systemów wykorzystywanych w przedsiębiorstwie. CDA pozwala na automatyzację wdrożenia dzięki koordynacji wykorzystywanych narzędzi i promocję kodu aplikacji od środowisk rozwojowych aż po produkcyjne. Pomaga organizacjom w adresowaniu najbardziej krytycznych elementów procesów DevOps oraz umożliwia praktyczne zastosowanie Continuous Delivery w pełnym cyklu życia aplikacji. Rozwiązanie to pozwala skrócić cykle wydań aplikacji, a także zwiększyć operacyjność biznesową i technologiczną. Dzięki uproszczeniu i standaryzacji procesów wydań aplikacji istotnie redukuje liczbę błędów podczas implementacji zmian. CDA automatyzuje proces wdrażania i utrzymania aplikacji w środowiskach infrastruktury fizycznej, wirtualnej i chmurowej. To jedna z najbardziej elastycznych i skalowalnych technologii automatyzacji, co potwierdzają liczne nagrody i raporty firm analitycznych t.j. Gartner i Forrester.

Rozwiązanie pozwala przyspieszyć proces tworzenia i dostarczania aplikacji i poprawiać jej jakość. Wpływa też na zmniejszenie kosztów i ryzyka związanych z dostarczaniem aplikacji oraz pozwala skrócić czas wprowadzenia produktu na rynek. Service Virtualization symuluje niedostępne systemy w całym cyklu życia oprogramowania, umożliwiając programistom, testerom oraz zespołom zajmującym się integracją i wydajnością równoległą pracę w celu szybszego dostarczania niezawodnych aplikacji. Rozwiązanie wpływa na przyspieszenie czasu cyklu wydania oprogramowania, zwiększa jego jakość i wpływa na obniżenie kosztów infrastruktury środowiska testowego.

Test Data Manager to rozwiązanie, którego potrzebują organizacje, aby nieustannie dostarczać najwyższej jakości aplikacje. Pozwala na zautomatyzowanie i rozwiązanie jednego z najbardziej zasobo- i czasochłonnych problemów związanych z Continuous Delivery: tworzenie, utrzymywanie i provisioning danych testowych niezbędnych do testowania zmieniających się aplikacji. Test Data Manager w unikalny sposób łączy elementy podzbiorów danych, maskowania, syntezy, klonowania i generowania danych na żądanie, aby umożliwić zespołom testującym sprostanie potrzebom organizacji w zakresie agile. Ponadto może pomóc w rozwiązaniu problemów związanych z prywatnością i zgodnością z przepisami (m.in. RODO). Funkcja wykrywania i profilowania produktu (Discovery and Profiling) pozwala na identyfikację danych osobowych PII (Personally Identifiable Information) w wielu źródłach danych.

Application Test to rozwiązanie przeznaczone do automatycznego testowania i sprawdzania nowoczesnych aplikacji internetowych oraz mobilnych wraz z interfejsami API, usługami sieciowymi i starszymi systemami zaplecza. Dostarcza platformę testową nie wymagającą znajomości kodowania, która umożliwia projektowanie i wykonywanie zautomatyzowanych testów jednostkowych, funkcjonalnych, regresyjnych, integracyjnych i wydajnościowych obejmujących zarówno nowoczesne, jak i starsze technologie. Dzięki Application Test można znacznie obniżyć koszty walidacji, poszerzyć zakres testów bez konieczności zwiększania zasobów i uprościć architekturę testowania, konsolidując liczbę narzędzi potrzebnych do przetestowania aplikacji.

powrót do początku strony

Jarosław Kułak
Jarosław Kułak

Leave a Comment