Diagramy projektowe architektury
Architekci często komunikują się za pośrednictwem diagramów. Diagramy to zaawansowane narzędzia komunikacyjne, które pomagają implementatorom i uczestnikom projektu zobaczyć szeroką wizję lub zagłębić się w bardzo wrażliwe lub zniuansowane obszary systemu. Aby komunikować się z intencją, architekt musi wybrać, który diagram jest przydatny w każdej sytuacji.
Lista diagramów w tym artykule nie jest wyczerpująca. Diagramy są często złożone z wielu typów.
Ostatecznie wybór diagramu architektury zależy od tego, co próbujesz przekazać i profil odbiorców. Architekt używa wielu typów diagramów w ramach działań w celu projektowania, uściślenia wymagań i komunikacji.
Praktyki diagramowania
Diagramy przedstawiają istotne informacje bez konieczności tłumaczenia tekstu. Unikaj niejednoznaczności na diagramach. Poniżej przedstawiono kilka rekomendacji:
Użyj notacji standardowych. Używaj powszechnie rozpoznawanych symboli, ikon i konwencji prezentacji w celu zapewnienia dobrej czytelności i interpretacji diagramu.
Unikaj niejednoznacznych linii. Diagramy często pokazują relacje między jednostkami reprezentowanymi jako linie. Bądź spójny w sposobie używania wierszy.
Unikaj linii bez strzałek. Trudno jest wiedzieć, jaka jest relacja bez kierunku, więc użyj strzałek. Oznacz wszystkie wiersze bez strzałek, aby oznaczyć relacje.
Unikaj linii ze strzałkami podwójnymi. Podwójne strzałki oznaczają zależność dwukierunkową. Preferuj używanie jednokoletowej strzałki do reprezentowania przepływu z zależnego (klienta) do zależności (serwera).
Oznacz wszystko. Podaj jasne, dokładne i znaczące etykiety dla każdej ikony. Etykieta wierszy, gdy relacje nie są jasne.
Zachowaj spójność. Użyj standardowych kolorów, wielkości liter, ikon, rozmiarów ikon, typów linii, grotów strzałek i innych reprezentacji podobnych elementów na diagramie. Zachowaj spójność na wszystkich diagramach utworzonych na potrzeby projektowania i dokumentacji obciążenia. Rysuj z istniejących danych lub taksonomii.
Bądź dokładny. Diagramy są abstrakcją, ale nie poświęcają dokładności w procesie. Na przykład nie reprezentuje usługi w sieci wirtualnej, jeśli nie istnieje w tej sieci wirtualnej. Diagram jest narzędziem komunikacyjnym, więc należy unikać nieporozumień z powodu niedokładności.
Uwzględnij metadane. Upewnij się, że diagram zawiera metadane, które zawierają podstawowe informacje o celu diagramu. Metadane dają również kontekst, aby ułatwić osobom przeglądającym zrozumienie zakresu i istotności diagramu. Uwzględnij elementy, takie jak tytuł, opis, data ostatniej aktualizacji, autor i odwołania zewnętrzne.
Użyj oficjalnych ikon i nazw usług. Jeśli reprezentujesz określoną technologię, użyj najnowszych oficjalnych ikon od dostawcy technologii. Jeśli identyfikacja technologii jest ważna, użyj oficjalnej nazwy usługi.
Oto na przykład ikony dla usługi firmy Microsoft:
- Ikony architektury platformy Azure
- Ikony platformy Microsoft 365
- Ikony usługi Microsoft Dynamics 365
- Ikony architektury identyfikatora entra firmy Microsoft
- Ikony usługi Microsoft Power Platform
Typy diagramów projektowych
Architektura obciążenia jest złożona i wielowymiarowa. Każdy typ wymiaru koncentruje się na określonym aspekcie systemu, zapewniając poziom szczegółowości specyficzny dla tego wymiaru. Na przykład schematy blokowe ilustrują przepływ procesów. Diagramy relacji jednostek przedstawiają relacje między składnikami systemu.
Posiadanie różnych typów diagramów umożliwia kompleksowe zrozumienie wymiarów. Pomaga to zachęcić do skutecznej komunikacji, rozwiązywania problemów i podejmowania decyzji wśród uczestników projektu.
Diagram systemu wysokiego poziomu
Ogólny diagram systemowy służy jako ogólny przegląd całego obciążenia lub podsekcji w ramach obciążenia. Obejmuje ona główne składniki, ich relacje ze sobą oraz przybliżoną kolejność, w jakiej dane przepływają przez system. Strzałki pokazują kierunek interakcji.
Te diagramy są dobre do osiągnięcia wspólnego zrozumienia, dzięki czemu można rozpocząć głębsze dyskusje lub komunikację uczestników projektu.
Diagram blokowy
Diagram blokowy dzieli obciążenie na główne bloki funkcjonalne. Bloki są zwykle niezależne od technologii. Odnoszą się one do funkcji, które są wykonywane zamiast określonego składnika.
Na przykład diagram blokowy może odwoływać się do "magistrali komunikatów" zamiast określonej technologii magistrali komunikatów. Ten typ diagramu może pomóc wyjaśnić strukturę systemu, przepływ danych i przepływ przetwarzania bez rozpraszania odbiorców z precyzyjnymi szczegółami.
Diagramów składników
Diagram składników działa jak diagram blokowy, ale zastępuje ogólne bloki funkcjonalności określonymi technologiami. Przedstawia szczegółowy widok z celem komunikowania poszczególnych składników technologicznych systemu i ich relacji, takich jak klient/serwer. Te diagramy są rodzajem wizualnego rachunku materiałów dla zakresu diagramu.
Diagram wdrażania
Diagram wdrażania koncentruje się na wdrażaniu infrastruktury, komercyjnego oprogramowania poza półki (COTS) i niestandardowego kodu w całym obciążeniu. Pokazuje on, jak oprogramowanie i kod są dystrybuowane w całej infrastrukturze hostingu.
Diagram przepływu danych
Diagram przepływu danych (DFD) ilustruje sposób, w jaki dane przechodzą przez system, co jest przydatne podczas modelowania systemów skoncentrowanych na danych. Na diagramie takim jak w tym miejscu warto zauważyć, czy dane są przenoszone w partiach lub w czasie rzeczywistym w celu usunięcia niejednoznaczności.
Diagramów sekwencji
Diagram sekwencji przedstawia wymianę komunikacji między składnikami obciążenia w czasie. Ilustruje to relacje klienta/serwera i ich synchroniczny lub asynchroniczny charakter. Wyróżnia również zależności w tych wymianach i ocenia scenariusze błędów w nich.
Diagram przepływu użytkownika
Diagram przepływu użytkownika koncentruje się na interakcji w zakresie między obciążeniami, użytkownikami lub aktorami a obciążeniem. Warto wyjaśnić i wizualizować wymagania funkcjonalne na różne sposoby interakcji użytkownika i danych użytkownika z systemem.
Diagram relacji jednostek
Diagram relacji jednostki (ERD) to diagram modelowania reprezentujący strukturę bazy danych lub innego systemu magazynu. Przedstawia on relację między jednostkami (takimi jak tabele) za pomocą standardowych atrybutów branżowych i symboliki skojarzenia.
Diagram sieci
Diagram sieciowy ilustruje rozwiązanie z perspektywy sieci, z którą działa lub wchodzi w interakcję. Te diagramy są przydatne podczas wizualizowania segmentacji sieci obciążenia, punktów sieciowych awarii i kluczowych przejść sieciowych, takich jak ruch wychodzący z Internetu i punkty ruchu przychodzącego.
Diagramy sieciowe zwykle mają implementację z przeszłości życia. Diagramy sieciowe są często używane w inspekcjach i reagowaniu na zdarzenia.
Diagram stanu
Diagram stanu to wyspecjalizowana wizualizacja. Pokazuje stan, w jaki znajduje się przepływ (lub pojedynczy składnik). Pokazuje również, jak przepływ przechodzi między stanami w odpowiedzi na warunki lub zdarzenia.
Schemat blokowy
Chociaż nie jest to diagram architektury, schemat blokowy jest innym sposobem na zapewnienie przejrzystości w projekcie. Schematy blokowe są często przydatne, gdy reprezentują złożone przepływy pracy lub logikę. Można ich użyć, aby pomóc w uściśleniu wymagań i w celu ułatwienia wyboru implementacji.
Schematy blokowe są przydatne do uwzględnienia w planach reagowania na zdarzenia obciążenia w celu wyróżnienia kluczowych punktów decyzyjnych i skojarzonych z nimi akcji lub kanałów powiadomień.