Projektowanie Tworzenie Utrzymanie
i rozwój
Projektowanie
systemu informatycznego
Tworzenie
oprogramowania
Utrzymanie i rozwój
aplikacji biznesowych
Łukasz

Na czym polega utrzymanie i rozwój systemów biznesowych opowiada Łukasz Wycisk – inżynier oprogramowania w FINGO

Co dzieje się z aplikacją, gdy jest gotowa?

Fazę tworzenia aplikacji kończą wszechstronne testy. Ale trzeba pamiętać, że testy wykonujemy na bieżąco, po przygotowaniu każdej kolejnej części systemu. Robimy to na dwa sposoby: są to testy manualne oraz automatyczne.

Stosujemy też testy jednostkowe, które przygotowywane są przez developerów, tworzących oprogramowanie. Staramy się stosować metodykę TDD (ang. Test Driven Development), choć oczywiście jest to trudne i wymaga dużej dyscypliny przy tworzeniu oprogramowania. Podejście to oznacza, że każdy krótki cykl developmentu zakończony jest testem, którego wyniki definiują kolejne poprawki lub nowe funkcje oprogramowania. Unikamy za to podejścia TLD (ang. Test Last Development), czyli testowania całości kodu po jego napisaniu.

Kolejny etap to testy integracyjne, które sprawdzają spójność całego systemu.

Po testach oprogramowanie gotowe jest do przekazania Klientowi. Jak wygląda ten etap?

Po testach wewnętrznych przychodzi czas na sprawdzenie aplikacji w warunkach „bojowych”. Ponieważ z niektórych naszych rozwiązań pudełkowych korzysta kilkaset banków, przed każdym przekazaniem aktualizacji upewniamy się, że nie zawiera ona żadnych krytycznych błędów. Podczas codziennej pracy zdarza się jednak, że pojawiają się drobne niedociągnięcia. Sporadycznie zdarza się, że użytkownicy wyłapują ostatnie błędy i niedoskonałości, które pojawiają się w bardzo specyficznych warunkach. Tak trudnych, że ciężko byłoby je odtworzyć w warunkach laboratoryjnych.

Czy nie powoduje to niezadowolenia użytkowników?

Nie, jeśli błędów jest mało i są one od razu usuwane. Oczywiście pierwsza wersja oprogramowania musi dobrze działać i spełniać swoje funkcje, ale przy obecnej złożoności oprogramowania i różnorodności środowisk, z których korzystają użytkownicy, niedoskonałości oprogramowania są praktycznie nieuniknione. Ważne jest, by usunięcie zgłoszonych błędów trwało bardzo krótko. Takie podejście można zastosować świadomie, gdy ewentualne błędy w systemie mogą być szybko wyłapane i nie wpływają na wydajność pracy i wyniki firmy.

Czy oprócz samego oprogramowania Klient otrzymuje coś jeszcze?

Oczywiście wraz z aplikacją w ręce użytkowników trafia również dokumentacja. Bywa, że jest ona bardzo obszerna. W przypadku niektórych złożonych systemów liczy ona nawet kilkaset stron. Opisujemy każdą funkcjonalność krok po kroku, tak, aby użytkownicy mogli być samodzielni w swojej pracy. W przypadku mniej złożonych aplikacji dokumentacja jest odpowiednio krótsza. Dokumentację przygotowujemy standardowo po angielsku, jednak, jeśli Klient tego oczekuje, dostarczamy ją w dowolnym języku.

Kolejnym istotnym krokiem są szkolenia. Ich forma i czas trwania również zależą od rodzaju aplikacji. W przypadku, gdy nowa istotna funkcjonalność trafia do tysięcy użytkowników, organizujemy szkolenia zbiorcze. W każdym z takich warsztatów uczestniczą osoby z wielu firm, aby możliwe było przekazanie wiedzy jak największej liczbie użytkowników. Gdy aplikacja przygotowywana jest dla jednego Klienta, treningi przeprowadzamy najczęściej w jego siedzibie.

A co w sytuacji, gdy Klient oczekuje dalszego wsparcia?

Tworzenie oprogramowania bardzo rzadko kończy się po przekazaniu dokumentacji i zorganizowaniu szkoleń. Można powiedzieć, że to proces trwały. Dlatego wsparcie i rozwój aplikacji są ze sobą ściśle związane.

