Co to jest model C4?
Model C4 to prosty, wizualny sposób opisywania i komunikowania architektury oprogramowania. Oznacza:
- Zasięg – ogólne spojrzenie (kto korzysta z systemu i jakie inne systemy istnieją wokół niego)
- Pojemnik – podstawowe elementy techniczne na najwyższym poziomie (aplikacja internetowa, aplikacja mobilna, bazy danych itp.)
- Komponent – (opcjonalnie) struktura wewnętrzna każdego pojemnika
- Kod – (opcjonalnie) poziom klas/realizacji
Pomaga zespołom i stakeholderom zrozumieć system na różnych poziomach powiększenia, nie zatopiając się w szczegółach.
Poniżej stosujemy dwa pierwsze poziomy (Zasięg i Pojemnik) do rzeczywistego przypadkuSystem rezerwacji wizyt medycznych.
Dlaczego potrzebujemy tego systemu?
Tradycyjne planowanie wizyt w szpitalu jest bolesne:
- Pacjenci dzwonią w godziny pracy i czekają na połączenie
- Personel ręcznie sprawdza harmonogramy lekarzy w systemach papierowych lub rozproszonych
- Zbyt wiele powtórzonych rezerwacji i braki obecności są powszechne
- Brak łatwego sposobu dla pacjentów, by zobaczyć podsumowanie swojego stanu zdrowia lub dołączyć do konsultacji wideo
- Przypomnienia są zapominane → marnowany czas kliniczny
NowySystem rezerwacji wizyt medycznych rozwiązuje te problemy, dając pacjentom możliwość samodzielnego rezerwowania wizyt 24/7, dostępność w czasie rzeczywistym, automatyczne przypomnienia oraz integrację z telemedycyną i EHR.
Kto są głównymi uczestnikami?
| Uczestnik | Opis |
|---|---|
| Pacjent | Osoba potrzebująca opieki medycznej. Rezerwuje, przesuwa i anuluje wizyty; dołącza do wizyt wirtualnych |
| Personel medyczny | Lekarze, pielęgniarze, sekretarki obsługujące harmonogramy i leczą pacjentów |
Poziom 1: Diagram kontekstu systemu
To widok z wysokości 30 000 stóp
@startuml
!include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml
LAYOUT_TOP_DOWN()
LAYOUT_WITH_LEGEND()
tytuł Diagram kontekstu systemu – System rezerwacji wizyt medycznych
Osoba(pacjent, „Pacjent”, „Rezerwuje wizyty, uczestniczy w wizytach wideo”)
Osoba(personel_medyczny, „Personel medyczny”, „Lekarze, pielęgniarze, administratorzy”)
System(system_rezerwacji, „System rezerwacji wizyt medycznych”, „Główny system do rezerwacji, przesuwania, anulowania wizyt i konsultacji wideo”)
System_Ext(system_ehr, „System EHR”, „Elektroniczne rekordy medyczne”)
System_Ext(platforma_telemedycyny, „Platforma telemedycyny”, „Infrastruktura konsultacji wideo”)
System_Ext(system_harmonogramu, „System harmonogramu szpitala”, „Główny kalendarz lekarzy/pokoi”)
System_Ext(system_komunikacji, „System komunikacji szpitala”, „Brama SMS/email”)
Rel(pacjent, system_rezerwacji, „Rezerwuje/przesuwa wizyty, uczestniczy w rozmowach wideo”)
Rel(pacjent, platforma_telemedycyny, „Przeprowadza konsultacje wideo przez”)
Rel(pacjent, system_ehr, „Przegląda własne rekordy (tylko do odczytu)”)
Rel(personel_medyczny, system_rezerwacji, „Zarządza wizytami”)
Rel(personel_medyczny, system_ehr, „Odczytuje/zapisuje rekordy pacjentów”)
Rel(personel_medyczny, system_harmonogramu, „Przegląda główny harmonogram”)
Rel(personel_medyczny, system_komunikacji, „Wysyła powiadomienia”)
Rel(system_rezerwacji, system_harmonogramu, „Sprawdza i aktualizuje dostępność w czasie rzeczywistym”)
Rel(system_rezerwacji, system_ehr, „Synchronizuje identyfikatory pacjentów i dane podstawowe”)
Rel(system_rezerwacji, system_komunikacji, „Wyzwala przypomnienia SMS/email”)
@enduml

