Upload
hoangnhu
View
240
Download
2
Embed Size (px)
Citation preview
P L A T F O R M A D Y S A N T
P R E Z E N T A C J A
2
SPIS TREŚCI
1. PLATFORMA DYSANT 3
1.1. SILNIK WORKFLOW 5
1.2. KOMPONENTY PLATFORMY 7
1.3. PROJEKTOWANIE SATYSFAKCJI UŻYTKOWNIKA 11
1.3.1. INTERFEJS UŻYTKOWNIKA 11
1.3.2. RWD - RESPONSIVE WEB DESIGN 14
1.3.3. UX - USER EXPERIENCE 15
1.4. KOMPONENTY UZUPEŁNIAJĄCE 15
1.4.1. PLATFORMA SPOŁECZNOŚCIOWA 16
1.4.2. NARZĘDZIA BIUROWE ONLINE 16
1.4.3. ZUNIFIKOWANA KOMUNIKACJA 17
1.4.4. EKSTRAKCJA DANYCH 17
3
1. PLATFORMA DYSANT
Rynek bombarduje nas akronimami: CRM, ERP, BPM, MDM, itd. Aby nie zagubić się w gąszczu
możliwości potrzebujemy strategii i wytycznych operacyjnych, które pozwolą osiągać założone
cele biznesowe przy jednoczesnej optymalizacji kosztów inwestycji i całkowitych kosztów
posiadania.
Systemy informatyczne są tworzone dla użytkowników, którzy... mają ich coraz więcej. Po pewnym
czasie okazuje się, że systemy jako takie realizują swoje zadania, ale ich przytłaczająca ilość
skutkuje wysokimi kosztami posiadania i negatywnie wpływa na produktywność użytkowników,
którzy muszą pracować z wieloma rozproszonymi aplikacjami.
Niniejsza publikacja ma na celu przybliżenie Państwu platformy DYSANT, która w dzisiejszym,
niezwykle złożonym świecie IT ma wspierać realizację filozofii Dietera Ramsa:
"Less but better"
Platforma DYSANT składa się z szeregu
komponentów technologicznych i
biznesowych.
Poniżej przedstawiamy definicje użytych
pojęć oraz zestaw podstawowych
komponentów technologicznych.
Serwer aplikacyjny – oprogramowanie
serwerowe przeznaczone do budowy i
uruchamiania aplikacji biznesowych wraz z
silnikiem bazodanowym.
Middleware – oprogramowanie warstwy
pośredniej przyspieszające budowanie
aplikacji biznesowych i ułatwiające
zarządzanie nimi. Middleware
produkowany przez DYSANT składa się z
wielu komponentów, do których należy
zaliczyć m.in.:
Silnik procesowy (workflow) – narzędzie
umożliwiające definiowanie logiki działania
aplikacji (przepływ informacji pomiędzy
użytkownikami, uprawnienia, etc.) na
podstawie diagramów procesów
biznesowych tworzonych w formie
graficznej (możliwe jest "narysowanie"
diagramu procesu biznesowego, który
zostaje przekształcony w korespondującą
logikę działania aplikacji).
Komponenty programistyczne – zestawy
konfiguratorów, które umożliwiają
dostosowanie istniejących aplikacji i
szablonów do specyfiki wymagań danego
klienta przy jednoczesnym ograniczeniu
prac o charakterze programistycznym.
Komponentami są m.in. mechanizmy do
integracji aplikacji z systemami
4
zewnętrznymi (konektory ODBC, JDBC,
etc.), komponent do wyszukiwania w wielu
bazach danych, komponent do definiowania
reguł sprawdzających poprawność
wypełnienia formularza przez użytkownika,
etc.
Elementy interfejsu użytkownika (tzw.
kontrolki) - zestaw gotowych komponentów
widocznych dla użytkowników przyszłych
aplikacji, które ułatwiają i przyspieszają
budowę aplikacji biznesowych (przyciski,
pola, komunikaty, animacje, mechanizmy
wyszukiwania, etc.). Dzięki nim
programiści tworzą aplikacje przeciągając
do nich gotowe elementy zamiast
projektować je od podstaw (przykładowa
analogia - pusta aplikacja to pusta kartka
papieru w edytorze tekstu; zestaw gotowych
kontrolek to zestaw szablonów faktur czy
predefiniowane zestawy tabel do
wykorzystania w ramach "pustej" kartki).
Szablony aplikacji – zestaw gotowych,
współpracujących ze sobą szablonów
gotowych aplikacji, tj. Struktura
organizacyjna, Kontakty (baza kontaktów),
Aktywności, Produkty, Zamówienia
wewnętrzne, Zamówienia zewnętrzne,
Faktury, Delegacje, Projekty, Timesheety,
Dokumenty, Produkty, Oferty, etc. Szablony
aplikacji są zbudowane w oparciu o
middleware i mogą być z łatwością
dostosowywane do specyfiki wymagań
danego klienta.
Portal – szczególny rodzaj aplikacji
zapewniający wspólny interfejs dostępu do
wielu aplikacji i systemów naraz.
Użytkownik otrzymuje jeden adres www,
jeden login i hasło, które zapewniają mu
zunifikowany, jednoczesny dostęp do wielu
aplikacji i systemów. Portal można
rozbudować o prezentację danych z
systemów innych niż platforma DYSANT
(systemy kadrowe, finansowe,
specjalistyczne, systemy zewnętrzne, np.
udostępniane w chmurze).
RWD (ang. Responsive Web Design) –
sposób projektowania stron stron www
zakładający dynamiczne dostosowywanie
się interfejsu użytkownika do rozdzielczości
urządzenia, na którym jest on wyświetlany.
Koncepcja ta została zaimplementowana na
platformie DYSANT w stosunku do
aplikacji przeglądarkowych (w tym
korzystających z silnika workflow). W ten
sposób aplikacje powstające na platformie
DYSANT same dostosują się do
rozdzielczości smartphone'a, tabletu,
monitora 21" czy ekranu telewizora z
rozdzielczością Full HD.
5
1.1. SILNIK WORKFLOW
Silnik procesowy umożliwia zarządzanie logiką działania aplikacji na bazie graficznych diagramów
procesów biznesowych.
Platforma DYSANT wspiera i wykorzystuje międzynarodowy standard modelowania i wymiany
definicji procesów biznesowych, tj. BPMN – Business Process Modeling Notation, który ujednolica
opis procesów biznesowych w organizacji oraz zapewnia niezależność samej notacji od:
Narzędzi do modelowania procesów (standard BPMN jest wspierany przez narzędzia bardzo
szerokiego wachlarza producentów).
Platform wykonawczych – definicje procesów zapisane w standardowych formatach mogą być
importowane do środowisk wykonawczych (platform BPM, silników workflow) różnych
producentów (IBM, Microsoft, Appian, Pega, DYSANT, etc.).
Więcej informacji na temat BPMN można znaleźć na stronie OMG – międzynarodowej organizacji
zajmującej się tworzeniem i promocją standardów – http://www.omg.org. Poniżej przykład
diagramu w notacji BPMN.
6
Silnik workflow jest podstawą do budowy każdej aplikacji. Często wydaje się, że pojęcie workflow
odnosi się wyłącznie do typowych obiegów dokumentowych, tj. urlop, faktura, korespondencja,
reklamacja. Należy jednak zwrócić uwagę, że cała platforma DYSANT ma charakter procesowy.
Za przykład może posłużyć Karta kontrahenta:
• Każdy (nie każdy) może utworzyć nową kartę kontrahenta.
• Przy tworzeniu karty kontrahenta sprawdzamy czy taki kontrahent nie istnieje już w systemie.
• Utworzenie nowego kontrahenta wymaga zatwierdzenia, dodatkowej weryfikacji, wpisania
kontrahenta do innego systemu czy przydzielenia opiekuna.
• Czasami kontrahent jest tworzony w jednym systemie, ponieważ jest to klient potencjalny a gdy
dojdzie do zdarzenia gospodarczego (sprzedaż / zakup), kontrahent jest zapisywany do innego
systemu (np. FK)
• Po utworzeniu kontrahenta tylko wybrane osoby mają uprawnienia do odczytu całości lub
części Karty kontrahenta. Podobnie – tylko niektórzy mogą zmieniać dane adresowe czy numer
rachunku bankowego.
Pomimo, że opisany powyżej przykład nie jest typowym procesem "papierowym", stanowi on
proces wymagający zarządzania i nadzoru. Proces ten stanowi element platformy DYSANT,
służącej do zarządzania procesami biznesowymi.
Przykłady innych procesów, do automatyzacji których platforma DYSANT była wykorzystywana w
przeszłości:
• wniosek o urlop;
• wniosek o zmianę
wynagrodzenia;
• wniosek o zmianę
stanowiska;
• wniosek o zmianę
struktury organizacyjnej;
• wniosek o zatrudnienie
nowego pracownika
(ocena kandydata,
protokół z oceny, etc.);
• wniosek o szkolenie
(ankieta oceny
szkolenia);
• obieg karty oceny
pracownika;
• wniosek o zmianę /
usunięcie danych
kontrahenta;
• obieg korespondencji
(w powiązaniu z
zarządzaniem sprawami);
• obieg umów;
• karta oceny atrakcyjności
inwestycji;
• wniosek o wdrożenie
nowej odmiany produktu;
• delegacje;
• protokół z kontroli
inwestycji;
• cykliczne podsumowanie
projektowe;
• wniosek pożyczkowy /
kredytowy;
• akceptacja zmian treści na
stronie www;
• wniosek o założenie konta
nowego użytkownika;
• zapotrzebowanie
wewnętrzne;
• zamówienie towarów i
usług
• obieg faktur
• ,,,i wiele innych
7
1.2. KOMPONENTY PLATFORMY
Obok silnika workflow platforma oferuje szereg narzędzi
przyspieszających budowę aplikacji, wspierając prototypowanie,
zastępując prace programistyczne pracami konfiguracyjnymi.
Wielość komponentów platformy wskazuje na szeroki zakres przypadków
użycia. Tym samym im więcej mechanizmów mają dostępnych
programiści tym łatwiej i szybciej (taniej) są w stanie dostarczyć
oczekiwaną funkcjonalność biznesową.
Poniżej krótki opis wybranych komponentów.
Lp. Komponent Opis funkcjonalności
1 Struktura organi-
zacyjna Komponent służy do definiowania struktury organizacyjnej, która następnie odpowiada za
zarządzanie uprawnieniami w systemie powiązanych ze sobą aplikacji biznesowych. Do jej
podstawowych funkcjonalności należą:
• możliwość tworzenia struktur o dowolnie definiowanych poziomach oraz
zależnościach pomiędzy poziomami (struktury funkcjonalne-pionowe, macierzowe i
procesowe)
• możliwość tworzenia i zarządzania strukturami holdingowymi (wiele oddzielnych spó-
łek – rozdzielne struktury, wspólna struktura własnościowa)
• możliwość tworzenia i zarządzania strukturami korporacyjnymi (wiele powiązanych
spółek korzystających ze wspólnych elementów struktury)
• możliwość tworzenia i zarządzania strukturami wieloetatowymi (osoby zatrudnione jed-
nocześnie w kilku spółkach – ma to kluczowe znaczenie np. w przypadku budżetów
wniosków delegacyjnych, rozliczania urlopów, etc.)
• struktura organizacyjna może współpracować z usługami katalogowymi IBM, Micro-
soft, OpenLDAP, opcjonalnie z systemami kadrowymi
8
Lp. Komponent Opis funkcjonalności
2 typ dokumentu Komponent służący do definiowania sposobu zachowania się w aplikacji po-
szczególnych typów dokumentów, które mogą uruchamiać użytkownicy. Za-
rządzanie zachowaniem odbywa się przez bogaty zestaw narzędzi konfigura-
cyjnych, do których można zaliczyć́ m.in.:
• włączanie i wyłączanie predefiniowanych akcji na dokumencie (Zapisz,
Zamknij, Edytuj, Druku, etc.),
• definiowanie formatek dla poszczególnych grup użytkowników,
• definiowanie formatek do wydruku dokumentów
• definiowanie czy dokument może być tworzony na podstawie wiadomości
• łączenie dokumentu z definicjami numerowania (rejestrami/maskami nu-
meracji)
• łączenie dokumentu z definicjami walidacji (sprawdzających poprawość
wypełnienia dokumentu)
• definiowanie uprawnień do tworzeni, czytania i edytowania dokumentu na
podstawie różnych źródeł (książki adresowej, struktury organizacyjnej,
dynamicznych wyliczeń, etc.)
• zarządzanie zakresem wyświetlanej historii dokumentu
• łączenie typów dokumentów w definicjami procesów, które opcjonalnie
mogą zarządzać ich obiegiem
3 workflow Silnik workflow konwertujący diagramy BPMN na logikę aplikacji. Dla każ-
dego elementu na diagramie (zdarzenia, zadania, przepływu sterowania,
bramki logicznej, torów pływackich, etc.) dynamicznie generowany jest konfi-
gurator, w którym administrator aplikacji może precyzyjnie definiować zacho-
wanie się aplikacji na danym etapie procesu (np. jakiego użyć formularza w
danym kroku, jakie powiadomienie wysłać przy akceptacji wnioski, skąd po-
brać dane przed wejściem do kolejnego kroku, etc.)
4 logowanie zmian Mechanizm umożliwiający definiowanie jakie zmiany w procesach i na formu-
larzach powinny być logowane w sposób dostęnpy dla użytkowników.
Przykładowo - kto, w jakim polu i kiedy wprowadził dane; kto je zmienił (z ja-
kiej wartości na jaką); kto i kiedy zaakceptował, bądź odrzucił wniosek i jaka
była treść komentarza dodanego do akcji obiegowej.
5 centralne wyszukiwanie W sytuacji, gdy w skład całego rozwiązania wchodzi wiele aplikacji możliwe
jest włączenie centralnego wyszukiwania, które pozwala wyszukiwać zadaną
treść do wielu aplikacji jednocześnie. Wyniki zwracane są w uporządkowanej
formie z rozbiciem na osobne rodzaje obiektów w systemie (np. zamówienia,
korespondencja, urlop, etc.)
9
Lp. Komponent Opis funkcjonalności
6 filtrowanie widoków Widoki dostępne w aplikacjach (np. Moje faktury do akceptacji) oferują
oprócz standardowych mechanizmów wyszukiwania pełnotekstowego również
opcje filtrowania dokumentów na podstawie dowolnych metadanych (np. fak-
tury z okresu od 01.01.2015 do 10.02.2015, zawierające słowo „surowiec”, dla
których wskazano MPK „ADK” lub „DBC”.
Mechanizm ten umożliwia tworzenie przez użytkowników „Ulubionych” fil-
trów, które tworzone są jednokrotnie do wielokrotnego wykorzystania.
Filtry umożliwiają definiowanie wartości relatywnych (np. „dzisiejsze” fak-
tury”), w których wartości są przeliczane na wartości bieżące w momencie wy-
wołania zapytania.
7 eksport/import danych do/z
pakietu MS Office Mechanizm umożliwiający łatwe definiowanie raportów i wydruków oraz eks-
portu danych do zewnętrznych narzędzi (np. wygenerowanie dziennika kore-
spondencji za dany okres, wydruk rozliczenia podróży służbowej, eksport da-
nych wybranych faktur do arkusza kalkulacyjnego).
Lp. Komponent Opis funkcjonalności
wielojęzyczność Funkcjonalność umożliwiająca definiowanie różnych wersji językowych inter-
fejsu użytkownika
nieobecności Mechanizm umożliwiający definiowanie i zarządzanie nieobecnościami i za-
stępstwami (np. różni zastępcy dla różnych procesów, definiowanie czy nowe
uprawnienia dla zastępców dotyczą tylko aktywnych dokumentów, czy rów-
nież archiwalnych)
czyszczenie bazy Zestaw funkcji umożliwiających definiowanie wielu scenariuszy czyszczenia
bazy danych (np. przenoszenie wybranych dokumentów do archiwum, przeno-
szenie skanów do innej bazy dla dokumentów starszych niż 6 miesięcy, itd.)
logowanie błędów Rozbudowany panel logowania błędów dla programistów
numeracja Narzędzia służące do definiowania masek numeracji dokumentów (np. na pod-
stawie dat, kolejnych numerów, nazw komórek organizacyjnych, użytkowni-
ków, itd.)
powiadomienia Mechanizm definiowania zawartości powiadomień mailowych generowanych
w ramach różnych aplikacji (nadawca, odbiorca, temat, treść, linki, przyciski
akcji w wiadomościach, zawarte w powiadomieniu raportu, itd.)
powiadomienia czasowe Definiowanie cyklicznych - zbiorczych powiadomień generowanych przez
aplikacje
raporty Definiowanie wyglądu i zawartości raportów dostępnych w ramach poszcze-
gólnych aplikacji (i udostępnianych np. w ramach powiadomień mailowych)
10
konektory Zestaw narzędzi służących do definiowania sposobu i zakresu wymiany da-
nych z systemami trzecimi (np. ODBC, JDBC, konektor wykorzystujący API
SAP, etc.)
blokady Narzędzia do definiowania reguł blokowania dostępu do dokumentów przy
pracy z poszczególnymi interfejsami (np. gdy użytkownik otwiera fakturę do
edycji przez urządzenie mobilne to dostęp do danej faktury jest blokowany do
edycji dla innych użytkowników w tym samym czasie. Jeśli użytkownik zapo-
mni wyjść z trybu edycji to system na podstawie odpowiednich reguł sam wy-
loguje użytkownika z edytowanego dokumentu umożliwiając jego edycję przez
innych użytkowników)
kreatory kodu System jest otwarty również na dowolną rozbudowę o inne biblioteki kodu. Je-
śli programiści muszą obsłużyć sytuację na tyle nietypową, że nie przewi-
dziano dla niej odpowiedniego konfiguratora - mogą dodać nową bibliotekę
kodu. Biblioteki te są dzięki tej funkcjonalności utrzymywane w aplikacji spo-
sób uporządkowany i czytelny dla różnych zespołów programistów
Za pomocą powyższych narzędzi aplikację składa się niejako z klocków. Narzędzia te nie tylko
przyspieszają budowę aplikacji lecz również umożliwiają szybkie wprowadzanie zmian i modyfikacji
bez zbędnej ingerencji w kod źródłowy aplikacji. W ten sposób aplikacja może być łatwo
dostosowywana do zmieniających się wymagań użytkowników. Wraz z wersjonowaniem procesów i
struktur organizacyjnych platforma DYSANT umożliwia obsługę
dynamicznych systemów aplikacyjnych, w których stale dobudowywane
są nowe funkcjonalności.
11
1.3. PROJEKTOWANIE SATYSFAKCJI
UŻYTKOWNIKA
1.3.1. INTERFEJS UŻYTKOWNIKA
Aplikacje budowane w technologii DYSANT oferują interfejs:
• klienta „cienkiego”, czyli aplikację uruchamianą pod przeglądarką internetową (w tym również
przeglądarki www urządzeń mobilnych);
• interfejsy natywne urządzeń mobilnych, czyli aplikacje projektowanych pod kątem specyfiki danego
urządzenia mobilnego, rozdzielczości jego ekranu i systemu operacyjnego kontrolującego jego
działanie.
Wybór interfejsu dostępowego to decyzja, która niesie ze sobą różnorakie następstwa, zarówno
technologiczne, jak i kosztowe.
Dostawa aplikacji już tylko dla jednego typu klienta wymaga przyjęcia pewnych założeń odnośnie
wyglądu aplikacji, kolorystyki, czcionek, układu formularzy, wielojęzyczności, itd
Poniżej kilka przykładów aplikacji budowanych DYSANT Framework w różnych wersjach.
DYSANT Framework - wersja 3.4
12
DYSANT Framework - wersja 4.5
DYSANT Framework - wersja 5.1
13
DYSANT Framework - wersja 5.2
Zapewnienie dostępu do aplikacji z poziomu różnych interfejsów użytkownika wiąże się ze
zwiększonymi kosztami ponieważ:
• Należy je osobno budować.
• Należy je osobno utrzymywać (np. wprowadzenie zmiany w jednej wersji interfejsu wymusza
zmiany na pozostałych wersjach; zmiana wersji może być podyktowana nową wersją przeglądarki,
nową wersją systemu operacyjnego, etc.).
• W przypadku budowy aplikacji natywnych dla urządzeń mobilnych należy liczyć się z
koniecznością budowy osobnych aplikacji dla różnych systemów mobilnych (iOS, Android), jak
również różnych rozdzielczości (np. iPhone / iPad).
Biorąc pod uwagę powyższe sugerujemy budowę interfejsów aplikacji w technologiach
responsywnych, które ograniczają koszty ich budowy, jak i koszty utrzymania.
14
1.3.2. RWD - RESPONSIVE WEB DESIGN
Skrót RWD oznacza projektowanie aplikacji responsywnych, tzn. takich, które dynamicznie
dostosowują się do rozdzielczości urządzenia, na których są uruchamiane.
Dotyczy to aplikacji przeglądarkowych, które projektuje się tak aby jeden interfejs obsługiwał wiele
różnych rozdzielczości. Innymi słowy aplikację projektu się raz, jednak zaprojektowany interfejs
umożliwia obsługę aplikacji na telewizorze FullHD, tablecie, czy smartphon’ie.
Dotyczy to zarówno strona inter- i intranetowych, jak i aplikacji internetowych dostępnych po
zalogowaniu.
15
1.3.3. UX - USER EXPERIENCE
Zarządzanie UX to zarządzanie całokształtem doświadczeń użytkownika, jakich doświadcza on
korzystając z aplikacji. UX to zatem nie tylko „ładny” interfejs użytkownika lecz również dbałość o
to by był on pomocy, ergonomiczny, komunikatywny i funkcjonalny. To dbałość o to by
użytkownik czerpał przyjemność z pracy z aplikacją.
Dobry UX to rzadka cecha wielu aplikacji dedykowanych, gdyż ograniczenia kosztowe przekładają
się na to ile czasu programista ma na stworzenie formularzy, widoków, itd. Gdy tego czasu brakuje
- programista po prostu umieszcza pola na formularzu, nie zastanawiając się czy są one
komunikatywne, czy ich kolejność jest zgodna z kolejnością danych wprowadzanych przez
użytkowników, itd.
W DYSANT przykładamy ogromną wagę do projektowania UX, stąd też gotowe elementy
formularzy i widoków (przetestowane przez grafików i architektów) stanowią element platformy
DYSANT Framework, która jest niejako zestawem klocków LEGO do budowy aplikacji.
Nasi pracownicy wkładają mnóstwo pracy i energii w klocki - budulec, z którego tworzone są
aplikacje dla naszych klientów na platformie DYSANT Framework. Ta praca zwraca się dzięki
możliwości dostarczenia w rozsądnych budżetach aplikacji o ponadprzeciętnych parametrach
jakościowych.
1.4. KOMPONENTY UZUPEŁNIAJĄCE
Platforma DYSANT korzysta z technologii IBM.
Międzynarodowe umowy umożliwiają nam rozbudowę i uzupełnianie naszych rozwiązań o inne
komponenty technologiczne IBM, które mogą być odpowiedzią na potrzeby naszych klientów.
16
1.4.1. PLATFORMA SPOŁECZNOŚCIOWA
Platforma komunikacji społecznościowej oferująca szereg mechanizmów wspierających
komunikacji, koordynację działań i zarządzanie wiedzą.
1.4.2. NARZĘDZIA BIUROWE ONLINE
Edytor tekstu, arkusz kalkulacyjny i aplikacje do prezentacji dostępna online, przez przeglądarkę,
osadzona w chmurze prywatnej lub we własnej serwerowni.
17
1.4.3. ZUNIFIKOWANA KOMUNIKACJA
Narzędzia wspierające zunifikowaną komunikację i pracę grupową to jest chat, znaczniki
obecności, audio - video-połączenia, video-konferencje, spotkania online (web-konferencje),
współdzielenie ekranu. etc.
1.4.4. EKSTRAKCJA DANYCH
Rozwiązania umożliwiające budowę wirtualnych aplikacji do ekstrakcji danych z różnych typów
dokumentów. Pe ekstrakcji dane mogą być przetwarzane i przekazywane do systemów trzecich.
Rozwiązanie ma głównie zastosowanie przy rozpoznawaniu treści w zeskanowanych materiałach
(OCR).
18
ComBeeNut Sp. z o.o. ul. Plac Defilad 1
00-901 Warszawa Piętro XXVII
e-mail: [email protected]
tel.: +48 22 295 08 89 NIP: 525 213 09 40
REGON: 016001576
www.combeenut.com