Low-code / no-code - przyszłość tworzenia aplikacji?

Na rynku znajdziemy wiele platform low-code/no-code, które pozwalają na tworzenie oprogramowania bez konieczności znajomości j. programistycznego. Coraz więcej firm wykorzystuje takie platformy i nie widzi potrzeby zatrudniania programistów. Ale czy rzeczywiście jest to przyszłość rynku? Wyjaśniamy zalety i wady rozwiązań tego rodzaju.

Wiele firm zintensyfikowało prace nad cyfrową transformacją już w 2019 r., jednak pandemia COVID-19 wymusiła jeszcze większe przyspieszenie tych działań. Organizacje muszą dziś robić więcej za mniej, rozszerzać i optymalizować istniejące zasoby, jak również reagować na zmieniające się warunki. Sytuacja rynkowa sprawiła, że przedsiębiorstwa musiały też często wstrzymać prace nad nowymi projektami programistycznymi, ponieważ wymagały one zbyt dużych nakładów finansowych. Niektóre firmy zdecydowały jednak, że przetestują platformy low-code i no-code. Zapewniają one możliwość tworzenia aplikacji i narzędzi biznesowych bez konieczności zatrudniania programistów – przynajmniej w większości przypadków. Dzięki temu odpowiednie rozwiązania mogą tworzyć te osoby, które faktycznie ich potrzebują, np. analitycy, administratorzy czy specjaliści ds. marketingu.

Low-code a no-code

Platformy no-code adresowane są przede wszystkim do użytkowników biznesowych, natomiast low-code – do programistów, którzy chcą zaoszczędzić czas i obniżyć koszty realizacji danego projektu.

Platformy low-code wymagają od użytkownika podstawowej wiedzy na temat programowania, natomiast no-code to rozwiązania w 100 proc. oparte na interfejsach „przeciągnij i upuść”, zupełnie niewymagające wiedzy programistycznej. Przykładem platformy low-code może być platforma nAxiom, która dzięki zastosowaniu technologii wizualnego projektowania, nie wymaga specjalistycznej wiedzy programistycznej. Tworzone za pomocą platformy low-code aplikacje biznesowe, można łatwo budować, modyfikować oraz prototypować. Platforma umożliwia bezpieczną rozbudowę i konsolidację istniejących systemów.

Zobacz również:

  • Potencjał niskiego kodu
  • Niewiele projektów open source jest aktywnie utrzymywanych
  • Premiera GitHub Copilot Enterprise

Firmy często używają terminów low-code i no-code zamiennie, ponieważ na platformach low-code możemy realizować te same projekty, jak na no-code. Z tego powodu nierzadko mówi się o rozwiązaniach low-code, nawet jeśli mamy na myśli no-code.

Po co firmie platforma low-code?

Łukasz Wróbel, wiceprezes w spółce WEBCON

Rosnąca potrzeba tworzenia aplikacji, w zestawieniu ze zbyt niską w stosunku do popytu dostępnością programistów, owocuje coraz większą ilością narzędzi, których zadaniem jest umożliwienie budowania rozwiązań przy mocnym ograniczeniu lub wręcz wyeliminowaniu konieczności programowania. Bez kodu możemy tworzyć dziś strony internetowe, narzędzia e-commerce, wyspecjalizowane aplikacje mobilne, narzędzia zarządzające procesami biznesowymi i automatyzujące realizację zadań. Rozmawiamy z wiceprezesem krakowskiej spółki WEBCON, która platformę low-code tworzy od 14 lat.

W jaki sposób narzędzia low-code wykorzystują Państwa klienci?

To szerokie pytanie, ale najogólniej rzecz biorąc, traktują platformę jako podstawowe środowisko, w którym tworzą i uruchamiają aplikacje biznesowe. To, co robią konkretne aplikacje, zależy już bardzo mocno od branży i klienta. Wspólnym mianownikiem jest to, że kiedy klient nie może znaleźć odpowiadającego mu rozwiązania na rynku lub z jakiegoś powodu nie chce budować dedykowanego „modułu” wokół swojego systemu ERP, czy też tworzyć dedykowanej aplikacji, tworzy takie rozwiązanie na naszej platformie. Z jednej strony są to stosunkowo proste aplikacje (takie jak elektroniczny obieg faktur czy wniosków urlopowych), z drugiej zaawansowane, mocno skomplikowane systemy (np. do obsługi wniosków kredytowych, procesu otwierania nowych salonów sprzedaży czy wprowadzania na rynek nowych produktów).

