Low-code - szybsze projektowanie i wdrażanie aplikacji oraz systemów IT.

Według Forrester przed 2022 r. platformy low-code osiągną wartość 21.2 miliarda dolarów. Z kolei Gartner prognozuje, że platformy low-code przed 2024 r. będą stanowić 65% rynku IT i rozwoju oprogramowania.

Low-code wydaje się być długo oczekiwanym i optymalnym rozwiązaniem dla przedsiębiorców, ponieważ dzięki niemu sami bezpośrednio biorą udział w projektowaniu i implementacji stworzonego przez siebie rozwiązania. Tym samym kanon narzędzi wspierających biznes powiększa się o kolejną innowacyjną kategorię rozwiązań.


 

Co to jest Low-Code?

Chcąc odnaleźć w sieci publikacje na temat low-code natkniemy się najczęściej na takie, które opisują oprogramowanie low-code (ang. low-code software) jak również cyfrowe platformy low-code (ang. LCDP - Low Code Digital Platform). Są to narzędzia, które wykorzystują zupełnie nowy sposób programowania. Low-code programming. Oznacza on dosłownie programowanie danego rozwiązania IT z użyciem niewielkiej ilości kodu.

To objaśnienie jednak może wydawać mało zrozumiałe, dlatego warto zestawić je z tradycyjnym sposobem tworzenia oprogramowania, aby wszystko stało się jasne.
 

Standardowe programowanie

Tworzenie strony internetowej, aplikacji dedykowanej czy systemu IT rozpoczyna po zaakceptowaniu makiety lub prototypu projektu przez Klienta. Najpierw planowany jest harmonogram prac, aż w końcu do akcji wkraczają inżynierowie oprogramowania oraz dedykowany zespół programistów.

Jednym z wczesnych etapów programowania jest właśnie pisanie kodu źródłowego. Aby powstał np. prosty formularz kontaktu, deweloper musi napisać kod opisujący każdy element z jakiego składa formularz. W kodzie zawarte są również (umieszczone inline lub zaczytywane z zewnętrznego pliku) informacje o formatowaniu takiego formularza, m.in:

  • jego wymiary, kolorystyka, dostępne obramowanie,
  • jak będzie wyświetlany tekst (font, rozmiar, kolor, styl, odstępy),
  • w jaki sposób będzie położony w stosunku do pozostałych elementów, np. nagłówków czy marginesów strony www.

Tak przygotowany formularz widzimy jako użytkownicy końcowi. To jednak nie wszystko, ponieważ należy zaprogramować jeszcze:

  • rodzaje pól formularza i sposób przetwarzania ich zawartości,
  • reguły określające poprawność wprowadzonych danych,
  • dodatkowe przyciski akcji (np. dołącz plik, Wyślij),
  • zależności pomiędzy nimi.

W przypadku pola, deweloper programuje w jaki sposób powinno zostać uzupełnione oraz co stanie się, gdy te warunki zostaną lub nie zostaną spełnione przez osobę uzupełniającą formularz.

Przykłady reguł programowania pól formularza:

  • pola obowiązkowe tradycyjnie oznakowane są znakiem "*",
  • pole do wpisania adresu e-mail zawsze powinno zawierać symbol "@",
  • podobnie jest, gdy usiłujemy zmienić hasło – w tym polu, programista już wcześniej określił minimalną ilość znaków oraz jakie znaki specjalne powinno zawierać lub które z nich są niedozwolone. Po spełnieniu tych warunków, będziemy mogli je zmienić – w innym wypadku otrzymamy komunikat o niepowodzeniu,
  • pola RODO, które użytkownik zaznacza, aby wyrazić zgodę na przetwarzania danych osobowych w określonym celu.

Formatowanie omówionego formularza jest dziś półautomatycznym procesem. Programista nie musi pisać całego kodu źródłowego a może wstawić już gotowy komponent (np. tabelę). Z kolei, aby zrealizować daną funkcją może wykorzystać konsolę, która podpowie mu jaką część kodu wpisać.

Mimo tych udogodnień, proces implementacji jest nadal czasochłonny, w szczególności w przypadku bardziej skomplikowanych aplikacji czy systemów. Podobnie jest w przypadku integrowania ze sobą systemów od różnych dostawców. Wymagane jest wówczas zaprogramowanie specjalnego łącznika API (Application Programming Interface) pomiędzy nimi.

Dodatkową przeszkodą jest również brak wystarczającej liczby programistów na rynku IT, w stosunku do obecnego zapotrzebowania.

 

Programowanie low-code

Celem low-code jest skrócenie czasu prac programistycznych i koncepcyjnych oraz jednocześnie przejście z fazy projektowania do wdrażania cyfrowego rozwiązania.

