top of page

Perspektywa kosmiczna w budowie architektury systemów IT

  • Zdjęcie autora: Cezary Ochman
    Cezary Ochman
  • 12 sty
  • 2 minut(y) czytania

Jest takie wspaniałe ćwiczenie stoickie, które nazywa się “perspektywa kosmiczna”. Polega ono na tym, że w wyobraźni lecimy w kosmos i z daleka obserwujemy naszą wspaniałą planetę, a na niej nasze problemy, zmartwienia, cierpienia etc. Chodzi o to, że z takiej perspektywy wszystko wydaje się nam malutkie i nieistotne. To ćwiczenie uświadamia jak trywialne jest to czym się martwimy z poziomu kosmosu i jak trywialne są nasze niektóre “problemy”, które dość często rosną do rangi niewyobrażalnych ciężarów…

Perspektywa kosmiczna w budowie architektury systemów IT

Trochę przebudowałem to ćwiczenie, aby w podobny sposób spoglądać na budowane przez nas systemy IT. Czyli lecimy w kosmos i patrzymy na planowany lub zbudowany system IT z właśnie takiego oddalenia - niektórzy nazywają to zoom out lub helicopter view, ja nazwę "stoicka perspektywa kosmiczna budowy systemów IT" 😀


Budowa i ocena systemów IT z perspektywy kosmicznej wymaga połączenia strategii biznesowej (po co system powstaje? gdzie przynosi wartość?), architektury technicznej (jakie będą cechy jakościowe i koszty utrzymania?) oraz struktury organizacji zespołów (jak ludzie będą z nim pracować?). Przeczytaj raz jeszcze poprzednie zdanie i zastanów się co to naprawdę oznacza. Oznacza to, że należy postrzegać architekturę systemu jako element socjotechniczny, gdzie ludzie i technologia są nierozerwalnie ze sobą połączeni. I tutaj pojawia się szereg technik i sposobów takiej oceny, a poniżej wybrałem i opiszę kilka z nich.


Zarówno w kontekście oceny już istniejącego systemu jak i planowanych systemów możemy wykorzystać np.:

  • Wardley Mapping - technika ta pozwala na wizualizację krajobrazu biznesowego i technologicznego. Umożliwia zmapowanie łańcucha wartości oraz ewolucji danego komponentu systemu, co pomaga w podejmowaniu decyzji np. typu "budować czy kupować" oraz w przewidywaniu ewolucji systemu.

  • ATAM (Architecture Tradeoff Analysis Method) - czyli metodyczne podejście do oceny architektury systemu, które pomaga zidentyfikować ryzyka architektoniczne, zrozumieć kompromisy (trade-offy) oraz ocenić, czy architektura spełnia kluczowe cele jakościowe systemu.

  • Domain Driven Design, który jest swego rodzajem sercem oceny biznesowo technicznej i pozwala dekomponować system, dzielić zespoły, ocenić koszty przyszłych zmian oraz wyłapać ryzyka integracyjne. Czyli jest to wspaniałe narzędzie socjotechniczne.

  • Model C4, który pomaga nam w świetny sposób "zoomować z kosmosu" i zwizualizować system z poziomu “galaktyki” (context) do poziomu planety (container).


Wydaje mi się, że w dobie AI każdy inżynier oprogramowania powinien dokształcać się w holistycznym rozumieniu budowy systemów oraz testować różne podejścia do tego. Jak już pisałem niedawno - pisanie kodu będzie coraz tańsze, a myślenie inżynieryjne coraz droższe.


Jakie znacie inne narzędzia, metody lub sposoby od holistycznej oceny architektury systemów IT?

Komentarze


bottom of page