Od chaotycznych sformułowań problemów do czystych, wykonalnych diagramów klas — w ciągu kilku minut.
🎯 Czym jest analiza tekstowa zintegrowana z AI?
Visual Paradigm’s Analiza tekstowa zintegrowana z AI to inteligentny asystent modelowania, który pomaga menedżerom produktu, architektom oprogramowania i programistom przekształcać nieuporządkowany język naturalny (np. historie użytkownika, wymagania lub opisy systemu) na uporządkowany model domeny — a dokładnie diagram klas UML.

Zamiast ręcznie identyfikować encje, atrybuty i relacje, AI przetwarza tekst, wyciąga istotne elementy projektowe i proponuje model wizualny, który możesz dopracować.
🔍 Główna idea: Przekształć narrację → rzeczowniki → klasy → relacje → diagram — automatycznie.
✅ Kluczowe zalety
| Zaleta | Opis |
|---|---|
| Szybkość i efektywność | Zmniejsza czas początkowego modelowania z godzin do minut. |
| Spójność | Minimalizuje subiektywne interpretacje między zespołami. |
| Pomoc w nauce | Świetne dla młodych programistów uczących się projektowania obiektowego. |
| Śledzenie | Każda sugestia zawiera powód — przejrzysty i audytowalny. |
| Iteracyjne dopracowywanie | Rozpocznij od AI → edytuj swobodnie w VP Online → eksportuj do kodu lub dokumentów. |
| Odkrywanie dziedziny | Wykrywa ukryte koncepcje (np. Transakcja, Dziennik audytu) które możesz pominąć. |
🛠️ Poradnik krok po kroku (z rzeczywistymi przykładami)
Przejdźmy przez trzy stopniowo złożone przykłady, od prostych do poziomu korporacyjnego.

📘 Przykład 1: System zarządzania biblioteką (rozpoczęcie)
📝 Krok 1: Podaj opis problemu
- Przejdź do Narzędzia > Aplikacje > Analiza tekstowa > Rozpocznij teraz
- Wprowadź:
System zarządzania biblioteką - Kliknij [Wygeneruj opis problemu]
👉 AI generuje:
„System zarządzania biblioteką pozwala bibliotekarzom zarządzać książkami, członkami i wypożyczeniami. Członkowie mogą wyszukiwać książki, wypożyczać do 5 przedmiotów jednocześnie i je zwracać. Opóźnione zwrócenia wiążą się z karą. Każda książka ma tytuł, autora, ISBN i status dostępności. Bibliotekarze mogą dodawać/usuwać książki i przeglądać historię wypożyczeń.”
✅ Edytuj, jeśli potrzeba — np. dodaj: „Obsługuje e-booki cyfrowe i kolejki rezerwacji.”
👥 Krok 2: Zidentyfikuj kandydatów do klas
Kliknij [Zidentyfikuj kandydatów do klas]
| Nazwa klasy | Powód | Opis |
|---|---|---|
Książka |
Główna encja wspomniana wielokrotnie | Reprezentuje książki fizyczne/cyfrowe |
Użytkownik |
Obiekt działań (wypożyczanie, zwracanie) | Użytkownik biblioteki z danymi kontaktowymi |
Wypożyczenie |
Słowo rzeczowe oznaczające działanie → kluczowa transakcja | Rejestruje wypożyczenie książki przez użytkownika |
Bibliotekarz |
Wykonawca zadań administracyjnych | Personel zarządzający systemem |
Kara |
Skutki opóźnionych wypożyczeń | Kara pieniężna |
🔁 Zobacz też: „rzeczowniki nieokreślone” (np.stan, historia → zbyt ogólnikowe lub podobne do atrybutów).
✅ Zaakceptuj wszystko lub usuń Bibliotekarz jeśli role są obsługiwane za pomocą uprawnień (np. używając Użytkownik + flagi roli).
📋 Krok 3: Zidentyfikuj szczegóły klasy
Kliknij [Zidentyfikuj szczegóły klasy]
Przykładowy wynik dlaKsiążka:
- Atrybuty:
isbn: String
tytuł: String
autor: String
isAvailable: Boolean
format: Wyliczenie {Fizyczny, Cyfrowy} - Operacje:
sprawdźDostępność(): Boolean
oznacz jako wypożyczony()
oznacz jako zwrócony()
DlaWypożyczenie:
- Atrybuty:
dataWypożyczenia: Data
dataZwrotu: Data
dataZwrotu: Data? - Operacje:
obliczLiczbeOpóźnionychDni(): Int
zastosujKary
💡 Porada: Zmień nazwę isAvailable → status: BookStatus (enum: Dostępny, Wypożyczony, Zarezerwowany) dla rozszerzalności.
🔗 Krok 4: Zidentyfikuj relacje między klasami
Kliknij [Zidentyfikuj relacje między klasami]
| Od → Do | Typ | Mnożność | Opis |
|---|---|---|---|
Członek — Wypożyczenie |
Kompozycja | 1 → * | Członek posiada swoje wypożyczenia |
Wypożyczenie — Książka |
Związek | 1 → 1 | Każde wypożyczenie obejmuje jedną książkę |
Pożyczka — Kara |
Opcjonalna kompozycja | 1 → 0…1 | Pożyczka może generować karę, jeśli jest spóźniona |
⚠️ Uważaj: AI może pominąćagregacja vs kompozycja. Edytuj ręcznie, jeśliPożyczka powinien odniesienie (nie własny) Książka.
🖼️ Krok 5: Generuj diagram
Kliknij[Generuj diagram] → Pojawia się pełny diagram klas UML!

