Połączenie programów

Aktualizacja:

Integracja systemów w firmie: od czego zacząć?

Przed wyceną integracji trzeba ustalić, jakie dane mają przechodzić między programami, gdzie wolno je zmieniać i jak sprawdzisz, czy dotarły. Nazwy dwóch systemów nie opisują jeszcze pracy, którą ma wykonać połączenie.

Opisz jedno przekazanie danych

Zamiast zaczynać od „połączymy wszystkie programy”, wybierz konkretne zadanie. Na przykład: nowe zamówienie ze sklepu ma utworzyć zlecenie w programie do realizacji, a numer zlecenia ma wrócić do sklepu. Określ, w którym momencie zamówienie nadaje się do przekazania i co ma się wydarzyć, jeśli później zostanie zmienione.

Taki opis pozwala oddzielić pierwszą użyteczną integrację od kolejnych pomysłów. Synchronizacja klientów, cen, stanów magazynowych i dokumentów sprzedaży to osobne zakresy z własnymi regułami. Nie muszą powstać jednocześnie, nawet jeśli dotyczą tych samych programów.

Zapisz również, jak pracownicy wykonują to zadanie dzisiaj. Bez punktu odniesienia trudno będzie ustalić, czy nowe połączenie zmniejszyło przepisywanie danych, czy tylko przeniosło pracę do sprawdzania błędów.

Ustal, który program rozstrzyga rozbieżności

Ta sama firma może występować w kilku systemach pod nieco inną nazwą. Cena może być aktualizowana w jednym miejscu, a opis produktu w drugim. Dlatego źródło danych trzeba wskazać osobno dla ważnych informacji, zamiast uznawać jeden program za nadrzędny we wszystkim.

Poniższa tabela przedstawia fikcyjny przykład połączenia sklepu z aplikacją obsługującą realizację. Nie opisuje istniejącego wdrożenia ani zgodności z konkretnym produktem.

Przesuń tabelę w bok, aby porównać źródła danych i zasady zmian.

Informacja Miejsce wprowadzania Zasada wymiany
Pozycje nowego zamówienia Sklep Przekazanie po spełnieniu ustalonych warunków.
Numer zlecenia Aplikacja do realizacji Zapisanie w sklepie po utworzeniu zlecenia.
Etap realizacji Aplikacja do realizacji Przekazanie tylko uzgodnionych etapów widocznych dla klienta.
Zmiana adresu po rozpoczęciu pracy Uzgodnienie przez biuro Sprawdzenie przez człowieka przed zastąpieniem wcześniejszych danych.

Przy każdym polu ustal także jednostkę, format i sposób rozpoznawania rekordu. Kod produktu jest zwykle lepszym punktem odniesienia niż podobnie brzmiąca nazwa, ale trzeba sprawdzić, czy jest rzeczywiście unikalny w obu programach. Niejasne dopasowanie powinno trafić do wyjaśnienia, zamiast łączyć dane na podstawie domysłu.

Sprawdź możliwości konkretnej wersji programu

API to udostępniony sposób wymiany danych z programem. Sama informacja, że produkt je ma, nie potwierdza jeszcze możliwości odczytu lub zapisania potrzebnych pól. Dostęp może zależeć od planu, wersji, uprawnień albo dodatkowej zgody dostawcy.

Przed ustaleniem ceny poproś o sprawdzenie:

  • odczytu oraz zapisu dokładnie tych danych, które obejmuje zakres;
  • limitów liczby operacji i ewentualnych dodatkowych opłat;
  • powiadomień o zmianach albo możliwości okresowego pobierania danych;
  • środowiska do prób bez tworzenia prawdziwych zamówień i wysyłek;
  • dokumentacji oraz zasad aktualizowania interfejsu;
  • dostępu do eksportu, gdy połączenie przestaje działać.

Jeżeli odpowiedni interfejs nie istnieje, alternatywą bywa import plików. Trzeba wtedy nazwać opóźnienie i udział pracownika: kto przygotowuje plik, kto go sprawdza oraz jak rozpoznaje się wiersze odrzucone przy imporcie. Nie nazywajmy tego wymianą na bieżąco, jeśli wymaga ręcznej operacji raz dziennie.

