archITekt studio pozwala budować rozwiązania
wizualnie – szybko i prosto

To zintegrowana platforma do tworzenia oprogramowania. Składa się z zestawu narzędzi, komponentów i modułów przygotowanych w taki sposób, by móc usprawnić oraz zautomatyzować proces wytwarzania rozwiązań biznesowych. Poszczególne moduły platformy archITekt współpracują ze sobą, są konfigurowalne, zintegrowane oraz pozwalają na integrację z otoczeniem.

Algorytmy

Moduł pozwala na proste i intuicyjne budowanie reguł biznesowych, a następnie umożliwia zarządzanie tymi regułami w odpowiedzi na pojawienie się nowych uwarunkowań biznesowych. Dzięki temu możliwa jest łatwa adaptacja działania systemu do zmieniających się z czasem potrzeb. Budowanie algorytmów odbywa się za pomocą graficznego designera. Dzięki jego zastosowaniu możliwe jest modelowanie algorytmów i tabel parametrycznych sterujących pracą systemu przez analityków biznesowych bez konieczności posiadania umiejętności programistycznych.

Moduł pozwala na:

  • oddzielenie reguł biznesowych od pozostałej części systemu,
  • tworzenie i modyfikację reguł biznesowych przy użyciu graficznego środowiska pracy,
  • weryfikację działania reguł w trakcie ich projektowania – jest to realizowane przez uruchamianie reguł po podaniu danych wejściowych oraz śledzenie wartości wyliczanych w poszczególnych krokach algorytmu,
  • analizę skutków modyfikacji reguł biznesowych – jest to realizowane przez umożliwienie automatycznego wykonania zestawu wcześniej przygotowanych testów biznesowych i porównania ich wyników do wyników poprzedniej wersji algorytmu,
  • wykorzystanie w regułach rozbudowanych tabel konfiguracyjnych zawierających zestawy predefiniowanych parametrów wykonania i działania algorytmów,
  • dzielenie złożonych reguł biznesowych na mniejsze elementy i ich ponowne użycie,
  • użycie w regułach biznesowych hierarchicznych struktur danych i list,
  • publikację reguł biznesowych w postaci usług web service, co umożliwia użycie zdefiniowanych reguł przez różne systemy, unifikację reguł w organizacji oraz zarządzanie nimi w jednym miejscu,
  • bardzo szybkie obliczanie reguł dzięki skompilowaniu ich do kodu wynikowego.

Wielokrotne wdrożenia Modułu Algorytmów potwierdzają wysoką wartość oddzielania reguł biznesowych od pozostałej części systemu. Wydajność i skuteczność pracy analityków biznesowych w zarządzaniu regułami jest zapewniona m.in. dzięki unikalnej funkcjonalności wykonywania testów biznesowych natychmiast pokazującej impakt dokonywanych zmian.


Procesy

Moduł umożliwia tworzenie, modyfikację i zarządzanie procesami występującymi w rozwiązaniu biznesowym. Proces jest definiowany na diagramie przy użyciu połączonych ze sobą kolejnych operacji. Operacje te reprezentują między innymi akcje biznesowe, punkty decyzyjne sterujące wyborem ścieżek przetwarzania oraz miejsca interakcji z użytkownikiem (m.in. formularze prezentowane użytkownikowi).

Moduł Procesów pozwala na:

  • projektowanie, budowę, modyfikację procesów biznesowych w środowisku graficznym,
  • budowę procesów przy wykorzystaniu palety uniwersalnych czynności procesowych,
  • rozszerzanie palety dostępnych czynności o czynności biznesowe charakterystyczne dla danego systemu,
  • dzielenie złożonych procesów na podprocesy,
  • śledzenie przebiegu procesów, zarówno aktualnie wykonywanych, jak i już zakończonych,
  • dostęp do dziennika przebiegu zawierającego szczegółowe informacje o każdej z uruchamianych czynności,
  • rozbudowane zarządzanie zmiennymi procesu; możliwość określania parametrów wejściowych i wyjściowych procesu, budowy procesów działających jednocześnie na wielu strukturach danych,
  • wykonywanie procesów w dwóch trybach: synchronicznym i asynchronicznym,
  • sterowanie sposobem wykonania i wznawiania procesów, np. uruchomienie podprocesów równoległych, wstrzymywanie wykonania procesu ze zdefiniowaniem sygnałów wznawiających działanie (m.in. akcja użytkownika, upłynięcie określonego czasu, oczekiwanie na sygnał z innego komponentu lub systemu).

