Czym jest UML?
UML oznacza Unified Model Language, czyli ustandaryzowany język modelowania składający się z zestawu 14 różnych typów diagramów UML.
Dlaczego używać UML?
Dzięki użyciu UML, cały projekt oprogramowania jest łatwiejszy do odczytania i zrozumienia przed rozpoczęciem jego rozwoju, co zmniejsza ryzyko związane z rozwojem. Ułatwia to również komunikację między różnymi programistami.
UML zapewnia bardzo ekspresyjny język modelowania, który pozwala różnym osobom w procesie rozwoju oprogramowania uzyskać interesujące je informacje.
Główne cele UML można podsumować w następujący sposób:
- Zapewnić użytkownikom gotowy, ekspresyjny wizualny język modelowania, aby mogli opracowywać i komunikować znaczące modele w ramach wspólnej pracy zespołowej.
- Zapewnia mechanizmy rozszerzalności i specjalizacji dla podstawowych pojęć.
- Niezależny od konkretnego języka programowania i procesu rozwoju.
- Zapewnia formalną podstawę do zrozumienia języków modelowania.
- Zachęca do rozwoju rynku narzędzi zorientowanych obiektowo.
- Wsparcie dla wyższych koncepcji rozwoju, takich jak współpraca, ramy, wzorce i komponenty.
- Integracja najlepszych praktyk.
Czym są diagramy UML?
- Diagramy UML dzielą się na diagramy strukturalne i diagramy behawioralne.
- Diagramy strukturalne dzielą się na diagramy klas, diagramy profili, diagramy komponentów, diagramy złożonej struktury, diagramy obiektów, diagramy wdrożenia i diagramy pakietów.
- Diagramy behawioralne dzielą się na diagramy aktywności, diagramy przypadków użycia, diagramy maszyn stanowych i diagramy interakcji.
- Diagramy interakcji dzielą się dalej na diagramy sekwencji, diagramy sekwencji, diagramy komunikacji i diagramy przeglądu interakcji.
14 typów diagramów UML
- Diagram klas – diagram klas jest diagramem statycznym, który opisuje strukturę systemu, pokazując jego klasy oraz ich właściwości i operacje, a także relacje między obiektami.
- Diagram przypadków użycia – diagram przypadków użycia składa się z przypadków użycia, ról i relacji między nimi. Pokazuje, jak użytkownicy wchodzą w interakcję z systemem i definiuje specyfikacje przypadków użycia.
- Diagram sekwencji – diagram sekwencji jest modelem komunikacji między obiektami w sposób sekwencyjny. Pokazuje dokładną kolejność obiektów, klas i ról oraz informacji zaangażowanych w scenariusz. Składa się z pionowych linii należących do linii życia i poziomych linii wiadomości.
- Diagram aktywności – diagram aktywności jest diagramem behawioralnym, który pokazuje scenariusz w kategoriach przepływu działań. Modeluje sekwencję działań, decyzje oparte na warunkach, równoległe gałęzie i różne pętle.
- Diagram komunikacji – diagram komunikacji pokazuje interakcję między obiektami i częściami w formie wiadomości, które są reprezentowane przez linie życia. Diagram komunikacji jest zmodyfikowaną formą diagramu sekwencyjnego UML, ale różni się od niego tym, że jego elementy nie muszą być uporządkowane poziomo i mogą mieć dowolną pozycję w diagramie.
- Diagram maszyny stanowej – diagram maszyny stanowej opisuje stan bytu (urządzenia, procesu, programu, oprogramowania, modułu itp.) oraz przejścia między stanami. Warunki określają, kiedy można użyć przejścia z jednego stanu do drugiego.
- Diagram obiektów – diagram obiektów jest strukturalnym diagramem UML. Opisuje system lub jego części w danym momencie. Modeluje instancje, ich wartości i relacje. Może być używany do pokazywania przykładów struktur danych.
- Diagram pakietów – diagram pakietów pokazuje zależności między pakietami w modelu. Opisuje strukturę i organizację projektów na dużą skalę.
- Diagram komponentów – diagram komponentów zapewnia widok złożonego systemu. Opisuje interfejsy dostarczane i/lub wymagane przez różne części systemu oraz relacje między tymi częściami. Te części są reprezentowane przez komponenty i inne artefakty.
- Diagram wdrożenia – diagram wdrożenia opisuje wdrożenie artefaktów na węźle sieciowym. Jest używany do pokazania lokalizacji artefaktów (oprogramowanie, systemy, moduły itp.) na fizycznych węzłach (sprzęt, serwery, bazy danych itp.) oraz relacji między konkretnymi częściami rozwiązania.
- Diagram złożonej struktury – diagram złożonej struktury pokazuje wewnętrzną strukturę klasyfikatora, jego części i porty, przez które komunikuje się z otoczeniem. Modeluje współpracę, w której każdy element ma swoją określoną rolę.
- Diagram przeglądu interakcji – Diagram przeglądu interakcji zapewnia widok na wysokim poziomie interakcji w systemie lub podsystemie. Opisuje procesy w sposób podobny do diagramów aktywności, ale używa innych diagramów interakcji i odniesień do interakcji zamiast węzłów akcji.
- Diagramy czasowe – diagram czasowy koncentruje się głównie na czasie i opisuje zmiany w klasyfikatorze na osi czasu. Oś czasu jest układana pionowo, z czasem rosnącym od lewej do prawej.
- Diagram profilu – Diagram profilu opisuje i definiuje rozszerzenia języka UML. Mechanizm rozszerzeń pozwala dostosować język do konkretnej dziedziny lub platformy. Rozszerzenia są definiowane przez stereotypowanie.
Czym jest diagram klas?
Diagram klas jest podstawowym narzędziem modelowania wszystkich metod zorientowanych obiektowo. Diagramy klas opisują typy obiektów w systemie oraz różne statyczne relacje, które między nimi istnieją. Służy do reprezentowania klas, interfejsów oraz statycznych struktur i relacji między nimi.
- Generalizacja relacja jest relacją dziedziczenia, wskazującą, że podklasa dziedziczy wszystkie cechy i zachowania klasy nadrzędnej. Solidna linia z trójkątną strzałką, strzałka wskazuje na klasę nadrzędną.
- Realizacja relacja jest relacją między klasą a interfejsem, wskazującą, że klasa jest implementacją wszystkich cech i zachowań interfejsu.Linia przerywana z trójkątną strzałką, strzałka wskazuje na interfejs.
- Asocjacja relacja jest relacją własnościową, która umożliwia jednej klasie poznanie właściwości i metod innej klasy.Solidna linia z zwykłą strzałką wskazuje na właściciela.Asocjacje dwukierunkowe mogą mieć dwie strzałki lub brak strzałek.Asocjacja jednokierunkowa ma strzałkę.
- Agregacja relacja jest relacją między całością a częścią. A część może istnieć niezależnie od całości. Relacja agregacji jest rodzajem relacji asocjacyjnej i jest silną relacją asocjacyjną; asocjacja i agregacja nie mogą być gramatycznie odróżnione, a konkretne relacje logiczne muszą być badane. Solidna linia z pustymi diamentami, puste diamenty wskazują na całość.
- Kompozycja relacja jest relacją między całością a częścią. Ale część nie może istnieć niezależnie od całości. Jest to rodzaj relacji asocjacyjnej, która jest silniejsza niż relacja agregacji. Solidna linia z pełnym diamentem, który wskazuje na całość.
- Zależność relacja jest relacją użycia, to znaczy, że implementacja jednej klasy wymaga pomocy innej klasy. Jest to linia przerywana z zwykłymi strzałkami, zwykłe strzałki wskazują na użytkownika.
Czym jest diagram przypadków użycia?
Diagram przypadków użycia to widok, który opisuje funkcjonalność systemu składającego się z aktorów, przypadków użycia, granic i ich relacji. Służy do opisu funkcji całego systemu.
Diagram przypadków użycia zawiera następujące trzy relacje:
- Relacja include używa symbolu „include”. Jeśli chcesz zobaczyć listę zamówień, musisz najpierw się zalogować.
- Relacja extension używa symbolu „extend”. Na podstawie funkcji zapytania o listę zamówień można dodać funkcję eksportu danych.
- Relacja generalizacji, dziecko przypadku użycia dziedziczy całą strukturę, zachowanie i relację rodzica przypadku użycia.
Czym jest diagram sekwencji?
- Diagram sekwencji pokazuje, jak obiekty współpracują w oparciu o szereg czasowy. Pokazuje, jak obiekty wchodzą w interakcje z innymi obiektami w konkretnym scenariuszu przypadku użycia. Pokazuje dynamiczną współpracę wielu obiektów, opisując sekwencję czasową wiadomości wysyłanych między obiektami.
Czym jest diagram aktywności?
Diagram aktywności opisuje proces wdrażania konkretnych przypadków użycia w biznesie. Jest używany do przedstawienia przepływu pracy w biznesie lub realizacji przypadku użycia.
Czym jest diagram komunikacji?
Diagram komunikacji opisuje organizacyjną relację obiektów, które wysyłają i odbierają wiadomości, podkreślając współpracującą relację między obiektami, a nie porządek chronologiczny. Jest używany do wyświetlania relacji między różnymi obiektami.
Czym jest diagram maszyny stanów?
Diagram maszyny stanów modeluje zachowanie pojedynczego obiektu, wskazując kolejność, w jakiej obiekt wykonuje powiązane zdarzenia w odpowiedzi na różne zdarzenia w trakcie swojego cyklu życia. Jest używany do wskazania, że dany obiekt reaguje na różne stany różnych zdarzeń w trakcie swojego cyklu życia.
Czym jest diagram obiektów?
Diagram obiektów jest instancją diagramu klas, migawką szczegółowego stanu systemu w danym momencie. Jest używany do wyrażenia relacji między dwoma lub więcej obiektami w danym momencie.
Czym jest diagram pakietów?
Diagram pakietów, rodzaj diagramu strukturalnego, pokazuje układ i organizację elementów modelu w średniej do dużej skali projektu. Jest używany do wyrażenia zależności między pakietami.
Czym jest diagram komponentów?
Diagram komponentów opisuje interfejsy, porty itp. dostarczane i wymagane przez komponenty w systemie, a także relacje między nimi. Jest używany do wyświetlania zależności między komponentami.
Czym jest diagram wdrożenia?
Diagram wdrożenia opisuje, jak oprogramowanie wewnątrz systemu jest rozdzielane na różne węzły. Jest używany do przedstawienia relacji mapowania między oprogramowaniem a sprzętem.
Czym jest diagram struktury złożonej?
Diagram struktury złożonej opisuje wewnętrzną strukturę „struktury złożonej” oraz relacje między nimi. Ta „struktura złożona” może być częścią systemu lub całością. Jest używana do przedstawienia logicznej „struktury kombinacyjnej” w systemie.
Czym jest diagram przeglądu interakcji?
Diagram przeglądu interakcji jest podobny do diagramu aktywności, ponieważ zapewnia wysoki poziom abstrakcji dla modelu interakcji. Jest to wariant diagramu aktywności, w którym węzły to interakcje lub sytuacje, w których występują interakcje. Skupia się na zarysowaniu przepływu kontroli interakcji i może również pokazywać przepływ aktywności między diagramami.
Czym jest diagram czasowy?
Diagram czasowy jest używany do pokazywania zmian w wartości lub stanie jednego lub więcej elementów w czasie. Pokazuje również interakcje między zdarzeniami czasowymi oraz ograniczenia czasowe i terminy, które je regulują.Widok używany do reprezentowania stanu lub wartości elementu, który zmienia się w czasie.
Czym jest diagram profilu?
Diagram profilu zapewnia ogólny mechanizm rozszerzeń do dostosowywania modeli UML do konkretnych dziedzin i platform.Jest używany do budowania modeli UML w konkretnej dziedzinie.
UML jest ogromny i skomplikowany?
UML to naprawdę ogromny temat. UML oferuje dużą objętość notacji diagramów podzieloną na 14 różnych typów diagramów UML, z których każdy ma różne modele UML, służące różnym celom i odnoszące się do różnych aspektów potrzeb rozwoju.
- Każdy diagram UML z 14 typów diagramów UML oferuje dużą zestaw konstrukcji i notacji, które pokrywają różne potrzeby większości projektów rozwoju oprogramowania.
- Specyfikacja UML ma ponad 700 stron i jest wyraźnie uważana za zbyt skomplikowaną, co ma negatywny wpływ na postrzeganie i przyjęcie UML.
- Zazwyczaj użytkownicy mają tendencję do rozważania i używania tylko części diagramów/konstrukcji UML.
Poznaj najważniejsze diagramy UML i notację
Grady Booch, jeden z najważniejszych twórców Unified Modeling Language, stwierdził, że „Dla 80% całego oprogramowania potrzebne jest tylko 20% UML”.
Czym są stany badania UML*?
Możemy interpretować wyniki badania UML, zakładając, że jeśli diagram jest
- szeroko stosowany, jeśli wynosi ≥ 60% źródeł
- rzadko używany, jeśli wynosi ≤ 40% źródeł
Stwórz swój plan nauki UML
Na podstawie danych zebranych w badaniu możesz lepiej zrozumieć, jak rozpocząć swoją podróż z nauką UML, opracowując sensowny plan nauki UML!
więcej
Zasoby Unified Modeling Language (UML):
- Czym jest UML?
- Dlaczego modelowanie UML?
- Przegląd 14 typów diagramów UML
- Czym jest diagram współpracy UML?
- UML Stowarzyszenie vs Agregacja vs Kompozycja
- Samouczek diagramu klas UML
- Jak modelować ograniczenia w UML?
- Diagram maszyny stanów vs diagram aktywności
- Jak zidentyfikować aktorów?
- Typy aktorów w modelu przypadku użycia
- Czym jest Model-Widok i Kontrola?
- Jak modelować framework MVC za pomocą diagramu sekwencji UML?
- UML – Diagram behawioralny vs Diagram strukturalny
- Czym jest mechanizm rozszerzalności UML?
- Praktyczny przewodnik po UML – wszystko, co musisz wiedzieć o modelowaniu UML
- Modelowanie UML, proces oprogramowania i narzędzie
- UML – modelowanie architektury oprogramowania za pomocą pakietów
- Wszystko, co musisz wiedzieć o diagramach stanów
Ten post dostępny jest również w English, فارسی, Bahasa Indonesia and Việt Nam