Główna lekcja z kontekstu: nasz system rezerwacji jest centralnym węzłem łączącym pacjentów, personel i cztery istniejące systemy korporacyjne.
Poziom 2: Diagram kontenerów
Teraz powiększamy i pokazujemy główne części techniczne wewnątrz granic naszego systemu.

Wyjaśnienie kontenerów kluczy
| Kontener | Technologia | Odpowiedzialność |
|---|---|---|
| Aplikacja internetowa do rezerwacji | React + Node.js/Express | Aplikacja jednostronicowa używana zarówno przez pacjentów, jak i personel |
| Aplikacja mobilna | React Native | Natywny doświadczenie iOS/Android dla pacjentów |
| Moduł telemedycyny | WebRTC + serwer sygnalizacyjny | Zabezpieczone połączenia wideo, sala oczekiwania, udostępnianie ekranu |
| Silnik harmonogramu | Python/Django | Główna logika biznesowa: brak dwukrotnych rezerwacji, czasu buforowego, dni wolnych |
| Usługa powiadomień | Node.js + Redis + BullMQ | Pewna dostawa przypomnień 24 godziny, 2 godziny i 15 minut przed |
| Baza danych pacjentów (MySQL) | MySQL 8 | Dane osobowe, zgodę, preferowany język |
| Baza danych wizyt (PostgreSQL) | PostgreSQL 15 | Niewymuszalny ślad audytowy wszystkich rezerwacji i zmian |
Kiedy używamy każdego diagramu?
| Sytuacja | Który diagram przedstawić |
|---|---|
| Rozmowa z dyrektorami szpitala lub pacjentami | Diagram kontekstowy (duży obraz, bez żargonu technicznego) |
| Wprowadzanie nowych programistów | Diagram kontenerów (pokazuje, gdzie znajduje się kod) |
| Omawianie granic bezpieczeństwa i zgodności | Kontener (jasne rozróżnienie systemów wewnętrznych i zewnętrznych) |
| Wybór stosu technologicznego lub wdrożenia w chmurze | Kontener (pokazuje bazy danych, kolejki komunikatów itp.) |
| Pisanie oferty lub umowy z zewnętrznym dostawcą | Kontekst + Kontener |
Jak używaćChatbot do modelowania wizualnego z AI od Visual Paradigmaby ułatwić cały proces modelowania C4 dla systemu rezerwacji wizyt medycznych
Oto rzeczywisty, krok po kroku przepływ pracy, który zamienia godziny ręcznego rysowania diagramów i dokumentacji w rozmowę trwającą 10–15 minut z AI.