Procesy

Moduł umożliwia tworzenie, modyfikację i zarządzanie procesami występującymi w rozwiązaniu biznesowym. Proces jest definiowany na diagramie przy użyciu połączonych ze sobą kolejnych operacji. Operacje te reprezentują między innymi akcje biznesowe, punkty decyzyjne sterujące wyborem ścieżek przetwarzania oraz miejsca interakcji z użytkownikiem (m.in. formularze prezentowane użytkownikowi).

Moduł Procesów pozwala na:

  • projektowanie, budowę, modyfikację procesów biznesowych w środowisku graficznym,
  • budowę procesów przy wykorzystaniu palety uniwersalnych czynności procesowych,
  • rozszerzanie palety dostępnych czynności o czynności biznesowe charakterystyczne dla danego systemu,
  • dzielenie złożonych procesów na podprocesy,
  • śledzenie przebiegu procesów, zarówno aktualnie wykonywanych, jak i już zakończonych,
  • dostęp do dziennika przebiegu zawierającego szczegółowe informacje o każdej z uruchamianych czynności,
  • rozbudowane zarządzanie zmiennymi procesu; możliwość określania parametrów wejściowych i wyjściowych procesu, budowy procesów działających jednocześnie na wielu strukturach danych,
  • wykonywanie procesów w dwóch trybach: synchronicznym i asynchronicznym,
  • sterowanie sposobem wykonania i wznawiania procesów, np. uruchomienie podprocesów równoległych, wstrzymywanie wykonania procesu ze zdefiniowaniem sygnałów wznawiających działanie (m.in. akcja użytkownika, upłynięcie określonego czasu, oczekiwanie na sygnał z innego komponentu lub systemu).

Interfejs użytkownika

Moduł pozwala na projektowanie i dostosowywanie wyglądu aplikacji do potrzeb biznesowych. Umożliwia skonfigurowanie zaawansowanego interfejsu użytkownika, korzystając z szerokiej gamy kontrolek. Istnieje możliwość tworzenia nowych list i formularzy oraz ich modyfikowania w zakresie wyglądu i zawartości, która jest prezentowana użytkownikowi końcowemu. Można przystosowywać takie elementy GUI jak formularze, listy czy menu aplikacji, a także związane z nimi struktury danych oraz słowniki.

Moduł pozwala na:

  • zmianę elementów GUI,
  • graficzne tworzenie i modyfikację formularzy i list z możliwością bieżącego podglądu,
  • konfigurację mechanizmów walidacji danych wprowadzanych przez użytkownika,
  • definiowanie akcji możliwych do wykonania na formularzu,
  • używanie bogatego zestawu komponentów przygotowanego do budowy zaawansowanych formularzy,
  • prototypowanie i weryfikację – w trakcie projektowania interfejsu użytkownika istnieje możliwość weryfikacji jego wyglądu na bieżąco, dzięki czemu można go przetestować w działaniu, co pozwala na uniknięcie szeregu błędów.

Przetwarzanie danych

Moduł dostarcza szeroką gamę możliwości przetwarzania dużych zbiorów informacji oraz wymiany danych z innymi systemami. Projektant pracuje wykorzystując graficzne designery pakietów przetwarzania danych oraz hierarchii zadań zarządzających przebiegiem procesu przetwarzania. Pakiety przetwarzania pracują na drzewiastych strukturach danych, pozwalają na integrację informacji z wielu różnych źródeł oraz wykonywaną na różne sposoby transformację danych w locie. Przepustowość przetwarzania sięga od setek tysięcy do nawet miliona rekordów na sekundę.