Za pomocą platform low-code tworzone są również aplikacje krytyczne biznesowo?

Tak. Platformy zorientowane na poważne zastosowania oferują skalowalność, wydajność, bezpieczeństwo i dokumentację na poziomie, którego zapewnienie w ramach aplikacji pisanej na zamówienie byłoby bardzo kosztowne i trwało długo. Co więcej, ten poziom zapewniają zarówno wtedy, gdy budujemy prosty prototyp, poświęcając mu kilka godzin pracy, jak i wtedy, gdy budowane rozwiązanie wymaga kilkudziesięciu dni pracy zespołu. Ważniejszy jest jednak inny powód, dla którego właśnie te krytycznie istotne narzędzia klienci przenoszą na naszą platformę – możliwość szybkiego, łatwego i bezpiecznego rozbudowywania ich o nowe funkcjonalności i modyfikowania dotychczasowego działania. Szybkość reagowania na zmiany wymagań to pięta achillesowa wielu rozwiązań a my skutecznie adresujemy ten problem.

Czy obietnica budowy aplikacji bez kodowania ma pokrycie w rzeczywistości?

Jasne. Proste aplikacje można zbudować nawet za pomocą narzędzi no-code takich jak Excel. Excel, który ma możliwość dodania skryptów VBA, to już low-code. W naszym przypadku konieczność wykorzystania kodu .NET pojawia się ekstremalnie rzadko. Ale sama możliwość skorzystania z usług programisty jest często decydująca – pozwala mieć pewność, że jakkolwiek nie rozbudowałyby się wymagania biznesu, projekt zawsze da się zrealizować za pomocą tej samej platformy. A to oznacza, że znakomitą większość aplikacji biznesowych IT może dostarczyć za pomocą jednej platformy aplikacyjnej, jednego zestawu kompetencji, w oparciu o jedną infrastrukturę, w jednym interfejsie użytkownika… i tak dalej.

Jakie nowe możliwości otwiera technologia low-code?

Przede wszystkim umożliwia szybkie budowanie aplikacji w modelu MVP (Minimum Viable Product). Podejście typu Rapid Prototyping jest coraz popularniejsze wśród naszych klientów. Ale to nie jest tak, że za pomocą low-code budujemy prototyp, a jeśli się sprawdzi, „przepisujemy go” do docelowej formy. Dobra platforma low-code pozwala na budowę iteracyjną a narzut związany z zarządzaniem zmianami redukuje do nieistotnego minimum. Dlatego otwierają się drzwi do budowy aplikacji nawet w sytuacji, kiedy wymagania nie są doprecyzowane, albo wiemy, że podlegają ciągłym zmianom. W normalnych okolicznościach, takie projekty IT omijałoby szerokim łukiem.

Jakie są długoterminowe korzyści z zastosowania platform low-code?

Zmienia się postrzeganie CIO i departamentu IT przez biznes. Nowe projekty uruchamiane są natychmiast (z pominięciem fazy wyboru dostawcy, postępowań ofertowych, negocjacji zapisów umownych), powstają w zespołach typu DevOps, przy dużym zaangażowaniu użytkowników biznesowych, są szybko oddawane do użycia produkcyjnego, a zgłoszenia zmian są realizowane błyskawicznie. Biznes zaczyna (znowu) kochać IT. I proszę się nie śmiać, wystarczy porozmawiać z naszymi klientami.

Oba rozwiązania nie mają jeszcze dopracowanych definicji, niemniej podstawowa różnica między nimi jest następująca: platformy no-code nie pozwalają na dostęp i modyfikowanie kodu aplikacji, więc nawet jeśli mamy wiedzę programistyczną i chcielibyśmy wprowadzić pewne istotne zmiany, nie będziemy w stanie tego zrobić. W przypadku low-code jest to wykonalne – można liczyć na dostęp do kodu. W rezultacie platformy low-code pozwalają na tworzenie bardziej złożonego oprogramowania. Jednocześnie trzeba zdawać sobie sprawę, że platformy low-code ciągle nie będą wystarczająco rozbudowane, aby stworzyć na nich np. aplikację mobilną, system ERP lub bardzo rozbudowany sklep e-commerce.

