Definicja

API (Interfejs Programowania Aplikacji) to “łącznik”, który umożliwia jednemu programowi korzystanie z funkcji lub danych innego programu. W analizie systemowej API traktowane jest jako kontrakt: jedna strona (serwer/dostawca) obiecuje udostępnić określone dane, jeśli druga strona (klient) wyśle zapytanie w ściśle określonym formacie.

Jak działa API? (Mechanizm Request-Response)

Komunikacja przez API opiera się na prostym cyklu:

  1. Request (Żądanie): Aplikacja kliencka wysyła zapytanie do serwera (np. „Podaj listę produktów”).
  2. Przetwarzanie: Serwer sprawdza uprawnienia, pobiera dane z bazy (zgodnie ze strukturą opisaną w ERD) i wykonuje logikę biznesową.
  3. Response (Odpowiedź): Serwer odsyła dane (np. w formacie JSON) wraz ze statusem (np. 200 OK lub 404 Not Found).

Najpopularniejszy standard: REST API

Większość nowoczesnych systemów korzysta ze standardu REST (Representational State Transfer), który opiera się na protokole HTTP i wykorzystuje jego metody:

  • GET: Pobieranie danych (np. GET /uzytkownicy/1).
  • POST: Tworzenie nowych zasobów (np. POST /zamowienia).
  • PUT/PATCH: Aktualizacja istniejących danych.
  • DELETE: Usuwanie zasobów.

Dlaczego API jest kluczowe dla Analityka?

Analityk systemowy nie musi pisać kodu API, ale musi umieć zaprojektować jego logikę:

  • Projektowanie kontraktów: Określenie, jakie pola muszą znaleźć się w zapytaniu (input), a jakie w odpowiedzi (output).
  • Mapowanie danych: Upewnienie się, że dane przesyłane przez API odpowiadają strukturze bazy danych.
  • Obsługa błędów: Zdefiniowanie, co system ma odpowiedzieć, gdy np. zabraknie towaru w magazynie (logika opisana w Przypadkach użycia).
  • Bezpieczeństwo: Określenie wymagań niefunkcjonalnych dotyczących autoryzacji (np. klucze API, tokeny JWT).

Dokumentacja API (Swagger / OpenAPI)

Standardem w branży jest korzystanie ze specyfikacji OpenAPI, często wizualizowanej w narzędziu Swagger. Pozwala ono analitykom i deweloperom na:

  • Przeglądanie wszystkich dostępnych punktów końcowych (endpoints).
  • Testowanie zapytań “na żywo”.
  • Zrozumienie formatu danych bez czytania kodu źródłowego.

Typowe błędy

  • Brak wersji API: Zmiana w API, która “psuje” działające aplikacje mobilne (tzw. breaking change).
  • Zbyt “gadatliwe” API: Przesyłanie zbyt dużej ilości zbędnych danych, co obciąża łącze (problem wydajnościowy).
  • Niejasne komunikaty błędów: Zwracanie ogólnego “Wystąpił błąd” zamiast konkretnej informacji o przyczynie.

Podsumowanie

API to kręgosłup współczesnego Internetu i systemów rozproszonych. Dobrze zaprojektowane API pozwala na łatwą rozbudowę systemu i integrację z zewnętrznymi dostawcami (np. płatnościami PayU czy mapami Google), co jest fundamentem nowoczesnej Analizy systemowej.


Powiązane pojęcia:

Analiza systemowa Dokumentacja techniczna Diagram sekwencji (UML) Modelowanie danych (ERD) Wymaganie niefunkcjonalne

Kliknij w pojęcie, aby przejść do jego definicji w słowniku