Hierarchie zadań sterują krokami przebiegu procesu przetwarzania i pozwalają zaprojektować go w wydajny sposób – tak, by część zadań w ramach hierarchii była uruchamiana równolegle. Oprócz tego, moduł posiada wachlarz narzędzi do zbierania statystyk działania systemu, analizy poprawności i wydajności, obsługi błędów, profilowania i wykrywania „wąskich gardeł”. Dzięki temu, budowanie niezawodnych, wydajnych i zoptymalizowanych systemów w oparciu o ten moduł jest niezwykle łatwe.

Moduł Masowego Przetwarzania Danych pozwala na:

  • integrację danych z wielu różnych źródeł: pliki (xlsx, xml, itd.), bazy danych (MS SQL, Oracle, MySQL, PostgreSQL), wywołanie zewnętrznych i publikacja własnych serwisów (REST, SOAP, POX)
  • zaawansowane projektowanie logiki pakietów przetwarzających dane: dodanie / usunięcie / przeniesienie / kopiowanie dowolnych fragmentów struktury danych, a także bardziej zaawansowane operacje, takie jak złączenia, podziały, normalizacje, czy obroty. Dokładnie te same mechanizmy są dostępne w pozostałych modułach platformy – fragmenty rozwiązań można wywoływać lub przenosić między modułami,
  • wygodne projektowanie skalowalnych systemów nawet na bardzo dużych strukturach danych, dzięki pomocnym funkcjom środowiska projektowego: wyświetlanie podpowiedzi na podstawie rozpoznanych schematów baz danych, usług, XSD, JSON schema, podpowiadanie składni wyrażeń, możliwość dekompozycji pakietów przetwarzania na podpakiety i ich reużywania jako osobnych pakietów, podprogramów lub pojedynczych mapowań, możliwość tworzenia atrap zewnętrznych baz danych / serwisów dla łatwego testowania systemu,
  • tworzenie wysoce wydajnych systemów, dzięki możliwości stosowania współbieżności, zarządzania wątkami, asynchroniczności i pracy na klastrze – wysoką wydajność moduł również zawdzięcza kompilowaniu kluczowych elementów przetwarzania do kodu maszynowego, co znacznie podnosi tempo działania,
  • szczegółową analizę wydajności i sprawną optymalizację nawet dużych systemów: śledzenie na bieżąco kroków przetwarzania pakietu w środowisku graficznym, profilowanie przetwarzania danych na dowolnym etapie oraz budowanie automatycznej statystyki ilości danych przepływających przez poszczególne kroki pakietu, mierzenie wydajności i poprawności systemu na produkcji i podgląd zebranych statystyk w postaci wykresów, co pozwala łatwo zidentyfikować „wąskie gardła”  przepływów,
  • niezawodność działania systemu dzięki bogatym możliwościom obsługi błędów: obsługa błędnych danych wraz z określeniem dopuszczalnych poziomów ilości błędów, które mogą wstrzymywać lub nie dalsze przetwarzanie, automatyczne wznowienie przetwarzania w przypadku występowania krótkotrwałych zaników połączenia z systemami zewnętrznymi, manualne wznowienie dalszego ciągu przetwarzania w przypadku wystąpienia i usunięcia błędu technicznego, którego nie można obsłużyć w sposób automatyczny.

Przetwarzanie danych

Moduł dostarcza szeroką gamę możliwości przetwarzania dużych zbiorów informacji oraz wymiany danych z innymi systemami. Projektant pracuje wykorzystując graficzne designery pakietów przetwarzania danych oraz hierarchii zadań zarządzających przebiegiem procesu przetwarzania. Pakiety przetwarzania pracują na drzewiastych strukturach danych, pozwalają na integrację informacji z wielu różnych źródeł oraz wykonywaną na różne sposoby transformację danych w locie. Przepustowość przetwarzania sięga od setek tysięcy do nawet miliona rekordów na sekundę.

