Przedsiębiorstwa, rządy, organizacje non-profit czy małe zespoły, niezależnie od ich wielkości czy typu, angażują się w działania organizacyjne.
Działania organizacyjne składają się z wielu procesów biznesowych.
Procesy biznesowe można podzielić na zadania. Proces biznesowy funkcjonuje, gdy działy i osoby w organizacji wykonują przypisane im zadania w ramach swoich ról.
W ten sposób, gdy poszczególne procesy biznesowe funkcjonują, funkcjonują również działania organizacyjne jako całość.
Oprogramowanie Zorientowane Obiektowo
W świecie tworzenia oprogramowania rozwinięto koncepcję oprogramowania zorientowanego obiektowo, wraz z opartymi na niej metodologiami projektowania i językami programowania.
Wcześniej oprogramowanie projektowano z oddzielnymi danymi i przetwarzaniem, a definicje danych i przetwarzania były niezależne w programie.
Z tego powodu definicje ściśle powiązanych danych i przetwarzania mogły być umieszczone w bliskim sąsiedztwie w programie lub w całkowicie oddzielnych miejscach.
Niezależnie od miejsca ich umieszczenia, nie było różnicy w sposobie przetwarzania programu przez komputer.
Z drugiej strony, podczas modyfikowania lub dodawania funkcji do opracowanego programu, wydajność pracy i prawdopodobieństwo wystąpienia błędów znacznie różnią się w zależności od jakości rozmieszczenia.
Jeśli definicje ściśle powiązanych danych i przetwarzania są rozproszone po programie obejmującym dziesiątki lub setki tysięcy linii, wprowadzanie zmian staje się niezwykle trudne.
Oprogramowanie zorientowane obiektowo to fundamentalna koncepcja rozwiązywania takich problemów.
Innymi słowy, jest to pomysł, aby ściśle powiązane dane i przetwarzanie były jasno skompartmentalizowane i umieszczone w tym samym przedziale w programie, co ułatwia zrozumienie podczas późniejszej modyfikacji programu.
Ten przedział dla danych i przetwarzania to koncepcja nazywana „obiektem”.
Ważne jest również projektowanie oprogramowania wokół jednostki „obiektów” już od fazy projektowania.
Z drugiej strony, zazwyczaj jesteśmy przyzwyczajeni do postrzegania różnych rzeczy jako obiektów.
Na przykład, gdy ustawiamy godzinę budzenia w budziku, alarm dzwoni o tej godzinie. Rozumiemy, że budzik, jako obiekt, posiada dane (godzinę budzenia) i przetwarzanie (dzwonienie alarmu).
Projektowanie i implementacja oprogramowania w sposób zgodny z tym powszechnym ludzkim postrzeganiem ma sens. Dlatego oprogramowanie zorientowane obiektowo stało się tak powszechne.
Oprogramowanie Zorientowane na Procesy Biznesowe
Przedstawiłem przegląd działań organizacyjnych i oprogramowania zorientowanego obiektowo.
Teraz chciałbym zaproponować nowe podejście do tworzenia oprogramowania: Oprogramowanie Zorientowane na Procesy Biznesowe.
Jak wyjaśniono w dyskusji na temat oprogramowania zorientowanego obiektowo, projektowanie oprogramowania w sposób zgodny z ludzką percepcją oferuje znaczące korzyści przy modyfikowaniu lub dodawaniu funkcji do oprogramowania.
Wykorzystując oprogramowanie w działalności organizacyjnej, umieszczenie powiązanych informacji i funkcji w koncepcyjnej kompartmentalizacji procesu biznesowego – który jest fundamentalną jednostką działalności organizacyjnej – powinno ułatwić modyfikację i dodawanie funkcji.
To jest podstawowa koncepcja Oprogramowania Zorientowanego na Procesy Biznesowe.
Instrukcje i Informacje Wejściowe
W stosunkowo dużych firmach typowe procesy biznesowe są często usystematyzowane w instrukcjach. Procesy biznesowe, które są na tyle jasno zdefiniowane, by mogły być manualizowane, nazywane są również przepływami pracy (workflowami).
Systemy biznesowe realizowane przez ogólne oprogramowanie to systemy, które te przepływy pracy ucieleśniają. Proces biznesowy jest realizowany, gdy każda osoba lub dział odpowiedzialny za niego wprowadza informacje do systemu biznesowego zgodnie z przepływem pracy.
W tym kontekście instrukcja biznesowa, system biznesowy i informacje wejściowe są ze sobą bardzo ściśle powiązane.
Jednakże, w opisanym tutaj mechanizmie, te trzy ściśle powiązane elementy są rozproszone.
Koncepcja oprogramowania zorientowanego na procesy biznesowe zakłada, że powinny one stanowić jedną spójną całość.
Wyobraź sobie dokument, w którym instrukcja biznesowa jest zapisana w jednym pliku, a także istnieją pola do wprowadzania informacji przez każdą osobę lub dział odpowiedzialny.
Dodatkowo, załóżmy, że informacje kontaktowe dla następnej osoby odpowiedzialnej za każde zadanie są również konkretnie wymienione.
Wówczas widać, że wszystkie elementy procesu biznesowego są zawarte w tym pliku formularza wprowadzania informacji wraz z instrukcją biznesową.
Jeśli ten plik zostanie utworzony i przekazany osobie odpowiedzialnej za pierwsze zadanie, proces biznesowy będzie przebiegał zgodnie z opisaną instrukcją. A wreszcie, gdy wszystkie informacje do wprowadzenia zostaną uzupełnione, jeden proces biznesowy zostanie zakończony.
Ten plik jest samym oprogramowaniem zorientowanym na procesy biznesowe, z zastosowaną koncepcją oprogramowania zorientowanego na procesy biznesowe.
I w miarę funkcjonowania różnych typów oprogramowania zorientowanego na procesy biznesowe, cała działalność organizacyjna będzie funkcjonować.
Samo Oprogramowanie
Wcześniej opisałem plik formularza informacji wejściowych z instrukcją biznesową jako samo oprogramowanie zorientowane na procesy biznesowe.
Niektórzy mogli sobie wyobrazić, że to doprowadzi do dyskusji na temat tworzenia programów lub systemów.
Jednak tak nie jest.
Niezależnie od programów czy systemów, ten plik sam w sobie funkcjonuje jako oprogramowanie zorientowane na procesy biznesowe.
Jak wyjaśniono wcześniej, jeśli ten plik zostanie utworzony i wysłany do pierwszej osoby odpowiedzialnej, zostanie on następnie przekazany osobie odpowiedzialnej za każde zadanie, a zawarty w nim proces biznesowy zostanie wykonany.
Oczywiście, na podstawie tego pliku można opracować programy lub systemy do realizacji opisanego w nim przepływu pracy.
Jednakże, jaka jest różnica między użyciem takiego systemu a prostym przekazywaniem tego pliku między odpowiedzialnymi stronami?
Należy tutaj zauważyć, że tworzenie programów lub systemów oddziela instrukcję od przetwarzania.
To rozdzielenie jest sprzeczne z podejściem zorientowanym na procesy biznesowe. Innymi słowy, utrudnia to wprowadzanie usprawnień i dodawanie funkcji do procesów biznesowych.
Staje się to natychmiast oczywiste, jeśli wyobrazisz sobie scenariusz, w którym instrukcja biznesowa zostaje zmieniona.
Za każdym razem, gdy zmienia się procedura procesu biznesowego, programy i systemy muszą zostać odpowiednio zmodyfikowane.
Z tego powodu instrukcja biznesowa musi być od początku dokładnie dopracowana, co sprawia, że jej tworzenie jest czasochłonne. Ponadto, nawet jeśli instrukcja zostanie zmieniona, nie jest to natychmiast odzwierciedlone w programach lub systemach.
Oprócz problemu wymagającego takiego czasu, istnieją również koszty renowacji.
Oznacza to, że procesy biznesowe i instrukcje nie mogą być łatwo zmieniane.
Z drugiej strony, jeśli programy i systemy nie są rozwijane, a zamiast tego pliki formularzy informacji wejściowych z instrukcjami biznesowymi są wymieniane między odpowiedzialnymi stronami, wówczas okres rozwoju i koszty utrzymania/eksploatacji programów i systemów stają się zbędne.
Oprogramowanie Wykonywalne
Niektórzy mogą się wtedy zastanawiać, dlaczego ten plik nazywa się „oprogramowaniem”.
Powodem jest to, że ten plik jest plikiem wykonywalnym. Jednak nie jest on wykonywany jako program na komputerze; jest to raczej oprogramowanie wykonywane przez ludzi.
Instrukcja biznesowa jest jak program dla ludzi. A pola do wprowadzania informacji są jak miejsca przechowywania danych w pamięci lub bazie danych.
W ten sposób, nie jest błędne uznawanie tego pliku za oprogramowanie wykonywane przez ludzi.
Podmiot Wykonujący
Zadania zapisane w oprogramowaniu zorientowanym na procesy biznesowe mogą być wykonywane przez ludzi lub przez sztuczną inteligencję.
Nawet w przypadku pojedynczego zadania mogą wystąpić sytuacje, w których AI i ludzie współpracują, lub gdy zadanie wykonują wyłącznie ludzie albo wyłącznie AI.
Sztuczna inteligencja może również odczytać instrukcję biznesową zawartą w tym pliku i wykonać odpowiednie przetwarzanie.
Dlatego ten plik staje się oprogramowaniem wykonywalnym zarówno dla ludzi, jak i dla sztucznej inteligencji.
Wsparcie AI
Po pierwsze, sztuczna inteligencja wykonuje plik. W ten sposób odczytuje instrukcję biznesową zapisaną w pliku i rozumie treść, która wymaga przetworzenia.
Niektóre części tego przetwarzania mogą być wykonywane bezpośrednio przez AI, lub informacje mogą być wprowadzane do pól wejściowych przez AI.
Z drugiej strony, niektóre części wymagają przetwarzania przez człowieka lub wprowadzania informacji.
W tych częściach AI powiadamia człowieka i zachęca go do wykonania przetwarzania lub wprowadzenia informacji.
W tym momencie AI może zmieniać sposób prezentacji dla człowieka na podstawie treści przetwarzania przez człowieka lub wprowadzonych informacji.
Podstawowe metody prezentacji dla ludzi mogą obejmować przekazywanie niezbędnych zadań za pośrednictwem czatu tekstowego lub głosowego, lub pozyskiwanie informacji do wprowadzenia.
Istnieje również metoda bezpośredniego otwierania pliku. Jeśli plik jest tekstowy, na przykład, zostanie otwarty edytor tekstu.
Bardziej zaawansowana metoda obejmuje ekstrakcję niezbędnych zadań i informacji wejściowych, a następnie generowanie tymczasowego pliku dla aplikacji, która jest łatwa do pracy dla ludzi, na podstawie tej treści, i jej wykonanie.
Na przykład, jeśli wymagane jest wprowadzenie danych w formacie tabelarycznym, może zostać wygenerowany plik arkusza kalkulacyjnego, aby człowiek mógł wprowadzić informacje. Informacje wprowadzone do tymczasowego pliku zostaną następnie przepisane przez AI do pól wejściowych oryginalnego pliku.
Jeszcze bardziej zaawansowaną metodą jest programowanie aplikacji na żądanie z interfejsem użytkownika, który pasuje do pliku i zadań/informacji wejściowych wymaganych od człowieka.
W ten sposób, po zakończeniu zadania, czy to poprzez automatyzację przez AI, czy też przez AI wspomagającą pracę i wprowadzanie danych przez człowieka, AI przesyła plik na adres kontaktowy osoby odpowiedzialnej za następne zadanie zapisane w instrukcji biznesowej.
Dzięki temu, że AI wspomaga ludzi w ten sposób, można zrealizować system, w którym ludzie muszą wykonywać tylko minimalne niezbędne zadania efektywnie poprzez łatwy w użyciu interfejs użytkownika.
Pliki Przyjazne dla AI
Zasadniczo, oprogramowanie zorientowane na procesy biznesowe może być w dowolnym formacie pliku.
Jednakże, biorąc pod uwagę wsparcie sztucznej inteligencji, format pliku, który jest łatwy do obsługi przez AI, jest odpowiedni jako podstawowy format pliku. Typowym przykładem są pliki tekstowe w formacie Markdown.
Dobrze byłoby również ustalić podstawowe zasady dotyczące treści. Ponieważ AI zapewnia wsparcie, te podstawowe zasady pisania mogą być również elastycznie modyfikowane lub rozszerzane.
Gromadzenie Wiedzy i Usprawnianie Procesów Biznesowych
Oprogramowanie zorientowane na procesy biznesowe umożliwia organizacjom dodawanie nowych procesów biznesowych lub modyfikowanie istniejących po prostu poprzez tworzenie lub zmianę plików, które łączą instrukcje i pola wejściowe, bez konieczności rozwijania programów czy systemów.
Ponadto, kluczowe jest umieszczenie w instrukcji biznesowej danych kontaktowych do punktu kontaktowego w celu zadawania pytań lub zgłaszania propozycji ulepszeń związanych z danym procesem biznesowym.
To znacząco redukuje czas i wysiłek poświęcany przez AI lub ludzi na zmaganie się z niepewnościami lub poszukiwanie informacji. Co więcej, ponieważ pytania, odpowiedzi i prośby o usprawnienia są scentralizowane w jednym punkcie kontaktowym, wiedza o procesach biznesowych naturalnie się gromadzi, a procesy biznesowe mogą być usprawniane z dużą częstotliwością.
Zadania systematyzacji i organizacji zgromadzonej wiedzy, lub modyfikowania oprogramowania zorientowanego na procesy biznesowe w odpowiedzi na prośby o usprawnienia, mogą być również automatycznie wykonywane przez AI lub wspomagane przez nią.
Dodatkowo, w razie potrzeby, można tworzyć nowe oprogramowanie zorientowane na procesy biznesowe, aby dodawać nowe procesy biznesowe do organizacji.
Organizacja Szybko Ucząca Się
W ten sposób, poprzez koncepcję oprogramowania zorientowanego na procesy biznesowe oraz automatyzację/wspomaganie przez sztuczną inteligencję, organizacja jako całość może naturalnie gromadzić wiedzę i nieustannie się doskonalić.
Można to określić jako organizację szybko uczącą się.
Umożliwia to znacznie bardziej efektywne działania organizacyjne niż w tradycyjnych organizacjach.
Tymczasem, dzięki wspomaganiu AI w poszczególnych zadaniach, ludzie muszą wykonywać jedynie minimalną pracę za pośrednictwem przyjaznych dla użytkownika interfejsów.
Dlatego ludzie nie muszą przyswajać ogromnej ilości informacji ani rozumieć każdego szczegółu często zmieniających się procesów biznesowych.
W przeciwieństwie do ludzi, sztuczna inteligencja może natychmiast i bez wysiłku ponownie przeczytać wszystkie nowe instrukcje biznesowe. Ponadto, nie potrzebuje czasu na przyzwyczajenie się do nowych procesów biznesowych i nie trzyma się poprzednich.
W ten sposób, części, z którymi ludzie mają trudności, takie jak nauka dużych ilości instrukcji i adaptacja do zmian w procesach biznesowych, są przejmowane przez sztuczną inteligencję.
W ten sposób można osiągnąć szybkie uczenie się organizacji.