Jedną z największych zalet tego rozwiązania jest fakt, iż od samego początku przyjmujemy rolę projektanta, nawet jeśli nie posiadamy typowo programistycznej wiedzy czy umiejętności. Do dyspozycji mamy graficzny interfejs użytkownika (UI, User Interface), taki jak w np. programach graficznych czy chociażby w popularnych CMSach.

Z poziomu panelu wybieramy odpowiednie komponenty, które będą częścią tworzonego przez nas projektu. Dla przykładu będzie on wymagał stworzenia np. wniosku urlopowego do uzupełnienia. Wówczas sięgamy po już gotowe szablony znajdujące się w panelu użytkownika, np. w postaci formularza dynamicznego i modyfikujemy je według własnych potrzeb.

Korzystając z interfejsu projektujemy wygląd wniosku, zmieniamy kolorystkę formularza, font oraz dodajemy kolejne pola. Na pierwszy rzut oka przypomina to narzędzia do budowania formularzy, jednak zachodzi tu istotna różnica. Każde z pól formularza możemy ‘zaprogramować’ tak, jak programista piszący kod źródłowy, jednak w sposób bardziej intuicyjny – zaznaczając pole tekstowe oraz wybierając z listy rozwijalnej odpowiednią funkcję.

Przykłady programowania wniosku:

  • zdefiniowanie pola obowiązkowego – zazwyczaj ‘programujemy’ zaznaczając np. TAK / NIE przy funkcji, co jest odpowiednikiem wstawienia przez programistę w kodzie źródłowym elementu required.
  • dodanie załącznika, określenie rodzaju pliku i jego wagi. Podobnie jest i tutaj - możemy zaznaczyć, czy chcemy umożliwić końcowemu użytkownikowi dodanie pliku, jego typu (PDF, docx) oraz rozmiaru np. do 20MB.
  • wstawienie pola np. powodu reklamacji oraz dodanie z listy rozwijalnej, która umożliwi wybranej jednej lub kilku opcji.

Poza możliwością tworzenia formularzy, platformy posiadają również narzędzia BPM (Business Process Management) / Workflow do zarządzania i planowania procesów oraz obiegów. Dzięki nim możliwe jest proste rozrysowanie danego procesu, zależności pomiędzy wszystkimi jego elementami oraz zdefiniowanie warunków wpływających na proces.

Firmy często wykorzystują te narzędzia podczas planowania systemów, po to, aby firma wdrożeniowa miała pełny obraz tego, jak działają i łączą się procesy w organizacji. Aby to wykonać, należy najpierw określić główne etapy dla danego procesu, a następnie umieścić je w formie elementów na takim diagramie.

Przykładowe etapy prostego procesu na bazie wniosku reklamacyjnego:

  • wypełnienie i wysłanie wniosku reklamacyjnego przez Klienta:
  • nadejście wniosku, jego klasyfikacja i ewidencja w systemie (przypisanie numeru referencyjnego),
  • automatyczne potwierdzenie e-mail o przyjęciu zgłoszenia,
  • rozpatrzenie wniosku i wydanie decyzji,
  • informacja zwrotna do Klienta (wynik reklamacji).

Na samym początku będzie on po prostu statycznym schematem, posiadającym główne etapy. Następnie przechodzimy do programowania holistycznej logiki biznesowej i zależności pomiędzy elementami w schemacie – projektujemy workflow. Nadajemy im kierunek przepływu, określamy jakie warunki powinny zostać spełnione, aby móc przejść do kolejnych etapów, a także co powinno się wydarzyć przy przejściu do kolejnego etapu.

Wykorzystujemy w tym celu specjalną sekcję w panelu użytkownika, który posiada już wcześniej zdefiniowane funkcje – akcje, które zostaną zrealizowane po spełnieniu, bądź niespełnieniu danych warunków.

Przykładowe akcje i zależności:

1. Wypełnianie wniosku przez Klienta:

  • pozytywna weryfikacja: Klient poprawnie uzupełnił wniosek, dodał załącznik w odpowiednim formacie, przycisk „Wyślij” jest aktywny.
  • negatywna weryfikacja: np. Klient nie wybrał powodu reklamacji, wyświetlony zostaje odpowiedni komunikat z prośbą o pełne uzupełnienie wniosku.

2. Ewidencja wniosku przesłanego przez Klienta w systemie:

  • klasyfikacja i wstępna ewidencja wniosku: zostaje przypisany do odpowiedniej kategorii na podstawie wybranego powodu reklamacji, nadany zostaje numer zgłoszenia.
  • weryfikacja treści wniosku i próba automatycznego rozwiązania problemu na podstawie zbudowanej dotychczas byzy rozwiązań

