Czy Citizen Developer to nowe oblicze Agility?
Opublikowany: 2022-03-11Ponieważ przytłaczająca większość firm cyfryzuje swoje operacje, a utalentowanym zespołom programistycznym stale brakuje personelu, data wygaśnięcia złożonych wdrożeń oprogramowania zbliża się wielkimi krokami.
Niedobór talentów i koszty jego naprawy pojawiły się w czasie, gdy platformy programistyczne o niskim kodzie oferują imponujące rozwiązania. Założenie niskiego kodu jest proste: zmniejsz złożoność programowania do tego stopnia, że użytkownicy biznesowi mogą tworzyć rozwiązania bez głębokiego zrozumienia programowania, interfejsów API lub wdrażania aplikacji internetowych lub mobilnych. Rozwiązania niskokodowe, często pakowane jako oferta chmurowa SaaS (oprogramowanie jako usługa) lub PaaS (platforma jako usługa), upraszczają wiele skomplikowanych szczegółów programowania, dzięki czemu użytkownik może skupić się na tworzeniu funkcjonalności.
Firma badawcza Gartner przewiduje, że w 2022 r. rynek platform aplikacji niskokodowych wzrośnie o ponad 30% w porównaniu z poziomami z 2020 r. Jako liderzy projektów informatycznych i interesariusze procesów biznesowych, menedżerowie projektów mogą służyć czasami odmiennym i często wykluczonym interesom zarówno IT, jak i biznesu, stosując te niskokodowe rozwiązania.
Ale jakie są zalety i ograniczenia tych rozwiązań oraz jak można je wdrożyć i zastosować w swoich zespołach projektowych? Odpowiedź może leżeć w rozwoju obywatelskim — powiększaniu kohorty nietechnicznych członków zespołu, aby poradzić sobie z niektórymi pracami, które obciążają zespoły IT. Jako kierownik projektu dysponujący odpowiednimi wskazówkami i najlepszymi praktykami, możesz wykorzystać programowanie obywatelskie, aby przekształcić adopcję niskokodową z destrukcyjnej w zwyczajną działalność w Twojej firmie.
Pierwsi inicjatorzy rozwoju obywatelskiego
Pomysł nietechnicznych użytkowników opracowujących rozwiązania techniczne nie jest niczym nowym. Już w 1987 r. HyperCard firmy Apple używał interfejsu graficznego i uproszczonego języka programowania, aby umożliwić nieprogramistom tworzenie prostych aplikacji, podobnych do dzisiejszych aplikacji internetowych. Ale termin „deweloper obywatelski” po raz pierwszy pojawił się podczas prezentacji na Sympozjum Gartnera/ITxpo 2009 w Orlando. W 2014 r. w raporcie firmy Forrester nazwano nową falę platform do tworzenia aplikacji przeznaczonych dla klientów „low code”. Raport zidentyfikował kilku pierwszych inicjatorów w rozwijającej się branży, w tym Mendix, Salesforce i Appian. Ci pierwsi inicjatorzy zapewniali „szybsze alternatywy dla tradycyjnych platform programistycznych” i umożliwiali użytkownikom „przyspieszenie dostarczania aplikacji poprzez radykalne zmniejszenie ilości wymaganego ręcznego kodowania”. Od tego czasu dołączyli do nich inni gracze, tacy jak Betty Blocks, ServiceNow i Microsoft Power Platform. Dzięki odpowiednim wskazówkom ci programiści obywatelscy mogą tworzyć rozwiązania na małą skalę dla siebie lub swoich zespołów, a w niektórych przypadkach tworzyć rozwiązania cyfrowe dla całego przedsiębiorstwa.
Badanie IBM z 2014 r. wykazało, że 80% decydentów IT i biznesowych korzystało w pewnym stopniu z programistów obywatelskich. Nawet wtedy adopcja była niepewna i na małą skalę. Dopiero w 2021 r. Project Management Institute wprowadził pierwszą w swoim rodzaju serię kursów Citizen Developer. Tak więc przez prawie dziesięć lat nie było żadnych standardów branżowych, punktów odniesienia ani sformalizowanych szkoleń, do których mogliby się odnieść pracodawcy, a tym bardziej menedżerowie projektów, którzy mogliby je wdrożyć. Przez większość lat 2010 platformy niskokodowe były uważane za zbyt destrukcyjne, powodując odpychanie w organizacjach.
Od tego czasu wszystko się zmieniło, delikatnie mówiąc. Gartner szacuje, że do 2024 r. 80% wszystkich produktów i usług technologicznych będzie tworzonych przez programistów obywatelskich, w porównaniu z zaledwie 25% w 2014 r. Przypisuje tę szybką ekspansję pandemii COVID-19: gdy firmy prześcigały się w przyjmowaniu usług w chmurze i technologii cyfrowych inicjatywy mające na celu obsługę nagle zdalnej siły roboczej, pojawiły się nowe modele biznesowe i procesy. Wydarzenia te nastąpiły po przyspieszonym przyjęciu frameworków Agile w ostatnich latach, z naciskiem na szybkość i krótsze cykle rozwoju.
Wszystko to, w połączeniu z niedoborem programistów, stworzyło szansę dla programistów obywatelskich na rozwiązanie szeregu problemów.
Korzyści z niskiego kodu
Prędkość
W przypadku kierowników projektów IT programy obywatelskie dla programistów przyspieszają terminy, usprawniając działania innowacyjne i zmniejszając zależność od ograniczonej puli profesjonalnych programistów. Przygotowanie tradycyjnej aplikacji internetowej do pierwszego wydania może zająć miesiące; opracowanie nawet minimalnego produktu (MVP) zajmuje tygodnie. Korzystając z platformy o niskim kodzie, zespół może zebrać wiele MVP w tym samym czasie i wykorzystać informacje od nich do kierowania pracami programistycznymi. Cykle iteracji zmniejszają się proporcjonalnie.
Na przykład profesjonalny programista tworzący narzędzie do powiadamiania może spędzić cały dzień na projektowaniu prostego interfejsu do interakcji z interfejsem API, konfigurowaniu uwierzytelniania i zabezpieczeń, testowaniu i wreszcie wdrażaniu aplikacji do użytku wewnętrznego. Na platformie o niskim kodzie programista obywatel może osiągnąć ten sam poziom funkcjonalności i bezpieczeństwa w ciągu kilku minut, a trzy kliknięcia później udostępnić swoje dzieło reszcie zespołu.
Elastyczność
Gotowe oprogramowanie nie zawsze pasuje do przepływu pracy lub struktury firmy. Jednak rozwiązania zbudowane na platformach o niskim kodzie można dostosować do konkretnych potrzeb Twojej firmy. Na przykład, jeśli Twój proces biznesowy wymaga możliwości eskalacji problemu do pewnego menedżera, a gotowy pakiet nie może tego zrobić, niestandardowe rozwiązanie o niskim kodzie jest dobrą alternatywą.
Rozwiązanie niskokodowe może również wypełnić luki w integracji między istniejącymi systemami bez konieczności bezpośredniej pracy z interfejsem API. Na przykład, jeśli Twój istniejący CRM nie jest w stanie opublikować wiadomości w określonym kanale Slack, rozwiązanie o niskim kodzie może szybko i łatwo wypełnić tę lukę. Większość platform oferuje rozbudowane opcje integracji, które umożliwiają ich usługom komunikację z bazami danych i interfejsami API popularnych aplikacji w chmurze lub lokalnych, takich jak Jira, Gmail, Oracle czy Shopify. Integracje te dają projektowi więcej opcji niż źle dopasowane, gotowe rozwiązanie lub drogie rozwiązanie zbudowane na zamówienie; możesz budować z większymi możliwościami przy użyciu niskiego kodu.
Wyobraź sobie różnicę, jaką może to wpłynąć na Twoje projekty. Zaległości zespołu programistycznego można ponownie ocenić, a niektóre potrzeby można oddzielić i ukierunkować na niskokodowe, opracowane przez obywateli rozwiązanie. Może to dać działowi IT czas na rozwiązanie problemów, takich jak zadłużenie techniczne, które często mogą zostać zignorowane, gdy harmonogramy są napięte. A rozwiązania, które są wdrażane za pomocą zatwierdzonej przez IT platformy low-code, mogą złagodzić problemy stwarzane przez shadow IT. Sam zespół programistów może przyjrzeć się zestawowi potrzeb lub wymagań, a następnie polecić i wdrożyć rozwiązania przy użyciu platformy o niskim kodzie jako części lub całości stosu technologicznego.
Kiedy używać niskiego kodu?
Chociaż niski kod może poprawić szybkość rozwiązywania problemów i obniżyć koszty tworzenia oprogramowania, ma kilka wad. Jako kierownik projektu musisz zrozumieć ograniczenia usług o niskim kodzie, aby móc podejmować rozsądne decyzje dotyczące tego, kiedy wybrana platforma jest odpowiednia dla projektu. Oto kilka porad:
- Przygotuj się na pozostanie na jednej platformie. Struktura i funkcjonalność o niskim kodzie są różne w przypadku każdej usługi, więc przydatne rozwiązanie, które zbudujesz na jednej, zazwyczaj nie zostanie przeniesione na inną. Oznacza to, że gdy organizacje używają konkretnej platformy o niskim kodzie do większej liczby rozwiązań, koszt kolejnych zmian rośnie wraz ze wzrostem zależności od tej platformy, co silnie zniechęca do wypróbowywania innej w przyszłości.
- Uwzględnij ograniczenia UI/UX. Aby uprościć doświadczenie programistom obywatelskim, dużo dokładniejszej kontroli nad obsługą zdarzeń, stylizacją i niszową funkcjonalnością jest z góry określone i stosunkowo niezmienne na platformach o niskim kodzie. Jest wystarczająco ograniczony, by frustrować dobrego projektanta. Na przykład niski kod zazwyczaj oferuje mniejszy wybór funkcji mobilnych w trybie offline, wiele metod uwierzytelniania i wyspecjalizowane elementy sterujące użytkownika, takie jak koła kolorów. Zadaj sobie pytanie, czy projekt będzie OK z „wystarczająco dobrym” projektem. Jeśli Twój zespół potrzebuje doskonałej kontroli nad wyglądem, działaniem i przepływem aplikacji, niski kod nie jest dobrym rozwiązaniem.
- Uważaj na problemy z konserwacją. Deweloperzy Citizen mogą nie mieć głębokiego zrozumienia skutecznego testowania oprogramowania lub doświadczonego punktu widzenia na to, jak rozwiązania mogą wymagać zmiany w przyszłości. W przypadku prostych rozwiązań nie stanowi to dużego problemu, ale ponieważ rozwiązanie o niskim kodzie staje się bardziej złożone, jest bardziej prawdopodobne, że będzie zawierało błędy, jest niebezpieczne i trudne w utrzymaniu. Jeśli planowane rozwiązanie ma wysoki stopień złożoności lub ma kluczowe znaczenie dla misji, rozważ stos technologiczny bez niskiego kodu lub zaangażuj bardziej doświadczonych programistów do konstruowania rozwiązania.
Platformy o niskim kodzie nie są idealne w sytuacjach, które wymagają:

