Każda aplikacja posiada logikę biznesową, przepływ działań i operacji, poprzez które odzwierciedlona jest funkcjonalność aplikacji.
Procesy biznesowe są dużą częścią logiki biznesowej. W tym artykule dowiesz się czym jest proces biznesowy i jak go stworzyć.
Czym jest logika biznesowa?
Zanim rozważymy procesy biznesowe osobno, przeanalizujmy pojęcie logiki biznesowej.
Logika biznesowa to fragment oprogramowania składający się z procesów, które określają sekwencje działań i operacji w aplikacji oraz ustalają zasady interakcji między użytkownikiem a systemem.
Przyjrzyjmy się logice biznesowej poprzez prosty przykład odprawy pasażerów na lot przez administratora, który wprowadza informacje do bazy danych.
Administrator wybiera lot i wypełnia formularz odprawy pasażerskiej wprowadzając niezbędne dane. W tym czasie system sprawdza, czy użytkownik jest autoryzowany i ma prawo do wykonywania tych czynności. Następnie program przetwarza otrzymane informacje, sprawdza zgodność danych z ustalonym formatem, odbiera z bazy danych dane o locie i pasażerze, powiadamia, jeśli informacje są nieprawidłowe, wysyła dane do bazy danych z poleceniem dokonania zmian.
W efekcie dane zostają zaktualizowane, a na liście pojawia się nowy pasażer.
Za opisane w przykładzie działania, ich kolejność, wymianę danych, przetwarzanie, żądania i odpowiedzi odpowiada logika biznesowa.
Logika biznesowa jest integralnym elementem architektury aplikacji. Sama logika składa się z procesów biznesowych, które omówimy w następnej kolejności.
Co to jest proces biznesowy?
Procesy biznesowe to sekwencja działań. Poprzez te akcje realizujemy funkcje aplikacji.
Procesy biznesowe w AppMaster.io
Podobnie jak w przypadku klasycznego podejścia, w AppMaster.io logika biznesowa budowana jest z procesów biznesowych. BP przeznaczone są do pracy z danymi: wyszukiwania, tworzenia, usuwania, aktualizowania, zmieniania; i odpowiadają za wykonywanie dowolnych akcji w aplikacji.
Platforma posiada edytor procesów biznesowych do pracy z logiką biznesową. Do tworzenia BP wykorzystywane są bloki.
W każdym procesie biznesowym automatycznie tworzone są bloki Start i End. Mogą one posiadać zmienne: wejściową dla bloku Start i wyjściową dla bloku Koniec.
Każdy blok BP, oprócz bloków Start i End, posiada dwa rodzaje konektorów - złączek (wejściowych, wyjściowych):
- flow_connection - złącze przepływu wykonania, opisuje kolejkę bloków, który z nich wykonać;
- var_connection - złącze zmiennych, opisuje, którą zmienną skąd wziąć.
Procesy biznesowe są podzielone na trzy kategorie:
- Procesy biznesowe back-end - skompilowane do kodu źródłowego Go i wykonywane w aplikacji serwerowej.
- Procesy biznesowe dla aplikacji internetowych - dostarczane do aplikacji internetowej, przetwarzane przez JavaScript po stronie przeglądarki.
- Procesy biznesowe dla aplikacji mobilnych - dostarczane do aplikacji mobilnych i w nich wykonywane, przetwarzane przez natywne narzędzia platform mobilnych.
W ramach każdego typu aplikacji istnieje określony zestaw procesów biznesowych.
W backendzie znajdują się zwykłe procesy biznesowe. Posiadają one bloki Start i End. Potrafią obsługiwać połączenie asynchroniczne i tryb transakcyjny.
W aplikacjach internetowych i mobilnych występują następujące typy BP:
- Komponentowe BP są ustawione w każdym komponencie, stronie, widżecie lub ekranie. Zależą od komponentu, dla którego są tworzone. Nie posiadają bloku End. Posiadają na wejściu jeden lub więcej bloków wyzwalających, które rozpoczynają wykonanie w momencie wystąpienia danego zdarzenia; np. naciśnięcia przycisku.
- Application-level BPs - ustawiane dla całej aplikacji, niemal identyczne jak component BPs, z tym że posiadają kontekst aplikacji i mają tylko jeden blok wyzwalający - początkowy.
- Generic BPs są ustawiane na poziomie aplikacji, ale są zaprojektowane tak, aby wyciągnąć często używaną logikę ze wszystkich innych procesów biznesowych. Te BP mają bloki Start i End i zachowują się podobnie do procesów biznesowych serwera, ale nie mają trybu transakcyjnego.
Jak stworzyć proces biznesowy na AppMaster.io?
Do pracy z procesami biznesowymi na platformie AppMaster.io służy edytor procesów biznesowych.
Wszystkie edytory zbudowane są na tej samej zasadzie i mają tylko kilka różnic w zależności od rodzaju procesu biznesowego (o kategoriach BP wspominaliśmy wcześniej).
Edytor BP składa się z:
- lewego panelu z listą dostępnych bloków;
- canvas w centrum;
- prawego panelu z ustawieniami wybranego elementu (bloku).
Aby dodać blok procesu biznesowego, należy przeciągnąć element z lewego panelu na obszar roboczy.
W ustawieniach każdego BP można włączyć tryb transakcyjny. W tym przypadku BP uzyskuje właściwość atomowości: BP jest albo wykonywany w całości, albo nie jest wykonywany żaden z jego poszczególnych bloków. Jeśli w którymś z bloków wystąpi błąd, to wszystkie zmiany spowodowane przez poprzednie bloki procesu biznesowego zostaną cofnięte.
Na lewym panelu bloki podzielone są na grupy według typów:
- Logika. Odpowiada za zmianę przepływu procesu, realizację funkcji systemowych, porównywanie zmiennych i konwersję typów danych.
- Funkcje. Umożliwiają wykonywanie różnego rodzaju operacji na różnych typach danych, takich jak zaokrąglanie liczb, dzielenie ciągów znaków, odczytywanie plików i inne.
- Funkcje modelowe. Umożliwiają wykonywanie operacji na modelach danych, takich jak tworzenie, wyszukiwanie, edycja i usuwanie.
- Przepływy tworzone przez użytkownika. Wywołuje dowolny z utworzonych przez użytkownika niestandardowych przepływów pracy.
- Zmienne. Ustawia i zapisuje zmienne, które będą używane w procesie biznesowym.
- Zewnętrzne żądania API. Uruchamia każde wcześniej utworzone żądanie do zewnętrznego API.
- Modele. Ustawia i zapisuje zmienne modelu danych, które mają być używane w procesie biznesowym.
- Enums. Ustawia i zapisuje zmienne wyliczające, które mają być użyte w procesie biznesowym.
- Auth. Bloki dodawane przez moduł autoryzacji Auth.
Podczas dodawania modułu do projektu, na liście bloków zostanie automatycznie utworzona osobna sekcja z procesami biznesowymi związanymi z tym modułem.
Zmienne można ustawić w prawym panelu. Aby dodać zmienne, należy zaznaczyć wybrany blok procesu biznesowego i kliknąć ikonę plusa (+) na panelu Zmienne.
Istnieją zmienne lokalne i globalne.
Zmienne lokalne są dostępne dla wszystkich typów procesów biznesowych. Zmienne lokalne istnieją w obrębie jednego BP. Po wykonaniu BP zmienne lokalne są niszczone, zwalniając pamięć RAM aplikacji.
Zmienne globalne przeznaczone są do wykorzystania w całej aplikacji. Są one deklarowane z góry i są dostępne w każdym procesie biznesowym. Przechowują dane podczas cyklu życia aplikacji - w czasie jej działania.
Zmienne lokalne i globalne mogą być dowolnego typu: od prostych int i string do tablic modeli i enums. Przechowywane wyłącznie w pamięci RAM.
Przykład procesu biznesowego
Stwórzmy mały proces biznesowy na przykładzie, który opisaliśmy wcześniej: odprawa pasażera na lot.
*Wszystkie dane zostały już wprowadzone do bazy danych. Poniżej opisano tylko tworzenie procesu biznesowego. Pełna lekcja dostępna jest tutaj.
Przejdź do sekcji Business Logic i kliknij Create business process, aby utworzyć nowy proces.
W nowym oknie wpisz nazwę procesu, wypełnij pole opisu i włącz tryb transakcji, jeśli to konieczne.
Domyślnie nasz BP posiada już dwa bloki: Start i End.
Do bloku Start dodajemy kilka zmiennych jako dane wejściowe. W tym celu klikamy na wybrany blok, a po prawej stronie ekranu naprzeciwko Zmiennych klikamy ikonę +.
Wpisujemy nazwę zmiennej, określamy jej typ i w razie potrzeby ustawiamy wartość domyślną.
Dodajemy kilka zmiennych, które są nam potrzebne do odprawienia pasażera na lot:
- flight_id;
- passenger;
- seat;
- status.
Następnie musimy pobrać identyfikator lotu z bazy danych. W tym celu dodajemy blok GetOne Flight.
Tworzymy połączenia między blokami. W tym celu wystarczy rozciągnąć strzałkę z jednego bloku do drugiego. Tutaj niebieska linia pełni funkcję łącznika przepływu między blokami, wskazując kolejność ich wykonywania. Kolorowe linie są łącznikami danych ustanowionymi pomiędzy zmiennymi i wskazują, gdzie można otrzymać, a gdzie przekazać dane w ramach BP.
Otrzymujemy identyfikator lotu. Musimy uzyskać dane pasażera i upewnić się, że taka osoba znajduje się w bazie danych.
Dodajemy blok Expand Passenger i pobieramy identyfikator pasażera. Za pomocą bloku GetOne Passenger sprawdzamy jego rekord w bazie danych.
Teraz musimy stworzyć samą rejestrację. W tym celu używamy bloku Make Registration i tworzymy połączenia między blokami.
Teraz musimy zapisać rekord rejestracji w bazie danych, ponieważ wcześniej tworzyliśmy go tylko jako część procesu biznesowego. Dodajemy blok Create Registration, tworzymy połączenia i kończymy proces biznesowy.
Nasz BP przedstawia następujący przepływ akcji:
- wyszukiwanie danych o lotach w bazie danych;
- uzyskanie identyfikatora pasażera;
- tworzenie i zapisywanie rekordu rejestracyjnego.
Wideo tutorial przedstawia analizę krok po kroku tworzenia procesu biznesowego, a także przegląd sekcji Business Logic na platformie AppMaster.io. Natomiast na kanale YouTube można przejść pełny kurs AppMaster.io 101 i nauczyć się pracy z platformą no-code.
Tak łatwo, za pomocą wizualnych bloków i drag & drop buildera na platformie AppMaster.io, możesz tworzyć procesy biznesowe o dowolnej złożoności. Zawsze możesz zarejestrować się na okres próbny na platformie i stworzyć swój pierwszy proces biznesowy, a może i aplikację.