Krok 1: Zacznij od zera za pomocą jednego polecenia (30 sekund)
Po prostu wpisz to do czatu AI Visual Paradigm:
„Utwórz kompletny model C4 (diagramy kontekstowy i kontenerów) dla nowoczesnego systemu rezerwacji wizyt medycznych. Aktorzy: Pacjenci i personel medyczny (lekarze, pielęgniarze, administratorzy). System pozwala pacjentom rezerwować, przesuwać i anulować wizyty 24/7, dołączać do rozmów wideo telemedycyny, otrzymywać automatyczne przypomnienia i przeglądać własne podsumowanie medyczne. Integruje się z istniejącym systemem EHR, systemem głównego harmonogramu szpitalnego oraz bramką komunikacyjną. Użyj nowoczesnego stosu technologicznego: aplikacja internetowa na React, aplikacja mobilna na React Native, backend na Node.js, silnik harmonogramowania na Python, bazy danych PostgreSQL + MySQL, WebRTC do wideo.”
→ W mniej niż 10 sekund otrzymujesz piękny, poprawnie ułożonydiagram kontekstowy C4 i diagram kontenerów C4 — niemal identyczny z przykładami PlantUML, które widziałeś wcześniej, ale już wyrenderowany i gotowy do prezentacji.
Krok 2: Natychmiastowe dopracowanie za pomocą naturalnych poleceń (2–5 minut)
Teraz po prostu porozmawiaj z diagramem:
- „Dodaj kontener usługi Powiadomień, która wysyła przypomnienia SMS i e-mail”
- „Połącz usługę Powiadomień z systemem komunikacyjnym szpitalnym”
- „Pokaż moduł telemedycyny z wykorzystaniem WebRTC”
- „Podziel bazę danych na bazę danych Pacjentów (MySQL) i bazę danych Wizyt (PostgreSQL)”
- „Zmień nazwę „Personel medyczny” na „Lekarz / Pielęgniarz / Recepcjonista” i dodaj ikonę”
- „Zmień układ na od góry do dołu i dodaj legendę”
- „Zadbaj, by aplikacja internetowa i aplikacja mobilna obie używały HTTPS do backendu”
Każde polecenie natychmiast aktualizuje diagram w czasie rzeczywistym — bez przesuwania, bez ponownego wyrównywania, bez błędów składniowych.
Krok 3: Zadaj pytania dotyczące diagramu (natychmiastowa wiedza)
Traktuj to jak kompetentnego architekta siedzącego obok ciebie:
- „Na jakie systemy zewnętrzne zależy ten system?”
- „Wypisz wszystkie kontenery i ich technologie”
- „Jakie są główne granice bezpieczeństwa?”
- „Stwórz jednostroniczy podsumowanie architektury dla kierownictwa”
- „Napisz trzy-akapitowy opis dla naszego Zapytania o Ofertę”
Od razu otrzymujesz idealnie sformułowany tekst, który możesz skopiować i wkleić do propozycji, Confluence lub PowerPointa.
Krok 4: Uzyskaj pełną dokumentację na żądanie (30 sekund)
Powiedz AI:
„Stwórz profesjonalną dokumentację architektury dla tego modelu C4, w tym opis kontekstu, opis kontenerów, kluczowe decyzje projektowe oraz wybrane technologie.”
Otrzymujesz kompletny, pięknie sformatowany dokument w formacie Markdown lub gotowy do użycia w programie Word w ciągu kilku sekund.
Krok 5: Eksport jednym kliknięciem do zaawansowanego narzędzia, gdy potrzebujesz współpracy zespołu
Gdy projekt zostanie zaakceptowany:
- Kliknij„Otwórz w Visual Paradigm Desktop”lub„Eksportuj jako projekt .vpp”
- Cały model (z kształtami, układem, notatkami, słownikiem) otwiera się w pełnej wersji Visual Paradigm do przeglądu przez zespół, kontroli wersji, dodawania diagramów komponentów lub sekwencji, generowania plików PDF/PNG itd.
Dlaczego to jest przełom dla projektu w ochronie zdrowia
| Tradycyjna metoda (2–8 godzin) | Z Visual Paradigm AI (10–15 minut) |
|---|---|
| Otwórz PlantUML / draw.io / Lucidchart | Po prostu wpisz akapit |
| Ręcznie twórz każdy prostokąt i strzałkę | AI tworzy diagram poprawny w 95% natychmiast |
| Koryguj układ i wyrównanie raz po razie | AI utrzymuje idealny układ po każdej zmianie |
| Pisz dokumentację oddzielnie | Zapytaj → otrzymaj idealną dokumentację natychmiast |
| Kopiuj i wklej między narzędziami | Jednoklikowe przejęcie bezproblemowe do pełnowartościowego narzędzia na komputer stacjonarny |
Wynik: Architekci rozwiązań, architekci przedsiębiorstw i zespoły programistów mogą teraz tworzyć gotowe do prezentacji diagramy i dokumentację C4 szybciej niż zajmuje to zorganizowanie kolejnej rozmowy.
Rozpocznij teraz: przejdź do Visual Paradigm Online → „Czat AI” → wklej powyższy prompt i obserwuj, jak magia dzieje się w sekundę.
Podsumowanie
Wykorzystując tylko dwa proste diagramy, możemy teraz jasno odpowiedzieć:
- Co system robi i kto korzysta z jego korzyści
- Jak pasuje do istniejącego środowiska IT szpitala
- Jakie kluczowe aplikacje i bazy danych musimy stworzyć lub zintegrować
Ta jasność drastycznie zmniejsza nieporozumienia między stakeholderami biznesowymi, architektami i zespołami programistów — i właśnie dlatego model C4 stał się standardem de facto dla dokumentacji nowoczesnej architektury oprogramowania.