No-code vs low-code – porównanie

Zalety

Wady

Platformy no-code

Łatwa w użyciu • Umożliwia szybkie tworzenie aplikacji i przepływów pracy • Niemal wszystkie funkcje wprowadzamy metodą „przeciągnij i upuść” • Może być przydatna zarówno dla programistów, jak i zwykłych użytkowników • Nie wymaga znajomości j. programowania • Doskonała dla firm, które nie mają zespołu IT i/lub budżetu na programistów zewnętrznych

Nie można tworzyć bardziej złożonych, rozbudowanych aplikacji • Nie dostarcza pełnej elastyczności i możliwości, której mogą potrzebować programiści • Brak pełnej kontroli w zakresie bezpieczeństwa IT • Ograniczone możliwości w zakresie integracji z aplikacjami firm trzecich

Platformy low-code

• Znacznie przyspiesza realizację projektów dla programistów • Zapewnia elastyczność - można wprowadzać niestandardowe zmiany programistyczne • Duże możliwości w zakresie integracji z aplikacjami firm trzecich

• Trudniejsza w obsłudze niż no-code i wymaga znajomości j. programowania (podstawy to minimum) • Zaprojektowana głównie dla programistów (aby przyspieszyć ich pracę), a nie dla zwykłych użytkowników • Brak pełnej kontroli w zakresie bezpieczeństwa IT

Co zatem można stworzyć? Firmy często wykorzystują platformy low-code do tworzenia projektów MVP (minimum viable product), aby testować nowe pomysły biznesowe i wykorzystywać takie technologie jak sztuczna inteligencja, uczenie maszynowe czy internet rzeczy, pisząc przy tym niewiele kodu programistycznego. Dla przykładu firma AntTail opracowała aplikację IoT do śledzenia dostaw leków, wykorzystując do tego platformę low-code. Aplikacja może m.in. monitorować temperaturę leku w całym łańcuchu dostaw.

Rozwiązania low-code przydają się również do tworzenia aplikacji optymalizujących procesy biznesowe. Uniwersytet Stanowy Karoliny Północnej stworzył aplikację, która umożliwia rejestrowanie się na organizowane kursy. Z kolei firma Acena opracowała system do wysyłania wniosków urlopowych, który zautomatyzował kilka zadań i zminimalizował ryzyko pomyłki przy wypełnianiu wniosku.

Optymistyczne prognozy dla low-code

W 2024 r. już 65 proc. aplikacji będzie opracowywanych w platformach low-code – wynika z prognoz Gartnera. W najbliższych latach rozwiązania takie jak Zapier mają zyskiwać coraz większą popularność, natomiast oprogramowanie biznesowe oferowane przez Oracle czy SAP ma doczekać się wielu aktualizacji, które sprawią, że praca z nim stanie się łatwiejsza. Innymi słowy: łatwe w obsłudze i niewymagające programistów platformy będą coraz chętniej wykorzystywane w biznesie, natomiast rozwiązania zaawansowane staną się bardziej przyjazne dla mniej doświadczonych użytkowników, którzy nie są specjalistami IT.

Co ciekawe, do 2023 r. liczba użytkowników określanych „programistami obywatelskimi” ma być co najmniej czterokrotnie większa niż programistów zawodowych. Z kolei sama wartość rynku low-code, jak podaje Forrester, przekroczy w 2022 r. sumę 21 mld d

Dla firm z ograniczonym budżetem

Choć platformy low-code mają większe możliwości funkcjonalne, wymagają jednak znajomości podstaw z programowania. Z tego powodu wiele organizacji decyduje się często na no-code. Dzięki temu nawet jeśli nie mamy pracowników IT, ani budżetu na prace programistyczne, ciągle jesteśmy w stanie przygotować konkretny projekt spełniający nasze potrzeby.

Przykładowo, w Nowym Jorku urzędnicy publiczni wykorzystali platformę no-code do stworzenia i uruchomienia w ciągu 72 godz. systemu do zarządzania kryzysowego dotyczącego COVID-19. Gotowy system mógł identyfikować punkty zapalne (duża liczba zakażonych osób) i informować o usługach zapewniających pomoc, a także ostrzegać innych mieszkańców, by unikali konkretnego miejsca.

