Przenieś na górę strony
Programista piszący kod
03.01.2023

Co to jest Software Process Mining i czy mój biznes potrzebuje SPM?

Przeczytasz w 4 min.
Lubi to 1 osoba
Jeszcze nikt nie skomentował

Znaczenie oprogramowania w biznesie ciągle rośnie. Przywykliśmy, że tak jak na co dzień, tak i w firmie, nie potrafimy obejść się bez niezbędnych aplikacji. Normą stało się podejście, w którym software powstaje specjalnie na potrzeby firmy. Z każdym rokiem powstaje coraz więcej linii kodu, a wraz z nimi wzrasta poziom skomplikowania. Ręczne zarządzanie aplikacją składającą się z setek tysięcy linii kodu przez grupę developerów jest niewykonalne. Pozostawienie aplikacji „samej sobie” i jej ciągłe rozwijanie może z kolej prowadzić do wzrostu długu technicznego i coraz trudniejszych do naprawienia bugów. Czy jest na to rozwiązanie? Tak! To SPM, czyli Software Process Mining.

Złożoność oprogramowania w aplikacjach biznesowych jest ogromna. Aplikacje często powstają latami, niejednokrotnie przekazywane są kolejnym grupom programistów. Zapanowanie nad złożonością i jednoczesny rozwój aplikacji wykracza poza zdolności człowieka. Rosnący koszt utrzymania, a także wytwarzania oprogramowania i coraz bardziej skomplikowany proces jego analizy dokładają kolejnych trudności. Sprawy nie ułatwia też komunikacja pomiędzy software house’m, a zarządem, który nie zawsze rozumie techniczny język i trudności programistyczne. Na wszystkie te kłopoty istnieje jedno rozwiązanie – SPM.

Co to jest SPM, czyli Software Process Mining?

Software Process Mining to jedno z ciekawszych i skuteczniejszych podejść do wytwarzania oprogramowania. W SPM nacisk położony jest na analizę jakości oprogramowania na podstawie zebranych danych o rzeczywistym działaniu aplikacji, a nie jej hipotetycznej wersji.

SPM korzysta z narzędzi metodycznych i informatycznych, z logów, dzienników zdarzeń i innych technik umożliwiających zebranie konkretnych, mierzalnych informacji. Na podstawie tych informacji SPM umożliwia zoptymalizowanie najważniejszych kryteriów jakości procesu wytwarzania aplikacji. SPM optymalizuje wydajność zespołu programistów, jego produktywność, a także efektywność. W SPM wyszczególnia się najistotniejsze etapy tworzenia oprogramowania dla biznesu, eliminuje wąskie gardła, a także wspiera budowę modeli procesów biznesowych, by w przyszłości nie popełniać tych samych błędów. Może to dotyczyć wszystkich zespołów w firmie, które uczą się na podstawie swoich doświadczeń. Dzięki temu szyte na miarę oprogramowanie jest coraz lepsze, zespoły programistów bardziej zmotywowane, a budżet nie przepalany.

SPM – dlaczego warto?

Firmy, które wdrażają w swoje procedury SPM (lub zatrudniają specjalistów od tego), wielokrotnie zyskują. Wytwarzanie oprogramowania łatwo porównać do zamkniętego pudełka puzzli wręczanych w prezencie, które każdy chce udekorować, ale zapomina sprawdzić, co tak naprawdę jest w środku. Software Process Mining pomaga zajrzeć do tego pudełka i uporządkować znajdujące się w nim elementy w jeden piękny spójny obrazek.

Główną i najistotniejszą zaletą Software Process Mining jest praca na prawdziwych, a nie hipotetycznych danych – dlatego pierwszym procesem SPM jest zbieranie surowych danych. Dopiero potem można przejść do kolejnych faz procesu, czyli odkrywania, poprawy i monitorowania.

Dzięki SPM zespoły programistyczne mogą ze sobą współpracować, a dobre praktyki wdrażane są w całej firmie. SPM ułatwia programistom pracę, wychwytując trudności i wąskie gardła, a także pomagając w zarządzaniu długiem technicznym. Dzięki temu developerzy mogą skupić się na pisaniu jak najlepszego kodu.

