Czy już warto wdrażać controlling w chmurze?
(Artykuł został opublikowany w miesięczniku „Controlling i Rachunkowość Zarządcza” nr 5-6/2020, autor Radosław Kozieja).
Czy rozwiązania chmurowe wspierające controlling dojrzały na tyle, że można je stawiać na jednym poziomie z rozwiązaniami on-premises? W jakich przypadkach warto brać je pod uwagę, a kiedy zdecydowanie kierunkować się na rozwiązania tradycyjne? Jak można wykorzystać podejście hybrydowe tak, aby czerpać z korzyści oferowanych przez oba rodzaje rozwiązań? Na te oraz inne pytania postaramy się odpowiedzieć w poniższym artykule.
Systemy controllingowe w wersji chmurowej nie pojawiły się wczoraj. Są rozwijane od lat, co znaczy, że fazę beta mają za sobą – dojrzały, i w chwili obecne możemy traktować je jako alternatywę dla ich odpowiedników tradycyjnych. Tradycyjnych? To znaczy opartych na wykupieniu licencji, jak na przykład Infor, Oracle czy Microsoft i realizacji wszystkich pozostałych procesów (wdrożenie, maintenance) z wykorzystaniem własnych zasobów IT. Poszczególne etapy realizacji takiego projektu, jak wdrożenie czy późniejsza opieka nad systemem, możemy oczywiście powierzyć zaufanemu zewnętrznemu partnerowi, jednak nie to jest tematem niniejszego artykułu.
Do oferty oprogramowania w chmurze można znaleźć analogię w transporcie. Po pierwsze, oba rynki dynamicznie się rozwijają. Po drugie, dostępnych jest bardzo wiele możliwości tymczasowego wynajęcia środka transportu – prywatnej taksówki jak Uber lub Bolt, auta na minuty czy nawet hulajnogi elektrycznej. Nie musimy być zatem właścicielem, żeby przemieszczać się z punktu A do B. Podobnie rozwiązania chmurowe wspierają biznes. Podejście Software as a Service (SaaS) pozwala nam realizować procesy bez konieczności posiadania własnej infrastruktury IT czy pracowników technicznych. Kuszące, prawda? Na pierwszy rzut oka na pewno, jednak nie sprawdzi się dla każdego i w każdym przypadku. Przyjrzyjmy się zatem podstawowym obszarom, które pozwolą nam lepiej podjąć decyzję czy wybrać rozwiązanie tradycyjne czy chmurowe. Pominę celowo kwestie kosztów oraz bezpieczeństwa obu rozwiązań, ponieważ były one omawiane wielokrotnie w kontekście rozwiązań chmurowych i dotyczą nie tylko systemów controllingowych. Są to ponadto tematy na tyle szerokie, że można by poświęcić im oddzielny, obszerny materiał.
Porównując, zacznijmy oczywiście od tego, co kluczowe dla użytkowników, czyli funkcjonalności. W zakresie możliwości obliczeniowych, modelowania czy prezentowania danych praktycznie nie ma istotnych różnic między podstawowymi wersjami systemów, oferowanymi w chmurze czy tradycyjnie. Dla większości przypadków oba podejścia zrealizują te same zadania, w taki sam sposób. Analizując funkcjonalności potencjalnych systemów, ważne jest jednak wcześniejsze i możliwie dokładnie określenie naszych oczekiwań. Następnie powinniśmy zweryfikować, czy i w jakim stopniu poszczególne wersje realizują założenia i cele biznesowe w kontekście naszych szczegółowych wymagań. Zdarzają się sytuacje, w których ten element może okazać decydujący i nie będzie potrzeby dalszej analizy
Wszelkie ekstrema w wersji chmurowej będą z reguły źle funkcjonowały. Usługa w chmurze została przygotowana tak, aby spełniać typowe wymagania większości typowych klientów. Jest więc pewna grupa skrajnych projektów, które efektywniej jest realizować tradycyjnie lub jest to jedyna dostępna możliwość. Dla przykładu: dla 5-10 użytkowników wersja on-premises może być zbyt droga, złożona i niedostatecznie elastyczna. Z drugiej strony, kiedy mamy proces wymagający ogromnej mocy obliczeniowej i chcemy codziennie przeliczać prognozy dla milionów klientów czy produktów, wersja chmurowa aplikacji może okazać się niedostatecznie wydajna. Realizacja takich ponadstandardowych oczekiwań może się także okazać zdecydowanie droższa w chmurze. Pod względem elastyczności i dopasowania do specyficznych, nietypowych wymagań wygrywa zdecydowanie wersja on-premises. Natura rozwiązań chmurowych opiera się na założeniu, że każdy klient ma dostęp do jednej wersji systemu, opierającego się na pojedynczej wersji kodu. Może go ponadto parametryzować w ściśle określonym, narzuconym przez producenta, zakresie. System on-premises, instalowany na własnych serwerach, możemy oczywiście dużo mocniej modyfikować do własnych potrzeb. W takiej sytuacji pamiętajmy jednak, że zdecydowanie zwiększamy koszty projektu, a następnie jego utrzymania.
Kolejną kwestią wartą rozważenia, kiedy zastanawiamy się nad wyborem – system on-premises czy chmura są możliwości integracji. Czy potrzebujemy integrować rozwiązanie chmurowe z innymi systemami? W jaki sposób? Oczywiście po raz kolejny wersja tradycyjna będzie bardziej elastyczna, jednak w przeciągu kolejnych lat różnica powinna się bardzo zacierać, jeśli nie całkowicie zniknąć. Dostawcy oprogramowania w chmurze stawiają aktualnie duży nacisk na rozwój możliwości integracji swoich produktów. Jeśli jednak nasza firma posiada wiele systemów działających lokalnie i chcemy z nimi zintegrować software, wspierający pracę controllingu to podejście tradycyjne może być lepszym, jeśli nie jedynym wyborem. Jeśli zależy nam, żeby projekt zrealizować możliwie najszybciej to przewagę zyskuje usługa dostępna w chmurze. Możemy ją uruchomić praktycznie od razu i wdrożyć nawet w ciągu kilkunastu dni roboczych. Rozpoczęcie takiego projektu nie obejmuje stałych etapów wdrożenia tradycyjnego, jak budowa architektury, instalacja samego systemu. Zdecydowanie ograniczona jest także możliwość popełnienia jakiegokolwiek błędu, ponieważ operujemy na rozwiązaniu dostępnym „out of the box”. Co pozwala na znaczne skrócenie okresów testowania i uruchomienia systemu. Kolejną przewagą wyboru rozwiązania w modelu SaaS (Software as a Service) będą możliwości współdzielenia projektu w firmach czy zespołach rozproszonych terytorialnie. Aplikacja chmurowa będzie dostępna od razu wszędzie tam, gdzie jest dostępny internet, czego nie możemy powiedzieć o systemie tradycyjnym.
W sytuacji, kiedy decydujemy się na system lokalny musimy pamiętać, że opieka nad nim leży całkowicie po naszej stronie. Możemy ją realizować z wykorzystaniem własnych zasobów IT lub powierzyć zewnętrznemu partnerowi. W przypadku wyboru chmury większość obowiązków związanych z maintenance bierze na siebie firma oferująca usługę. Jest to niewątpliwie sytuacja bardziej wygodna. Nie musimy martwić się dostępnością naszych serwerów czy aktualizacją oprogramowania. Aplikacja powinna być po prostu dostępna w każdym miejscu i czasie. Oba podejścia różnią także kwestie administracyjne. Zadania bardzo proste w przypadku wersji obu podejść będą jednakowo proste jednak bardziej skomplikowane działania jak dodanie nietypowego elementu czy funkcjonalności do raportu w przypadku usługi dostępnej w chmurze mogą wymagać zdecydowanie bardziej skomplikowanych czynności.
System dostępny w chmurze może zawierać ograniczenia, jeśli chodzi o ilość przechowywanych danych. Zazwyczaj, wielkość dostępnego miejsca będzie zależna od wybranego pakietu. Należy o tym pamiętać, gdyż koszty dodatkowych przestrzeni dyskowych może dla wersji chmurowej oznaczać znaczne zwiększenie kosztów w stosunku do początkowych kosztów usługi. Dla rozwiązań on-premises możemy zazwyczaj taniej przechowywać bardzo duże ilości danych. To zarazem zaleta, jak i wada, ponieważ z jednej strony mamy większą elastyczność, z drugiej jednak zarządzanie i obsługa całego procesu leży w gestii naszej firmy. Identycznie jest z kopiami zapasowymi danych. W wersji SaaS to usługodawca dba o nie, w razie jakichkolwiek nieprawidłowości zajmuje się ich rozwiązywaniem. W wersji utrzymywanej na własnych serwerach czy we własnej chmurze to oczywiście my odpowiadamy za tego typu kwestie. Aktualnie często powierza się zewnętrznym specjalistom dobrze wystandaryzowane lub mniej ważne z punktu widzenia prowadzenia biznesu obszary działalności firmy tak, aby skupiać się na tych kluczowych, generujących zysk. W tę strategię idealnie wpisują się usługi dostępne w chmurze. Mogą być one także jedyną opcją, jeśli strategia rozwoju IT przedsiębiorstwa jest ukierunkowana na chmurę. Warto także zwrócić uwagę, że aktualnie w chmurowych wersjach systemów pojawiają się elementy, których nie ma i nie będzie w wersjach tradycyjnych. Dlaczego? Ponieważ chmura to kierunek, w którym zmierza współczesne IT. Globalne firmy inwestują miliardy dolarów we wspominaną technologię, tak aby była ona możliwie najszerzej wykorzystywana. W przyszłości trend ten będzie kontynuowany i w pewnym momencie nastąpi chwila, kiedy w większości obszarów, każdy software będzie oferowany tylko i wyłącznie w formie usługi SaaS. Oczywiście przejście nie będzie gwałtowne. Wiele firm, szczególnie większych korporacji, korzysta z wersji on-premises i usługodawcy muszą również im zapewnić odpowiedni poziom wsparcia.
Nie zawsze trzeba jednak wybierać pomiędzy zaletami oferowanymi przez on-premises a chmurą. Architekturę projektu przygotować można tak, aby korzystać z obu rozwiązań jednocześnie. Jest to tak zwane podejście hybrydowe. Dla przykładu pewnej, bardziej wymagającej grupie użytkowników, jak zaawansowani analitycy, możemy zapewnić lokalny dostęp do bardzo niestandardowych funkcjonalności. Natomiast użytkownikom, od których będziemy jedynie zbierali dane, wyposażyć w prostsze systemy dostępne w chmurze. Podejście takie będzie zdecydowanie bardziej efektywne kosztowo oraz biznesowo, niż wykorzystanie wyłącznie chmury czy instalacji lokalnej.
Decyzja o wyborze wersji nie musi być decyzją niezmienną w czasie. Często możemy początkowo wybrać system lokalny, a następnie dokonać migracji do wersji chmurowej. Nie powinno być także zwykle problemu z migracją w drugą stronę, choć jest to raczej rzadko stosowany kierunek i ilość potencjalnych problemów jest większa. Warto również pamiętać o wspomnianym wcześniej podejściu hybrydowym. Polega ono na tym, że nabywając standardową licencję na produkt możemy zainstalować go nie lokalnie, ale we własnej chmurze. Przez określenie we własnej chmurze rozumiem chmurę prywatną bądź w ogólnodostępną, na przykład Amazon Web Services czy Microsoft Azure.
Podsumowując, najsilniejszymi wskazaniami uzasadniającymi wybór sytemu lokalnego są: ponadstandardowe wymagania i modyfikacje czy duży zakres i różnorodność integracji z innymi lokalnymi systemami. Warto także postawić na rozwiązania on-premises w sytuacji, kiedy posiadamy już odpowiednie zasoby IT w organizacji lub sprawdzonego partnera wdrożeniowego. Podczas wyboru partnera zwracajmy uwagę na portfolio zrealizowanych z sukcesem projektów oraz znajomość branży, w której działamy. Ten ostatni wyróżnik nie powinien być kluczowy, jednak na pewno zdecydowanie przyśpieszy prace projektowe. Za wyborem chmury będą z kolei przemawiały: strategia IT, dążąca do eliminowania zasobów lokalnych i outsourcingu wybranych obszarów działalności przedsiębiorstwa czy sytuacja, kiedy jesteśmy zmuszeni wdrożyć system możliwie najszybciej. Chmura jest także dobrą opcją w przypadku firm czy zespołów charakteryzujących się dużym rozproszeniem terytorialnym. Rozwiązania SaaS i hybrydowe dobrze sprawdzą się także w przypadku, kiedy nasze wymagania wydajnościowe oraz ilości użytkowników są zmienne w czasie. Nie musimy wtedy przez cały czas utrzymywać większego systemu w wersji on-premises, a odpowiednio dopasowujemy wykorzystanie chmury do naszych potrzeb w danym czasie. Wybór rozwiązania, dostępnego w chmurze może okazać się także zdecydowanie korzystniejszy w przypadku, kiedy chcemy przetestować produkt. Nie ponosimy wtedy kosztów związanych z wdrożeniem, a jedynie uiszczamy miesięczną opłatę za użytkowanie usługi. Testów możemy dokonać także zdecydowanie szybciej, ponieważ produkt mamy dostępny natychmiast bez konieczności instalacji.