Serwis zbiera informacje o tym, z jakiego typu problemami najczęściej zgłaszają się użytkownicy systemu. Oprócz błędów w działaniu, użytkownicy pytają jak wykonać daną operację albo gdzie jest pole, w które należy wpisać dane. Jeśli te zgłoszenia powtarzają się, funkcjonalność poprawiamy tak, by sposób korzystania z aplikacji był prosty i czytelny dla użytkowników. Po takiej modyfikacji cykl rozpoczyna się od nowa. Kod poddany jest testom, zmiany dokumentujemy i, jeśli to konieczne, organizujemy szkolenia dla użytkowników.

Serwis zapewnia więc, że aplikacja nadąża za zmieniającym się światem.

Bez wsparcia i rozwoju aplikacja zacznie się starzeć i przestanie być atrakcyjna dla użytkowników. To jak z samochodem, który od lat nie odwiedził warsztatu. Jest coraz mniej przyjemny i bezpieczny w jeździe, traci na wartości, a inni kierowcy śmieją się, że z rury wydechowej buchają kłęby czarnego dymu. Warto jednak go serwisować, zamiast co dwa, trzy lata kupować nowy.

Właśnie dlatego usługa serwisowa obejmuje także rozwój technologiczny aplikacji. Nawet gdy nie dodajemy nowych funkcjonalności dbamy o to, by oprogramowanie dostosowane było do szybko zmieniającego się środowiska informatycznego. Zmiany te dotyczą przede wszystkim systemów operacyjnych, przeglądarek, a także zmian w regulacjach prawnych, które należy uwzględnić w oprogramowaniu.

Czy możesz podać przykład?

Dobrym przykładem jest standard XBRL, na którym oparte są niektóre tworzone przez nas aplikacje. O tym, że pojawi się nowy standard XBRL wiedzieliśmy ponad 2 lata wcześniej niż nastąpiło jego oficjalne uruchomienie. Wtedy też rozpoczęliśmy pracę nad dostosowaniem naszych rozwiązań do nowego standardu.

Jak wygląda dalszy rozwój oprogramowania?

Często granica między etapem tworzenia aplikacji i jej dalszym rozwojem jest bardzo płynna. Szczególnie w metodykach zwinnych. Gdy jedna wersja aplikacji uzyskuje status gotowej do pracy i trafia do użytkowników, w tym samym czasie powstaje kolejna wersja, wzbogacona o dodatkowe funkcjonalności. Największym źródłem zapotrzebowania na nowe funkcjonalności są menedżerowie i użytkownicy. Ci pierwsi, bo cały czas szukają możliwości wzrostu efektywności i jakości pracy, a ci drudzy, bo korzystając z aplikacji odkrywają swoje kolejne potrzeby. Proces rozwoju aplikacji jest w praktyce nieunikniony.

Co dzieje się, gdy aplikacje nie są poddane rozwojowi?

Aplikacja nierozwijana często umiera. Zdarza się tak, że oprogramowanie zatrzymuje się technologicznie, nie jest aktualizowane i rozwijane. W pewnym momencie aplikacja nie nadaje się już do tego, by ją ratować. Klient musi zdecydować się na przygotowanie nowej. Można się oczywiście domyślać, jaki ma to wpływ na koszty. W przypadku naszych Klientów staramy się nie doprowadzać to takiej sytuacji.

Kontakt

FINGO sp. z o.o.
  • Plac Powstańców Śląskich 7
    53-329 Wrocław, Polska
  • godz. 8:00 – 16:00
  • NIP 8942683871
FINGO sp. z o.o. z siedzibą we Wrocławiu, Plac Powstańców Śląskich 7, 53-329 Wrocław, zarejestrowana w Sądzie Rejonowym Wrocław-Fabryczna we Wrocławiu, VI Wydział Gospodarczy Krajowego Rejestru Sądowego pod nr KRS 0000020323. NIP 8942683871, REGON 932670710. Kapitał zakładowy 50.000,00 zł w pełni opłacony.
Używamy plików cookies, aby zwiększyć wygodę użytkownika strony. Brak zmiany ustawień przeglądarki oznacza na to zgodę.
Więcej