Jak wygląda proces SPM?

Firma wdrażająca SPM musi znać szczegóły całego procesu. Składają się na niego cztery kluczowe etapy.

Etap 1 SPM: zbieranie surowych danych

Im szybciej developerzy zdecydują się na zbieranie danych o aplikacji, tym lepiej – nie tylko z perspektywy SPM, ale też naprawiania trudnych do zlokalizowania bugów i analizy zachowania klientów.

W Software Process Mining zbieranie surowych danych z aplikacji, na przykład z logów, stanowi podstawę kolejnych działań. W zależności od języka, w którym aplikacja powstaje, mogą być różne metody zarządzanie SPM, dlatego istotne jest, by ten etap wdrażał ktoś, kto się zna na temacie i wie na czym polega późniejsza analiza danych.

Etap 2 SPM: odkrywanie

Celem drugiego etapu SPM, czyli Odkrywania, jest odkrycie obszarów problemowych w kodzie. Na tym etapie znajdowane są sekcje, które powodują dług technologiczny i inne problemy. Także tutaj wykrywane są problemy w zarządzaniu zespołem programistów czy też procesami biznesowymi.

A jak dokładnie odkrywanie wygląda? Wykorzystywane jest w tym celu oprogramowanie do analizy danych, na przykład wspomagane sztuczną inteligencją. Dane z pierwszego etapu SPM są przetwarzane, oprogramowanie lub człowiek wylicza na podstawie wyników wskaźniki KPI i przygotowuje zrozumiałe dla człowieka wizualizacje.

Etap 3 SPM: poprawa

Jak łatwo się domyślić po nazwie, trzeci etap polega na wdrażaniu zmian mających poprawić działanie aplikacji i zespołu developerów. Tutaj usuwane są wszystkie problemy powodujące spadki wydajnościowe i produktywności, na przykład kod osierocony, kod o wysokim ryzyku i inne.

Etap 4 SMP: monitorowanie

W ostatnim z etapów następuje monitorowanie wyników i obserwowanie, czy wszystkie dobre praktyki są utrzymywane. To jednak nie koniec działania specjalistów od Software Process Mining – ponieważ kod aplikacji biznesowej jest nieustannie rozwijany, to SPM powinien identyfikować nowe trudności i dostarczać możliwość ulepszeń.

Zastosowania SPM

Software Process Mining (SPM) przydaje się w każdym biznesie i w każdej aplikacji. Tam, gdzie wytwarzane jest oprogramowanie, tam pojawiają się trudności związane z jego rozwojem. Szczególnie istotne jest stosowanie praktyk SPM w aplikacjach wysokiego ryzyka, od których prawidłowego działania zależy ludzkie życie. Ale nie tylko! Prawidłowo wprowadzone SPM pomoże każdej firmie, ponieważ podpowie jak zarządzać kodem, by nie przepalać budżetu. A właśnie ograniczenia budżetowe są jedną z najczęściej spotykanych blokad, gdy mowa o wytwarzaniu oprogramowania.

SPM dla każdego biznesu

Rola oprogramowania w każdym biznesie rośnie, a zarządzanie kodem, nawet jeśli jeszcze nie nastręcza trudności, w przyszłości na pewno będzie. SPM nie tylko pomaga uratować biznes, gdy problemy już się nawarstwiają, ale też wprowadza dobre praktyki, by ich uniknąć. Wczesna wdrożenie zasad SPM i umożliwienie aplikacjom zbierania danych zaprocentuje w przyszłości.

Brak komentarzy

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

Krzysztof Sell

CEO

CEO Investcore, od wielu lat zarządza projektami i wdraża nowoczesne technologie w organizacjach. Zajmuje się nie tylko kontaktami biznesowymi, ale także bierze czynny udział w procesach projektowych i posiada szeroką wiedzę z zakresu produkcji oprogramowania.

Newsletter