Dla organizacji, które nie mają kompetencji IT, platformy no-code są doskonałym rozwiązaniem, ponieważ dzięki nim mogą tworzyć i wdrażać narzędzia, jakich wcześniej nie byliby w stanie zaoferować swoim odbiorcom.

Popularne zastosowanie dla platform no-code to również tworzenie aplikacji back office, które usprawniają wewnętrzne operacje. Platformy umożliwiają łatwe tworzenie aplikacji wykorzystujących takie funkcje jak filtrowanie, wyszukiwanie, eksport/import plików, czy też umożliwiają tworzenie formularzy i przepływów pracy. Bez problemu stworzymy też strony internetowe, proste sklepy e-commerce, czy nawet aplikacje mobilne – wszystko to jest możliwe przy wykorzystaniu platform no-code.

Wybrane platformy no-code

Budibase pozwala na zaprojektowanie i stworzenie aplikacji SaaS. Ma łatwy w obsłudze interfejs, jak również wiele gotowych szablonów, które można edytować. Dostępne są też rozszerzenia oraz funkcje automatyzujące pracę. Po stworzeniu aplikacji możemy ją również rozwijać z poziomu Budibase - platforma oferuje m.in. CRM, system raportowania, czy też systemy płatności, które można wdrożyć.

Bubble: platforma do tworzenia aplikacji webowych, która oferuje szeroki wybór funkcji - twórcy Bubble'a przekonują, że można tu stworzyć nawet drugiego Facebooka. Interfejs „przeciągnij i upuść” jest łatwy w obsłudze, a także mamy dostęp do wielu przydatnych rozwiązań, np. automatycznego tłumaczenia na inne języki, uwierzytelniania wieloskładnikowego czy dodawania systemów płatności.

Thunkable: umożliwia tworzenie aplikacji cross-platformowych - gotowy projekt możemy udostępnić oddzielnie na Androida, iOS oraz w postaci aplikacji webowej. Interfejs opiera się na gotowych blokach funkcjonalnych, które możemy ze sobą łączyć i edytować.

Webflow: jedno z najlepszych rozwiązań do tworzenia stron internetowych. Za pomocą Webflow można stworzyć nawet bardzo rozbudowane, responsywne strony i sklepy e-commerce. Interfejs jest łatwy w obsłudze, a dodatkowo znajdziemy wiele integracji rozszerzających funkcjonalność. W razie potrzeby możemy wprowadzać wiele zmian samodzielnie, dodając np. fragmenty kodu JavaScript.

Adalo: kolejna platforma do tworzenia aplikacji mobilnych, która opiera się na interfejsie „przeciągnij i upuść”. Aplikacje tworzymy z gotowych bloków funkcjonalnych, które możemy edytować w ograniczonym zakresie. Bez problemu dodamy różnego rodzaju formularze, systemy płatności, wykresy czy elementy nawigacyjne.

Czy to przyszłość programowania?

Przy tak wielu możliwościach dostępnych dla osób, które nie są programistami, pojawia się uzasadnione pytanie: czy w przyszłości aplikacje biznesowe będą rozwijane właśnie w taki sposób?

I tak, i nie. Z jednej strony platformy te pozwalają na tworzenie aplikacji, narzędzi i procesów biznesowych w stosunkowo łatwy sposób, a przy tym taniej i szybciej. Wiele firm na tym skorzysta, ponieważ nie ma zbyt złożonych wymagań wobec konkretnych aplikacji i potrzebuje relatywnie prostych rozwiązań. Wówczas platformy low-code/no-code w zupełności wystarczą i będą o wiele korzystniejsze – dany projekt uda się zrealizować znacznie taniej i w krótszym czasie.

Z drugiej strony, gdy mamy większe wymagania, ciągle trzeba będzie polegać na specjalistach i dedykowanych aplikacjach. Low-code/no-code mają bowiem kilka ograniczeń.

Pierwsze to opcje związane z dostosowywaniem danego rozwiązania do własnych preferencji. Kiedy tworzymy rozwiązanie przy użyciu platformy low-code/no-code, może się okazać, że trzeba będzie zmienić nieco proces lub procesy biznesowe w organizacji, aby personel mógł sprawnie korzystać z nowego oprogramowania. Autorskie aplikacje dostosowują się do procesów, w przypadku low-code trzeba dostosować proces do aplikacji.

