Proces wytwarzania oprogramowania jest skomplikowany. Dodanie jednego pola na widoku wiąże się, z koniecznością zmiany kilku warstw w aplikacji i wymaga pracy co najmniej jednego dewelopera. To jest jeden z najprostszych przykładów.
Z tego powodu, tworzy się duża przestrzeń między wymaganiami biznesu a szybkością implementacji zmian.
Z drugiej strony, w każdej firmie jest dużo osób mających świetne pomysły dotyczących oprogramowania. Taką osobą może być np. pracownik sklepu zielarskiego, który tworzy na kartce system do zamówień (to byłem kiedyś ja), albo użytkownik automatyzujący sobie jakieś rzeczy. Wielu użytkowników biznesowych wie, jak oprogramowanie ma działać, ale nie chce spędzać czasu na naukę języków programowania. Osoby podejmujące się zadań związanych z oprogramowaniem, nie będące programistami, można sklasyfikować wspólną rolą - citizen deweloper.
Osoby takie nie muszą podlegać pod dział IT, co może mieć ogromną zaletę w postaci możliwości bardzo szybkiego wytwarzania własnego oprogramowania, albo zmian obecnego.
Problemem może być natomiast tworzenie aplikacji spójnych, bezpiecznych i łatwych w rozwoju. Program napisany w Excell nie będzie skalować się dla całej organizacji. Co innego aplikacje LCNC (Low Code No Code).
Narzędzia Low Code i No Code umożliwiają takim osobom, bardzo szybkie tworzenie software z użyciem interface wizualnego. Przykładem może być Mendix, w którym utworzenie aplikacji łączącej się z bazą danych, zawierającej kilka endpointów, to kwestia minut, a nie dni.
W przykładzie z początku tego wpisu, dodanie jednego pola w Mendix, to po prostu dodanie pola w encji i tyle. Nie trzeba robić zgłoszenia w Jirze, nie trzeba angażować kilku osób z działu IT. Często mam wrażenie, że do roku 2024 tworzenie oprogramowania w korporacjach zostało maksymalnie skomplikowane. CI/CD, Code Review, testy na wielu poziomach, to wszystko pomaga tworzyć bezpieczny software, ale znacznie opóźnia czas wdrożenia zmian.