Enterprise Architecture Patterns Central Processing and System Integration Bartosz Król
Plan Definicja procesu Analiza architektury Proponowana architektura Przykład zastosowania Szersza perspektywa Podsumowanie
Definicja procesu Fragment procesu CRM w dużej firmie Obsługa komunikacji i przetwarzanie spraw klientów 1 milion klientów 500 konsultantów 5000 spraw dziennie
Analiza architektury Scenariusz „Happy Day” Scenariusz „Real Life” Definicja procesu Wymagania funkcjonalne Scenariusz „Real Life” Odpowiedzialność architekta Analiza i zrozumienie procesu Analiza i zrozumienie powiązań pomiędzy systemami
Analiza architektury
Analiza architektury
Analiza architektury Niedostępność dowolnego systemu nie może powodować zatrzymania całego procesu Punkty integracji systemów są zawsze krytyczne Dostęp do niektórych systemów powinien być realizowany w trybie wsadowym Dostęp do niektórych systemów wymaga skomplikowanej konfiguracji stacji klienckiej
Proponowana architektura
Proponowana architektura Service Kolejkuje akcje zgłaszane przez klientów Bardzo lekki komponent – jedyna funkcja to zapisanie akcji Bardzo wysoka dostępność (np. load balancing) Data Store Najczęściej relacyjna baza danych Worker Masowe pobieranie oczekujących akcji w zdefiniowanych interwałach Możliwość skalowania poprzez dodanie nowych instancji Za wykonanie danego typu akcji odpowiada dedykowany „handler” „Handler” to logika biznesowa, która między innymi decyduje o statusie (RecoverableError vs UnrecoverableError) Automatyczne powtarzanie nieudanych akcji SLA, KPI, raportownie, monitorowanie
Przykład zastosowania Demo
Szersza perspektywa Kolejka ma szeroki zakres zastosowań Procesy, które nie wymagają komunikacji w czasie rzeczywistym Punkty integracji systemów Procesy obsługiwane przez konsultantów Asynchroniczne procesy masowe
Podsumowanie Propozycja architektury musi zostać poprzedzona analizą potencjalnych problemów Gotowość architektury na scenariusz „Real Life” jest istotą roli architekta Architektura musi zawsze zakładać, że dowolny punkt integracji systemów przestanie działać W praktyce proste rozwiązania sprawdzają się dużo częściej niż skomplikowane platformy
Q&A bartosz.krol@hotmail.com