- Ponad 200 stałych użytkowników wewnętrznych, co może mieć wpływ na licencjonowanie i wydajność.
- Wysoce wyspecjalizowane możliwości, takie jak blockchain, gry lub nawigacja w czasie rzeczywistym.
- Nacisk na niskie opóźnienia i najwyższą wydajność.
- Starannie zaprojektowane doświadczenie użytkownika.
Pomimo tych ograniczeń nie brakuje potencjalnych przypadków użycia dla platform o niskim kodzie. Rozważ je w przypadku projektów, które obejmują:
- Tworzenie wewnętrznych narzędzi, takich jak aplikacje onboardingowe, narzędzia do śledzenia zadań lub rozwiązania do zarządzania zasobami dla tysięcy firmowych urządzeń.
- Aktualizowanie starszych systemów poprzez dodawanie nowych funkcji do przestarzałej, ale wbudowanej infrastruktury lub poprzez cyfryzację przepływów pracy.
- Projektowanie prototypów o niskim ryzyku lub MVP, które mogą służyć jako prosty dowód koncepcji na wczesnych etapach projektu bez ogromnych nakładów czasu i zasobów. (Po rozpoczęciu testów użytkowników można zrobić krok w kierunku tradycyjnego IT i oferowanej przez nie większej skalowalności).
Wzmocnij programistów obywatelskich
Platformy o niskim kodzie są zaprojektowane tak, aby skrócić krzywą uczenia się do łatwiejszego w zarządzaniu poziomu, umożliwiając kierownikom projektów rozwijanie programistów obywatelskich w swoich organizacjach. Programiści Citizen mogą pochodzić z dowolnej dziedziny niezwiązanej z IT i pochodzą z obszarów tak różnorodnych, jak analiza biznesowa, zarządzanie projektami, finansowanie lub operacje. Każdy, kto ma wiedzę techniczną i chęć do nauki, może zostać przeszkolony w zakresie włączania programowania niskokodowego do swojej pracy — pod warunkiem, że kierownik projektu rozumie luki między ich możliwościami a profesjonalnymi programistami. Deweloperzy Citizen nie muszą być mistrzami kodowania, aby współpracować z IT w celu zaspokojenia potrzeb technicznych i biznesowych. Dzięki lepszemu zrozumieniu cyklu życia dostarczania oprogramowania i przejęciu niektórych obowiązków, które tradycyjnie wymagają wiedzy programistycznej, stają się po części ekspertem merytorycznym, po części analitykiem biznesowym, a po części zasobem IT.
Organizacje czerpią jak najwięcej z platform niskokodowych i programistów obywatelskich, stosując się do tych najlepszych praktyk:
- Zapewnić szkolenie. Ułatw przyjmowanie niskiego kodu poprzez sesje szkoleniowe i prezentacje odpowiednich przypadków użycia.
- Ucz nowych pojęć. Przedstaw programistom obywatelskim testowanie, dokumentację i koncepcje komponentów wielokrotnego użytku, aby poprawić jakość tworzonych przez nich rozwiązań.
- Ustaw poręcze. Zapewnij wsparcie dla programistów obywatelskich w zakresie zarządzania, takie jak dodawanie określonych zasad ochrony przed utratą danych i konfigurowanie środowisk piaskownicy na potrzeby eksperymentów.
- Zachęcaj do współpracy. Zachęć programistów obywatelskich i profesjonalnych do wspólnego generowania rozwiązań, szczególnie w przypadku złożonych projektów, które integrują niski kod. Może to prowadzić do lepszego zrozumienia wymagań, możliwości cross-szkolenia i większego docenienia ich odrębnych ról w organizacji. Połączenie wiedzy technicznej zespołu IT ze zmysłem biznesowym deweloperów obywatelskich może prowadzić do rozwiązań, które lepiej służą organizacji.
Deweloperzy obywatele muszą mieć tego typu wskazówki. Niektórzy będą zbyt bojaźliwi, by spróbować czegokolwiek poza pierwszym krokiem, a inni narobią bałaganu z powodu nadmiernego entuzjazmu. Zapewnienie szkoleń i wytycznych pomaga nowym użytkownikom o niskim kodzie znaleźć lepszy środek, co prowadzi do lepszej adopcji w firmie.
Deweloperzy Citizen oferują organizacji nowe możliwości, które można wykorzystać taktycznie i strategicznie. Niektórzy wykorzystają swoje nowe umiejętności w swoich dotychczasowych rolach biznesowych, przyczyniając się do wysiłków na rzecz zmian cyfrowych i projektów informatycznych dzięki nowemu lepszemu zrozumieniu wyzwań i przepływów pracy. Inni mogą zająć się zupełnie nową pracą, biorąc w ramach swoich podstawowych obowiązków tworzenie aplikacji z niewielką ilością kodu lub projektowanie funkcji.
Dostawcy platform o niskim kodzie wiedzą, że silne wsparcie ma znaczenie i odpowiednio dodają możliwości. Najbardziej rozwinięte platformy oferują funkcje zarządzania na poziomie przedsiębiorstwa, prężne społeczności użytkowników i wiele sposobów uczenia się.
Aby zachęcić do szerszego przyjęcia przez profesjonalnych programistów, niektóre platformy obejmują znane koncepcje, takie jak kontrola kodu źródłowego, moduły testowe i zarządzanie cyklem życia aplikacji. Oferuje to, co najlepsze z obu światów: mogą używać niskiego kodu z solidnym zestawem narzędzi do szybkiego tworzenia wysokiej jakości aplikacji bez rezygnacji z istniejących narzędzi na rzecz bardziej złożonych rozwiązań. A innowacje, takie jak metodologie projektowania po kod, obiecują złagodzić istniejące ograniczenia tych platform, takie jak ograniczone możliwości wyboru UX/UI, w nadchodzących latach.
Rozszerzające się pole
Znaczące inwestycje w platformy low-code dokonują zarówno uznani gracze, jak i start-upy. Microsoft niedawno odnotował 97% wzrost swojej platformy Power Platform rok do roku i wprowadza nowe możliwości w oszałamiającym tempie. Inwestycje w start-upy z niskim kodem/bez kodu, takie jak Bubble i Airtable, wzrosły o 415 milionów dolarów na rynku amerykańskim w ciągu pięciu lat. Ponieważ firmy dążą do dalszego rozwijania swoich możliwości cyfrowych, profesjonalnych programistów nadal będzie brakować, a liczba programistów obywatelskich będzie rosła. Prognozy pokazują, że już w 2023 r. programiści obywatele przewyższą liczbę profesjonalnych programistów 4 do 1.
W przypadku ważnego podzbioru aplikacji rozwój obywatelski może zaoferować praktyczną kombinację szybkości, prostoty i elastyczności. Nie zastąpi pracy profesjonalnych zespołów programistycznych, ale może dostarczyć potężnych rozwiązań, które ulepszą te zespoły podczas poruszania się po stale zmieniającym się krajobrazie oprogramowania.