✅ Następnie kliknij[Otwórz w Visual Paradigm Online] aby:
- Przestaw układ
- Dodaj stereotypy (
«encja»,«granica») - Link do przypadków użycia lub diagramów sekwencyjnych
- Eksportuj jako PNG, PDF lub generuj szkielety Java/Python
🛒 Przykład 2: Koszyk zakupowy e-commerce (Średnio zaawansowany)
Podpowiedź wejściowa:
„Sklep internetowy, w którym użytkownicy przeglądają produkty, dodają przedmioty do koszyka, stosują kody promocyjne, dokonują zakupu kartą kredytową lub PayPal i śledzą zamówienia. Admini zarządzają zapasami i przeglądają raporty sprzedaży.”
Klasy zidentyfikowane przez AI:
Użytkownik,Produkt,Koszyk zakupowy,Pozycja w koszyku,Zamówienie,Płatność,Kod promocyjny,Inwentarz,Administrator
Uwagi dotyczące relacji:
Koszyk zakupowy◇——Element koszyka(agregacja; koszyk ma elementy, ale elementy nie są usuwane razem z koszykiem)Zamówienie◆——Płatność(kompozycja; płatność jest częścią cyklu życia zamówienia)Kod promocyjny——Zamówienie(0…1 → 1; opcjonalny podczas kasy)
Uzyskane spostrzeżenie:
AI sugeruje Element koszyka jako osobny od Produkt — dobre! Ponieważ:
Element koszykamailość,dodano, i zdjęcie ceny (aby obsłużyć zmiany cen).Produktmaaktualna cena,poziomZapasu.
➡️ Zapobiega powszechnemu błędowi modelowania: utożsamianie element katalogu z element pozycji koszyka.
🏥 Przykład 3: System rezerwacji wizyt w szpitalu (zaawansowany)
Wprowadź prompt (dostosowany do realistyczności):
„Pacjenci rezerwują wizyty u lekarzy. Każda wizyta ma datę/godzinę, typ (np. konsultacja, wizyta kontrolna) i status (zamówiona, zakończona, anulowana). Lekarze mają specjalizacje i grafiki pracy. System wysyła przypomnienia 24 godziny wcześniej. Pracownicy medyczni mogą zapisywać pacjentów. Wyniki badań laboratoryjnych są przypisywane po wizicie.”
Wyróżnienia AI:
| Klasa | Dlaczego to ma znaczenie |
|---|---|
Wizyta |
Główny obiekt przepływu pracy |
Harmonogram lekarza |
Oddzielony od Lekarz → zgodny z zasadą SRP (jedna odpowiedzialność) |
Przypomnienie |
Zewnętrzne zachowanie → może później stać się usługą opartą na zdarzeniach |
WynikLaboratoryjny |
Przypisany do wizyty, nie do pacjenta — śledzenie! |
Inteligentna relacja:
Wizyta◆——Wynik badania(1 → 0…*)
→ Wymusza: Wyniki istnieją tylko dla ukończonych wizyt.
Ukryta szpera:
AI oznacza "typ" i "status" w wizycie → sugeruje wyliczenia:
wyliczenie TypWizyty { KONSULTACJA, WIZYTA KONTROLNA, WAKCYNACJA }
wyliczenie StatusWizyty { ZAPLANOWANA, ZAREJESTROWANA, UKOŃCZONA, ANULOWANY }
✅ Deweloper oszczędza czas na definiowanie wyliczeń domeny + logiki walidacji.
🚀 Porady eksperta w celu maksymalizacji wartości
| Porada | Jak zastosować |
|---|---|
| Zacznij ogólnie, a potem dopasuj | Pierwszy prompt: "Aplikacja do dostawy jedzenia". Następnie edytuj wygenerowaną opis, aby dodać: „Obsługuje rejestrację restauracji, dystrybucję kierowców, śledzenie w czasie rzeczywistym i system oceniania.” |
| Użyj historii użytkownika jako wejścia | Wklej: „Jako klient, chcę filtrować restauracje według kuchni i czasu dostawy, aby móc szybko wybrać.” → AI wyodrębnia Kuchnia, Szacunek czasu dostawy, Kryteria filtrowania. |
| Połącz z modelowaniem przypadków użycia | Uruchom analizę tekstową najpierw aby uzyskać klasy → a następnie wyprowadzić aktorów i przypadki użycia (np. Klient → Złożyć zamówienie, Kierowca → Zaktualizuj położenie). |
| Weryfikuj za pomocą kart CRC | Po tym, jak AI zaproponuje klasy, przeprowadź szybką sesję CRC (klasa-odpowiedzialność-sprzężenie) z zespołem w celu sprawdzenia poprawności. |
| Eksportuj do kodu | W VP Online: kliknij prawym przyciskiem na diagram →Narzędzia > Kod > Generuj kod (obsługiwane: Java, C#, Python). |
⚠️ Ograniczenia i sposoby ich ograniczenia
| Ograniczenie | Ograniczenie |
|---|---|
Może generować nadmiernie (np. Data, Czas jako klasy) |
Przejrzyj tabelę „rzeczowniki nieokreślone” → scal z atrybutami lub użyj wbudowanych typów. |
| Nie potrafi wywnioskować zasad biznesowych (np. „maks. 3 pożyczki”) | Dodaj ograniczenia jako OCL (Język ograniczeń obiektowych) lub notatki: { maxLoans = 3 } |
| Ma trudności z niejednoznacznymi rzeczownikami | Ujednolij w wejściu: „„Użytkownik” odnosi się do klienta, a nie do administratora” lub „„Sesja” oznacza sesję terapeutyczną, a nie sesję logowania.” |
| Domyślnie nie wykrywa dziedziczenia | Dodaj ręcznie Pacjent, Lekarz, Pielęgniarka → uogólnij do Osoba jeśli potrzeba. |
📊 Kiedy go używać (najlepsze scenariusze)
| Scenariusz | Dlaczego wyróżnia się |
|---|---|
| Wczesne warsztaty odkrywcze | Szybko zapisz model domeny z surowych notatek |
| Agile sprint 0 / wyrównanie backlogu | Przekształć epiki w kandydatów do klas przed wyrównaniem |
| Projekty akademickie / prace dyplomowe | Studenci skupiają się na logice projektowania, a nie notacji |
| Modernizacja systemu dziedziczonego | Wprowadź stare dokumenty wymagań biznesowych (BRD), aby wyodrębnić model domeny |
| Wyrównanie między funkcjonalnościami | Zespół biznesowy i techniczny weryfikuje wspólną terminologię |
🌐 Kolejne kroki: Poza diagramem
Twój diagram klas wygenerowany przez AI to tylko początek. W Visual Paradigm możesz:
- Generuj schemat bazy danych → ERD → DDL SQL
- Wyprowadź diagramy sekwencji na podstawie operacji (np.
Order.checkout()) - Link do wymagań (np. sznurek
applyPromoCode()do sekcji BRD 4.2) - Symuluj za pomocą symulacji modelu VP
- Opublikuj jako portal internetowy do przeglądu przez stakeholderów
📬 Ostateczna myśl
„AI nie zastępuje projektanta — zastępuje monotonię.”
Użyj analizy tekstowej, aby uzyskaj 80% poprawności modelu w 20% czasu, a następnie zainwestuj swoją ekspertyzę w krytyczne 20%: przypadki graniczne, skalowalność i subtelności dziedziny.
📎 Gotowy do sprawdzenia?
→ Uruchom: Visual Paradigm Online
→ Aplikacja: Narzędzia > Aplikacje > Analiza tekstowa
Daj mi znać, jeśli chcesz:
- Pobieralny szablon (PDF)
- Szablony promptów dla dziedzin fintech, SaaS, IoT lub opieki zdrowotnej
- Porównanie z ręczną analizą CRC/Modelowaniem dziedziny
Miłego modelowania! 🧩
Ten post dostępny jest również w English, Español, فارسی, Français, Bahasa Indonesia, 日本語, Portuguese and Ру́сский