3.  Przekazanie wniosku do dalszego obiegu:

  • wniosek zostaje przekazany od odpowiedniego działu,
  • w momencie przypisania osoby weryfikującej nadany zostaje status zgłoszenia,
  • do klienta zostaje wysłany e-mail, o statusie i możliwości jego śledzenia.

To zaledwie kilka prostych przykładów logiki biznesu dostępnych w formie low-code. Może się jednak zdarzyć, że nie znajdziemy potrzebnej akcji. Wówczas możemy najechać na dany element diagramu oraz wyświetlić ukryty kod źródłowy i zmodyfikować go tak, aby możliwe było zrealizowanie danej funkcji.

W ten sposób platformy low-code transformują tradycyjne, ale i czasochłonne programowanie w proces bardziej dynamiczny i dopasowany do potrzeb środowiska biznesowego. Zostały stworzone z myślą o koncentracji na projektowaniu procesów oraz dostarczaniu konkretnych rozwiązań.

Dany proces może zaprojektować zaledwie jedna osoba, która na co dzień operuje w środowisku biznesowym i posiada umiejętności z zakresu logiki biznesu. Ponadto wie, jak rozwiązywać problemy wykorzystując swoją praktyczną wiedzę w zestawieniu z określonymi zasobami IT organizacji.

Warto wiedzieć, że dla osób, które pełnią taką funkcję ukuto termin „Citizen Developer”, a zapotrzebowanie na specjalistów w tej dziedzinie stale rośnie.
 

Jakie projekty w low-code?

Nowy rodzaj programowania w zasadzie nie narzuca nam ograniczeń w tym zakresie.

Niezależnie w jakiej branży działamy, zaprojektujemy i wdrożymy m.in.:

  • pojedynczy formularz np. wniosek urlopowy czy reklamacyjny,
  • proces np. zbierania zamówień w organizacji oraz przesłania do zaufanego dostawcy,
  • prostą aplikację mobilną dla klientów, ale i rozbudowaną platformę eBOK (typu self-service),
  • pełnowymiarowe oprogramowanie zawierającego wszystkie powyżej wymienione elementy. 

Zarządzanie projektami MVP (Minimum Viable Product) oraz low-code to bardzo dobra kombinacja. Przykładowo, możliwe jest stworzenie prostej aplikacji dla Klientów do zgłaszania reklamacji oraz śledzenia statusu swojego zgłoszenia. W kolejnych etapach, dodanie kolejnej funkcji np. prostej ankiety badania zadowolenia Klienta, a następnie jej dalsze rozbudowywanie.

Ciekawym zastosowaniem projektowania low-codego jest tworzenie prostych aplikacji odpowiadających na wewnętrzne potrzeby firmy. Dzięki temu możliwe jest rozwiązywanie codziennych problemów oraz skracanie wykonywania czasochłonnych czynności, np. konsolidacja danych z wielu źródeł oraz raportowania. Skoroszyt Excel zawierający po prostu statyczne dane, może stać się prostą aplikacją, która przeanalizuje za nas dane i zapewni szybki dostęp do informacji.

Z kolei, jeśli korzystamy z zaawansowanego oprogramowania do raportowania sprzedaży, istnieje możliwość wyświetlania wskaźnika KPI czy innych danych w formie widżetu (aktualizującego się w czasie rzeczywistym). Może on być widoczny np. na stronie głównej w aplikacji dla przedstawicieli handlowych i stanowić informację zwrotną na temat wyników sprzedażowych.
 

Low-code w biznesie

Jak już wspomnieliśmy, optymalizacja pracy, czy szybkie tempo wypuszczania aplikacji na rynek przy niskich kosztach rozwoju aplikacji to realia dzisiejszego biznesu.

Czy zatem tradycyjne podejście do programowania odejdzie do lamusa, a low-code je zastąpi?

Należy zauważyć, że tradycyjne programowanie już teraz przechodzi ogromną transformację. Zaczyna opierać się na automatyzacji, a deweloperzy szukają coraz to nowych sposobów na optymalizację swojej pracy. Już teraz specjalizują się w programowaniu z wykorzystaniem Sztucznej Inteligencji, rozwiązaniami Power Business Intelligence czy IoT (Internet of Things). Już dziś samodzielnie zaprojektujmy prostą aplikację lub własnego chatbota np. dzięki rozwiązaniu Microsoft Power Apps, która jest low-codowym komponentem Power Platform.

Co więcej, organizacja Gartner promuje praktyki low-code nagradzając twórców tego typu platform i uważnie obserwując ich dalszy rozwój. Można również stwierdzić, że low-code jest w pewnym sensie kompromisem w programowaniu i zdecydowanie zmniejszył dotychczasowy dystans pomiędzy światem biznesu i IT.

Co możemy dla Ciebie zrobić?

×

Klienci o nas