Hierarchie zadań sterują krokami przebiegu procesu przetwarzania i pozwalają zaprojektować go w wydajny sposób – tak, by część zadań w ramach hierarchii była uruchamiana równolegle. Oprócz tego, moduł posiada wachlarz narzędzi do zbierania statystyk działania systemu, analizy poprawności i wydajności, obsługi błędów, profilowania i wykrywania „wąskich gardeł”. Dzięki temu, budowanie niezawodnych, wydajnych i zoptymalizowanych systemów w oparciu o ten moduł jest niezwykle łatwe.

Moduł Masowego Przetwarzania Danych pozwala na:

  • integrację danych z wielu różnych źródeł: pliki (xlsx, xml, itd.), bazy danych (MS SQL, Oracle, MySQL, PostgreSQL), wywołanie zewnętrznych i publikacja własnych serwisów (REST, SOAP, POX)
  • zaawansowane projektowanie logiki pakietów przetwarzających dane: dodanie / usunięcie / przeniesienie / kopiowanie dowolnych fragmentów struktury danych, a także bardziej zaawansowane operacje, takie jak złączenia, podziały, normalizacje, czy obroty. Dokładnie te same mechanizmy są dostępne w pozostałych modułach platformy – fragmenty rozwiązań można wywoływać lub przenosić między modułami,
  • wygodne projektowanie skalowalnych systemów nawet na bardzo dużych strukturach danych, dzięki pomocnym funkcjom środowiska projektowego: wyświetlanie podpowiedzi na podstawie rozpoznanych schematów baz danych, usług, XSD, JSON schema, podpowiadanie składni wyrażeń, możliwość dekompozycji pakietów przetwarzania na podpakiety i ich reużywania jako osobnych pakietów, podprogramów lub pojedynczych mapowań, możliwość tworzenia atrap zewnętrznych baz danych / serwisów dla łatwego testowania systemu,
  • tworzenie wysoce wydajnych systemów, dzięki możliwości stosowania współbieżności, zarządzania wątkami, asynchroniczności i pracy na klastrze – wysoką wydajność moduł również zawdzięcza kompilowaniu kluczowych elementów przetwarzania do kodu maszynowego, co znacznie podnosi tempo działania,
  • szczegółową analizę wydajności i sprawną optymalizację nawet dużych systemów: śledzenie na bieżąco kroków przetwarzania pakietu w środowisku graficznym, profilowanie przetwarzania danych na dowolnym etapie oraz budowanie automatycznej statystyki ilości danych przepływających przez poszczególne kroki pakietu, mierzenie wydajności i poprawności systemu na produkcji i podgląd zebranych statystyk w postaci wykresów, co pozwala łatwo zidentyfikować „wąskie gardła”  przepływów,
  • niezawodność działania systemu dzięki bogatym możliwościom obsługi błędów: obsługa błędnych danych wraz z określeniem dopuszczalnych poziomów ilości błędów, które mogą wstrzymywać lub nie dalsze przetwarzanie, automatyczne wznowienie przetwarzania w przypadku występowania krótkotrwałych zaników połączenia z systemami zewnętrznymi, manualne wznowienie dalszego ciągu przetwarzania w przypadku wystąpienia i usunięcia błędu technicznego, którego nie można obsłużyć w sposób automatyczny.

Słowniki

Moduł pozwala na definiowanie zestawów danych, czyli słowników gotowych do użycia w różnych modułach systemu. Pozwala to na wyekstrahowanie tych elementów konfiguracji biznesowej i zarządzanie nimi w przyjazny sposób w jednym miejscu. Dzięki zdefiniowanym słownikom pozostałe elementy, takie jak elementy interfejsu użytkownika, procesy, algorytmy, pakiety masowego przetwarzania i inne, korzystają z tych samych ujednoliconych danych biznesowych.
Platforma archITekt pozwala na definiowanie słowników o hierarchicznej strukturze. Dodatkowo dla każdego elementu słownika platforma pozwala na zdefiniowanie szeregu atrybutów przechowujących dodatkowe informacje biznesowe i techniczne. Można wykorzystywać je następnie w różnych obszarach rozwiązania, w kontekście danego elementu słownika.

