wszystko to (schematy modelowania) służy celom komunikacyjnym
Modelowanie ma 4 ważne zastosowania w procesie tworzenia oprogramowania:
Zintegrowane narzędzie do projektowania
Narzędzie komunikacji
Pomoc w generowaniu oprogramowania
Sposób na zmniejszenie złożoności problemu rzeczywistych słów (dowiedziałem się tego z powyższej odpowiedzi @kevin cline)
Proces modelowania zmusza niektórych projektantów do myślenia o szczegółach nieuwzględnionych podczas kodowania (i vice versa). Modelowanie w czasie projektowania pozwala rozważyć większy obraz niż kodowanie metody lub klasy w języku.
Moim zdaniem modelowanie jest niezbędne do budowania baz danych (diagramy ER), zrozumienia przepływów procesów (diagramy aktywności) i zrozumienia interakcji użytkownik-system (diagramy przypadków użycia).
Czy ludzie używają UML do bardziej skomplikowanych czynności, takich jak generowanie kodu lub bazy danych?
W rzeczy samej. ERD (nie diagram UML) i diagramy klas mogą być używane (w zależności od możliwości twojego narzędzia) do generowania:
1 - Język definicji danych (DDL)
2 - Procedury przechowywane dla CRUD i diagramów klas w preferowanym języku (mniej przydatne, ponieważ narzędzia ORM robią więcej na ten temat)
Do najcenniejszych funkcji narzędzi do modelowania należą:
1 - Zdolność do zachowania integralności modelu. Jeśli dokonasz zmiany, propaguje się ona w modelu
2 - Zdolność do odpowiedzi na pytania, w których przypadkach używane (gdzie „konto” jest używane w moim modelu?)
3 - Możliwość umożliwienia jednoczesnym użytkownikom pracy nad modelem
4 - Szukaj w reprezentacjach graficznych
5 - Kontrola drukowania
6 - Nakładanie warstw (organizuj elementy diagramu w warstwy), abyś mógł skupić się na warstwie na raz
7 - Generowanie kodu bazy danych dla kilku systemów baz danych
8 - Walidacja modelu (sprawdza spójność, brakujące klucze, cykle itp.)
Narzędzia do modelowania, zwłaszcza te dobre, robią znacznie więcej niż Paint.