DZIELIMY SIĘ WIEDZĄ
1 lutego 2023
#WEBCONPlus – Co może mieć wspólnego Webcon BPS z C# i JavaScript?
Co wspólnego ma platforma low-code Webcon BPS z językami programowania C# i JavaScript?
Na to pytanie, w trakcie pierwszego wywiadu z serii #WEBCONPlus, odpowiada Dyrektor Działu Workflow – Artur Hordyn.
Marta Orzech: Artur, ze znanych mi definicji platforma Webcon BPS jest rozwiązaniem low-code. Dlaczego mówimy o połączeniu tej platformy i technologii z językami programowania? Czy istnieje jeszcze inna definicja low-code?
Artur Hordyn: Rozpatrując low-code w podstawowym znaczeniu, można traktować to jako koncepcję wytwarzania oprogramowania, parametryzowania jego części — co ważne, bez użycia kodu lub z niewielkim jego zastosowaniem. Daje nam to przewagę, ponieważ możemy zaangażować zespół osób nietechnicznych do wytwarzania tego oprogramowania. Doprecyzowując tę definicję w zakresie konkretnej grupy, mówiąc o low-code application platform — polega to na odpowiednim parametryzowaniu przez osoby konkretnych części, które później składane są w całość, a z nich powstaje pełny produkt.
Tak jak powiedziałaś, Webcon BPS jest low-codem natomiast, nie ma sprzeczności przy łączeniu go z językami programowania. Dlaczego?
W kontekście platformy Webcon BPS mówimy o low-codzie, a nie no-code. W tego typu rozwiązaniach nie mamy kodu, ale również brakuje nam elastyczności, ponieważ jesteśmy zamknięci w tych „klockach”, które są zaprogramowane. Z drugiej strony, zdecydowana większość działań, które realizujemy w Webcon BPS, nie wymaga modyfikacji kodu. Jesteśmy w stanie dostarczyć część oprogramowania bez użycia języków programowania.
Jako ciekawostka — czy kojarzysz, który program można sklasyfikować jako pierwszy low-code?
Jeżeli mam być szczera, na ten moment nie przychodzi mi nic do głowy, ale bardzo mnie to zainteresowało. Czy mógłbyś opowiedzieć nam coś więcej na ten temat?
Excel. Jest on niczym innym jak low-codem. Większość osób na co dzień wykonuje w nim proste tabelki z wyliczeniami lub analizy w tabelach przestawnych, natomiast w Excelu można napisać program. Nie wszyscy o tym wiedzą, ale jest w nim zamieszczony język (teraz zostało to uproszczone, ponieważ można nagrywać swoje ruchy w postaci makr) i dzięki temu jest to pierwszy low-code.
Jeżeli mamy do czynienia z klientem, u którego od samego początku wiemy, że proces będzie wymagał specjalistycznego podejścia, to czy w takim przypadku nie powinniśmy odłożyć rozwiązania low-code i stworzyć to oprogramowanie od zera?
Należy pamiętać o przewagach low-code’a. Jeżeli jakieś rozwiązanie zrobimy dużo szybciej, a zarazem taniej oraz nie jesteśmy zmuszeni angażować zespołu programistów w kilku technologiach czy architekta, to sprowadza się do tego, że sprawniej osiągniemy efekt w postaci działającego oprogramowania. To nie wszystko, ponieważ zostaje kwestia późniejszych zmian w tym oprogramowaniu i należy to rozpatrywać w kategorii przewag low-code’a. Dzięki temu będziemy dużo szybciej podążać za zmianami zachodzącymi w biznesie, które mogą następować z godziny na godzinę. W platformie low-code nadążamy za tym rozwojem, natomiast w klasycznym budowaniu oprogramowania to biznes będzie musiał dostosować się do tego rozwiązania, ponieważ jest ono mniej elastyczne. Dużo mówi się również o niedoborze programistów, dlatego, jeżeli nie musimy ich korzystać z ich pracy, to mamy przewagę w low-codzie. Zdecydowanie nie rozpatrywałbym tego, że skoro jakiś dodatek prawdopodobnie będziemy pisać, to może od razu zróbmy to w formie klasycznej. Absolutnie nie.
To znaczy, że jeżeli miałabym postawić się na miejscu klienta i wiem, że mój proces jest skomplikowany, to i tak warto w pierwszej kolejności rozważyć wybór platformy low-code, ponieważ jesteśmy w stanie zaprogramować cały proces dużo szybciej i taniej, a tym samym łatwiej będzie nam wprowadzać zmiany, aby ten proces nadążał za dynamicznie zmieniającym się światem biznesu. Jednak do tworzenia oprogramowania low-code często angażowane są osoby, które nie są programistami. Czy nie uważasz, że w tym przypadku może przynieść to więcej problemów niż korzyści?
W pierwszej kolejności należy wyjaśnić ten mit — low-code kojarzy nam się z pracą osób nietechnicznych. Z tego typu rozwiązaniami mogą pracować również programiści, którzy coraz częściej wybierają takie platformy, ponieważ są oni w stanie realizować te same czynności, jak dotychczas, ale o wiele szybciej.
Natomiast każdą koncepcję można zepsuć. Nawet jeżeli będziemy mieli bardzo dobry pomysł biznesowy, a źle to wdrożymy i zrealizujemy, to nie osiągniemy zamierzonych celów i efektów. Jednak platforma Webcon BPS dba o to, aby tak nie było. Na jej potrzeby stworzono specjalny dodatek Designer Desk, który umożliwia dostęp do wstępnego prototypowania procesu przez osoby nietechniczne. Te działania realizuje się bezpiecznie, ponieważ system ten przybiera formę zamkniętego pudełka, które po zaprojektowaniu w nim m.in. jak będzie wyglądał formularz, jaki będzie podstawowy przebieg procesu i po opisaniu podstawowych czynności realizacji tego procesu, publikowane jest to do działu IT, który może kontynuować tę pracę, mając podstawy, na których bazuje.
Dla przykładu pracuję na stanowisku księgowej i wiem, jak chcę, aby wyglądał dany projekt, ponieważ znam funkcjonowanie firmy. Mogę bez znajomości rozwiązań IT zaprojektować własny proces i przekazać go osobom, które będą umiały przełożyć to na język informatyczny?
Dokładnie tak. Co więcej, te osoby nie będą musiały przekładać tego procesu, ponieważ mają już gotową bazę, którą dopracowują i rozbudowują. Jest to do tego stopnia dobrze zrealizowane, że jeżeli ktoś zlecił mi, aby w danym miejscu powinna znaleźć się dana część, to ja już posiadam przygotowaną akcję, którą tylko sparametryzuje pod dany opis, który płynie od użytkownika biznesowego. Zwróć uwagę, że nie musimy robić kilku telekonferencji, spotkań, wymieniać się e-mailami — dana osoba przekazuje mi wszystkie informacje, a komunikacja jest płynniejsza.
Czy mógłbyś podać praktyczne zastosowanie połączenia platformy Webcon BPS z językami programowania?
Tak naprawdę w tego typu realizacji, przy użyciu dodatków, tylko wyobraźnia może nas ograniczyć. Jeżeli mówimy o konkretach, jednym z ostatnich wdrożeń było zrealizowanie obiegu faktury kosztowej, które miało zakończyć się wygenerowaniem pliku PDF z podsumowaniem podstawowych elementów tej faktury, tzw. metryką z całą ścieżką akceptacji i historią. Na drugiej stronie powinien pojawić się skan tego dokumentu. Należało złączyć dwa pliki w jeden, jednak w platformie Webcon BPS nie mamy takiej funkcjonalności, którą moglibyśmy odpowiednio sparametryzować. Do realizowania tego zadania potrzebne było użycie dodatku programistycznego, aby wytworzyć tzw. custom akcje w C#.
Natomiast jeżeli chodzi o warstwę wizualną, bo o tym też warto powiedzieć, to w trakcie naszych ostatnich wdrożeń zajmowaliśmy się formularzami, które wymagały wdrożenia suwaka definiującego zakres liczb. Jeżeli klient potrzebuje takiego wyglądu dokumentu, a my nie jesteśmy w stanie zrealizować tego za pomocą Webcon BPS, to do pracy wchodzi programista JavaScript, który opierając swoją pracę na bibliotekach, jest w stanie stworzyć custom kontrolkę definiującą ten suwak — jak będzie on wyglądał, jaka zostanie zastosowana kolorystyka oraz parametry.
Artur, bardzo dziękuję Ci za dzisiejszą naprawdę ciekawą i bardzo merytoryczną rozmowę. Mam nadzieję, że pokazaliśmy Państwu, dlaczego warto połączyć technologię low-code z językami programowania.
Jeżeli mają Państwa jakieś pytania, nasz praktyk chętnie na nie odpowie.