Kolejna bariera to elastyczność. Pojęcie „wszystko da się zrobić” nie istnieje w przypadku platform low-code/no-code, ponieważ ich twórcy udostępniają tylko określoną liczbę bloków funkcjonalnych i elementów, które można wdrożyć i edytować. Jeśli potrzebny jest nam niestandardowy kod, który zapewni konkretną funkcjonalność, a oferta platformy nie ma tego typu rozwiązania, mamy dwie opcje. Albo zrezygnujemy, albo spróbujemy napisać kod i zlecić to konkretne zadanie programiście.

Tu jednak pojawia się kolejny problem: nawet jeśli dana platforma pozwala na rozszerzanie funkcjonalności i dołączanie własnego kodu, późniejsze utrzymanie rozwiązania może być uciążliwe, ponieważ będziemy musieli samodzielnie wprowadzać aktualizacje oraz dbać o to, że autorska funkcja działa poprawnie z całą platformą, która jest aktualizowana automatycznie przez dostawcę. Może to powodować nieoczekiwane przestoje i błędy.

Przed wyborem platformy warto sprawdzić, czy będzie ona współpracować z dotychczas wykorzystywanymi aplikacjami. To bowiem kolejne ograniczenie: platformy udostępniają wiele integracji, ale ciągle nie współpracują z dużą liczbą aplikacji (zwłaszcza gdy korzystamy ze starszych narzędzi).

Ostatnie ograniczenie to bezpieczeństwo. Usługi low-code/no-code to rozwiązania działające w chmurze i zarządzane przez firmy trzecie. Nie mamy pełnej kontroli nad tym, jakie zabezpieczenia są wdrażane i w jakim czasie. Przed wyborem platformy warto więc dokładnie przeanalizować, jakie rozwiązania zabezpieczające są stosowane i czy dana firma nie miała wcześniej problemów (wycieki danych, ataki cyberprzestępców).

Wybrane platformy low-code

nAxiomnowoczesne rozwiązanie klasy low-code do szybkiego tworzenia i uruchamiania aplikacji biznesowych. Mocnymi stronami są funkcjonalności 4 głównych modułów: Workflow Manager (silnik obsługi procesów), Document Manager (silnik przetwarzania dokumentów), UX/UI Builder (zestaw zaawansowanych generatorów) oraz Data Modeler (graficzny modeler danych).

Zoho Creator: łatwa w użyciu platforma low-code. Ma minimalistyczny wygląd i duży wybór gotowych do użycia aplikacji i funkcji. Gotowe aplikacje automatycznie dopasowują się do urządzeń mobilnych. Creator ma też wbudowaną funkcję skanowania kodów kreskowych czy automatyczne tłumaczenia tekstów.

Appian: tworzenie aplikacji opiera się w dużej mierze na współpracy - platforma oferuje rozbudowane możliwości komunikacji i pracy online (intranet, zarządzanie zadaniami). Część funkcji realizujemy metodą „przeciągnij i upuść”. Wymagana znajomość j. programowania, aby naprawiać błędy oraz edytować obiekty i pola.

Microsoft PowerApps: bardzo rozbudowane możliwości i duża liczba integracji, co na początku może sprawić, że platforma wyda się skomplikowana w obsłudze (interfejs jest nieco przytłaczający). Do tego można liczyć na szeroki wybór szablonów i opcji konfiguracyjnych. Czasy ładowania mogłyby być jednak krótsze.

WEBCON BPS: platforma wykorzystuje technologię InstantChange, która pozwala na tworzenie obiegów w czasie rzeczywistym, a także ma wygodny w obsłudze interfejs graficzny. Świetnie sprawdza się do optymalizacji procesów biznesowych i zarządzania nimi. Dużą zaletą jest też możliwość integracji z Office 365 i wieloma innymi systemami informatycznymi.

Mendix: platforma ma wbudowany system do współpracy online i zarządzania zadaniami, jak również funkcje analityczne czy wsparcie dla Scruma, oraz rozbudowany sklep z aplikacjami, szablonami i integracjami. Trzeba jednak poświęcić sporo czasu, aby nauczyć się obsługi.

Visual LANSA: duże możliwości w zakresie aplikacji mobilnych (funkcje i rozwiązania mobile-first), jak również aplikacji webowych. Szeroki wybór integracji. Możliwość wdrażania gotowych aplikacji on-premise (Windows, IBM, Linux) lub w chmurze (AWS, Azure).

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200