Zaplanuj opóźnienia, ponowienia i konflikty

Program wysyłający dane może nie otrzymać odpowiedzi, choć drugi system zdążył je zapisać. Ponowienie operacji nie powinno wówczas tworzyć kolejnego zlecenia. Trzeba uzgodnić sposób rozpoznawania tej samej operacji oraz późniejszego sprawdzenia jej wyniku.

Takie przypadki mają konkretne potwierdzenie w dokumentacji dostawców. Stripe opisuje możliwość wielokrotnego dostarczenia tego samego zdarzenia oraz brak gwarancji ich kolejności. To przykład zasad jednej usługi; zachowanie programów używanych w Twojej firmie wymaga osobnego sprawdzenia. Dokumentacja webhooków Stripe.

Ustal, jaki czas oczekiwania jest dopuszczalny. Aktualizacja raz na kilkanaście minut może być wystarczająca dla części raportów, a nieodpowiednia dla danych potrzebnych do podjęcia następnej czynności. Częstotliwość powinna wynikać z pracy firmy i możliwości systemów, a nie z samego hasła „automatyzacja”.

Konflikt również wymaga reguły. Jeżeli dwie osoby zmienią ten sam adres w różnych programach, integracja musi wiedzieć, który zapis przyjąć lub komu pokazać rozbieżność. Automatyczne nadpisanie najnowszym zapisem nie zawsze odzwierciedla właściwą decyzję biznesową.

Błąd powinien mieć właściciela

Pracownik potrzebuje zrozumiałej informacji: którego zamówienia dotyczy problem, czy zostało przekazane i co zrobić dalej. Sam komunikat techniczny w logach nie pozwala biuru obsłużyć klienta.

W zakresie uwzględnij listę spraw oczekujących, ostatnią skuteczną wymianę oraz możliwość powtórzenia operacji przez uprawnioną osobę. Rozdziel brak danych, który może poprawić biuro, od awarii wymagającej wykonawcy integracji. Ustal także, kto sprawdza zaległe operacje po przywróceniu połączenia.

Dopasuj dostęp do zadania. Połączenie odczytujące produkty potrzebuje innych możliwości niż integracja zmieniająca dane klientów. Ustal, kto zarządza danymi dostępowymi i jak dostęp zostanie zmieniony lub odebrany przy przekazaniu odpowiedzialności. Dokładne zasady trzeba dopasować do używanych programów.

Odbiór to więcej niż jedno przesłane zamówienie

Przygotuj próbę obejmującą zwykły przebieg oraz trudniejsze sytuacje: brak produktu, zmienione zamówienie, powtórzoną operację, przerwę w połączeniu i niepełne dane klienta. Po każdej próbie porównaj zapisy w obu systemach, zamiast oceniać tylko komunikat „wysłano”.

Sprawdź, czy można ustalić, które rekordy przeszły, które czekają i które wymagają poprawy. Jeżeli program przesyła kwoty lub ilości, uzgodnij również sposób porównania sum i jednostek. Połączenie jest przydatne wtedy, gdy da się kontrolować wynik jego pracy.

Co wpływa na zakres i koszt

Cena zależy między innymi od liczby obiektów, kierunków wymiany, jakości identyfikatorów, dostępności dokumentacji oraz obsługi wyjątków. Warto osobno wskazać uruchomienie, przeniesienie danych historycznych i utrzymanie połączenia po wdrożeniu.

Do pierwszej rozmowy przygotuj nazwy i wersje programów, przykładowy rekord oraz opis czynności, którą dziś wykonuje pracownik. Na tej podstawie można sprawdzić możliwości integracji systemów i wybrać mały, kompletny zakres do uruchomienia.

Opisz jedno zadanie do usprawnienia.

Napisz, jak wygląda dziś i co sprawia trudność. Na tej podstawie sprawdzimy, czy mogę pomóc i od czego warto zacząć.

Opisz zadanie