Struktury danych

Moduł pozwala na tworzenie struktury danych, zgodnie z potrzebami biznesowymi. Może to być zestaw danych opisujący jakiś obiekt biznesowy, wraz ze zdefiniowanymi parametrami takimi jak typ, nazwa oraz inne właściwości specyficzne dla danego typu.

Moduł pozwala na:

  • tworzenie, modyfikację i rozbudowę struktur danych,
  • określanie relacji pomiędzy strukturami danych,
  • określanie atrybutów pól: wartości domyślnych, wymagalności poszczególnych pól, precyzji zapisu dla liczb, ilości znaków dla napisów,
  • używania pól słownikowych, list i podstruktur,
  • dokumentowanie projektowanej struktury w formie dodawania opisów do poszczególnych pól struktury.

Struktury danych

Moduł pozwala na tworzenie struktury danych, zgodnie z potrzebami biznesowymi. Może to być zestaw danych opisujący jakiś obiekt biznesowy, wraz ze zdefiniowanymi parametrami takimi jak typ, nazwa, oraz inne właściwości specyficzne dla danego typu.

Moduł pozwala na:

  • tworzenie, modyfikację i rozbudowę struktur danych,
  • określanie relacji pomiędzy strukturami danych,
  • określanie atrybutów pól: wartości domyślnych, wymagalności poszczególnych pól, precyzji zapisu dla liczb, ilości znaków dla napisów,
  • używania pól słownikowych, list i podstruktur,
  • dokumentowanie projektowanej struktury w formie dodawania opisów do poszczególnych pól struktury.

Harmonogramy zadań

Moduł pozwala na automatyczne wykonywanie dwóch typów zadań: zadań wykonywanych w odpowiedzi na zdarzenia i zadań cyklicznych zaplanowanych w kalendarzach. Zdarzeniem wywołującym zadania może być np. pojawienie się pliku w katalogu. Kalendarz pozwala na określenie częstotliwości, dni tygodnia lub miesiąca oraz innych parametrów sterujących wykonaniem zadania.

Moduł pozwala ustalić harmonogram przetwarzania, które należy odpowiednio uszeregować oraz zadbać o ich uruchomienie w określonych oknach czasowych. Podstawowym rodzajem zadań uruchamianych w module harmonogramowania są pakiety przetwarzania modułu Przetwarzania Danych. Dodatkowym rodzajem zadań możliwych do uruchamiania przez Moduł Harmonogramowania są zadania stworzone w kodzie. W tym przypadku należy dostarczyć pliki DLL realizujące specyficzne zadanie danej aplikacji.

Moduł pozwala na:

  • uruchamianie zadań planowanych, zadań wzbudzanych pojawieniem się pliku (plików) w katalogu,
  • uruchamianie zadań przetwarzania masowego, zadań napisanych w kodzie,
  • grupowe przetwarzanie plików,
  • śledzenie, monitorowanie i diagnozowanie wykonywania zadań.

Wersjonowanie

Konfigurowalne elementy systemu, takie jak definicje procesów masowego przetwarzania danych, procesów biznesowych, formularzy, reguł biznesowych, wchodzą w skład konfiguracji biznesowej systemu. Jest ona przechowywana w jednym miejscu w systemie i zarządzana przy pomocy dedykowanego modułu. Użytkownik może zarządzać konfiguracją przy pomocy narzędzi graficznych udostępnionych w aplikacji. Moduł ten pozwala na wersjonowanie zmian wprowadzanych w konfiguracji. Dzięki temu można śledzić zmiany w systemie, porównywać zmiany pomiędzy wersjami, przywracać poprzednie wersje. Moduł zapewnia także audytowalność zmian oraz pozwala na obsługę pracy grupowej, w sytuacji gdy różne osoby równocześnie konfigurują system.

