Rozproszony system sprzedaży towarów/usług
WYZWANIE
Wdrożyć system sprzedaży we wszystkich oddziałach firmy, który charakteryzowałby się następującymi cechami:
- Wspólna baza kontrahentów, towarów, rozliczeń, stanów magazynowych
- Wspólna polityka linii kredytowej dla kontrahenta we wszystkich oddziałach
- Wspólna centralna polityka uprawnień dla użytkowników
- Elektroniczny przepływ dokumentów pomiędzy oddziałami
- Praca w oddziale (wystawianie dokumentów) powinna być możliwa mimo awarii któregokolwiek z innych elementów systemu np. łącza do siedziby głównej, czy serwera centralnego.
- Wymiana informacji pomiędzy elementami systemu powinna odbywać się w sposób automatyczny bez ingerencji użytkowników systemu z możliwe najkrótszym czasem zwłoki
ROZWIĄZANIE
Po analizie rynku dostępnych produktów zdecydowana się na zaimplementowanie własnego autorskiego rozwiązania. Sposób działania systemu obrazuje poniższy rysunek.
Została stworzona aplikacja trój-warstwowa implementująca procesy biznesowe związane z obrotem towarami/usługami. Każdy z oddziałów posiada własny serwer bazy danych (Linux PostgreSQL) oraz serwer logiki biznesowej (oparty o technologię DCOM). Służą one do tworzenia dokumentów w danej jednostce. Warstwa logiki biznesowej w momencie generowania dokumentów w oddziale tworzy dodatkowe wpisy w bazie danych, które następnie za pomocą dedykowane oprogramowania są przesyłane do serwera centrali a następnie do właściwych serwerów w pozostałych oddziałach. Dzięki temu w ciągu kilku minut we wszystkich oddziałach aktualizowane są informacje o stanach magazynowych, limitach kredytowych dla klientów itd. W przypadku awarii łącza lub któregokolwiek z serwerów dane na temat aktualizacji są buforowane i przesyłane zaraz po nawiązaniu łączności. Każdy z oddziałów może pracować przez dowolny okres czasu będąc odłączonym od pozostałej części infrastruktury.
Wszystkie oddziały w systemie są równoprawne oznacza to, że zarządzanie systemem bądź niektórymi jego elementami np. zarządzanie bazą kontrahentów (przypisywanie do grup, cenników, polityk rabatowych, linii kredytowych itp.) może odbywać się z dowolnego oddziału. Operacje wykonane w oddziałach mają swoje odzwierciedlenie w centralnej bazie danych. Zawiera ona wszystkie wystawione dokumenty. Zaimplementowany mechanizm raportowania może pracować na lokalnej bazie danych w oddziale lub na bazie centralnej dzięki czemu uzyskujemy obraz dla całej firmy.
Na życzenie klienta system nie został wyposażony w moduł FK. Operacje z tym związane odbywają się w CDN Optima. Nasz system posiada odpowiednie interfejsy do integracji z dowolnym system FK.
Do budowy systemu posłużono się następującymi narzędziami/technologiami/sprzętem:
- Aplikacja kliencka/serwer logiki biznesowej (Borland Delphi 2006)
- Moduł synchronizacji danych (Linux C++)
- Sieć VPN oparta została o routery CISCO 1841 i CISCO 871
- Serwery z Serii HP Proliant ML 110
URUCHOMIENIE SYSTEMU
Styczeń 2008