Moduł oferuje możliwość eksportu i importu elementów konfiguracji biznesowej między różnymi środowiskami. Dzięki temu istnieje możliwość łatwego zarządzania kilkoma środowiskami (np. developerskim, testowym, produkcyjnym) i przenoszenia konfiguracji między nimi. Pozwala to na zarządzalne wdrażanie przetestowanych, sprawdzonych i zaakceptowanych zmian na środowiska produkcyjne. Konfiguracja może być przechowywana w zarówno w module, gdyż posiada on wbudowany mechanizm zarządzania wersjami, jak również zapisywana w postaci plików we wskazanym katalogu na dysku, wówczas można używać zewnętrznego systemu kontroli wersji (np. GIT).

Wersjonowanie

Konfigurowalne elementy systemu, takie jak definicje procesów masowego przetwarzania danych, procesów biznesowych, formularzy, reguł biznesowych, wchodzą w skład konfiguracji biznesowej systemu. Jest ona przechowywana w jednym miejscu w systemie i zarządzana przy pomocy dedykowanego modułu. Użytkownik może zarządzać konfiguracją przy pomocy narzędzi graficznych udostępnionych w aplikacji. Moduł ten pozwala na wersjonowanie zmian wprowadzanych w konfiguracji. Dzięki temu można śledzić zmiany w systemie, porównywać zmiany pomiędzy wersjami, przywracać poprzednie wersje. Moduł zapewnia także audytowalność zmian oraz pozwala na obsługę pracy grupowej, w sytuacji gdy różne osoby równocześnie konfigurują system.

Moduł oferuje możliwość eksportu i importu elementów konfiguracji biznesowej między różnymi środowiskami. Dzięki temu istnieje możliwość łatwego zarządzania kilkoma środowiskami (np. developerskim, testowym, produkcyjnym) i przenoszenia konfiguracji między nimi. Pozwala to na zarządzalne wdrażanie przetestowanych, sprawdzonych i zaakceptowanych zmian na środowiska produkcyjne. Konfiguracja może być przechowywana w zarówno w module, gdyż posiada on wbudowany mechanizm zarządzania wersjami, jak również zapisywana w postaci plików we wskazanym katalogu na dysku, wówczas można używać zewnętrznego systemu kontroli wersji (np. GIT).


Generowanie dokumentów

Moduł pozwala na projektowanie i zarządzanie szablonami dokumentów oraz generowanie gotowych dokumentów w oparciu o dane zgromadzone w systemie. Możliwe jest również dopełnienie procesów biznesowych poprzez przygotowanie dokumentów gotowych do druku lub wysyłki.

Moduł pozwala na:

  • zdefiniowanie treści dokumentu przy użyciu MS Word z użyciem wszystkich jego możliwości edycyjnych,
  • automatyczne uzupełnienie treści dokumentów danymi biznesowymi pochodzącymi z systemu za pomocą znaczników osadzonych w treści dokumentu,
  • wstawianie danych wielokrotnych: wypełnianie tabel danych, uzupełnianie list w dokumencie,
  • generowanie dokumentów w formatach, .docx, .pdf, .mhtml (format wykorzystywany do tworzenia sformatowanej treści e-mail).

Użytkownicy i uprawnienia

Platforma posiada centralny mechanizm zarządzania uprawnieniami użytkowników. Uprawnienia mogą być nadane zarówno do funkcji służących do zarządzania i administracji systemem jak i do funkcjonalności używanych przez użytkowników końcowych. Ważną cechą jest możliwość integracji z systemami zarządzania użytkownikami używanymi w organizacji (np. Active Directory). Pozwala to na automatyczną synchronizację kont użytkowników oraz ich grup zarządzanych w innych systemach z plattformą archITekt. Dzięki temu zarządzanie kontami i uprawnieniami użytkowników systemu może odbywać się w centralnym miejscu w organizacji lub w ramach konkretnego rozwiązania biznesowego.