UML - przegląd
UML to standardowy język do określania, wizualizacji, konstruowania i dokumentowania artefaktów systemów oprogramowania.
UML został stworzony przez Object Management Group (OMG), a projekt specyfikacji UML 1.0 został zaproponowany OMG w styczniu 1997 r.
OMG nieustannie dokłada wszelkich starań, aby stworzyć prawdziwie branżowy standard.
UML oznacza Unified Modeling Language.
UML różni się od innych popularnych języków programowania, takich jak C ++, Java, COBOL itp.
UML to język obrazkowy używany do tworzenia projektów oprogramowania.
UML można opisać jako język modelowania wizualnego ogólnego przeznaczenia do wizualizacji, określania, konstruowania i dokumentowania systemu oprogramowania.
Chociaż język UML jest zwykle używany do modelowania systemów oprogramowania, nie jest on ograniczony w tych granicach. Służy również do modelowania systemów innych niż oprogramowanie. Na przykład przebieg procesu w jednostce produkcyjnej itp.
UML nie jest językiem programowania, ale można użyć narzędzi do generowania kodu w różnych językach przy użyciu diagramów UML. UML ma bezpośredni związek z analizą i projektowaniem obiektowym. Po pewnej standaryzacji UML stał się standardem OMG.
Cele UML
Obraz jest wart tysiąca słów , ten idiom absolutnie pasuje do opisu UML. Pojęcia zorientowane obiektowo zostały wprowadzone znacznie wcześniej niż UML. W tamtym czasie nie było standardowych metod organizacji i konsolidacji rozwoju obiektowego. To wtedy pojawił się UML.
Istnieje wiele celów związanych z tworzeniem UML, ale najważniejszym jest zdefiniowanie języka modelowania ogólnego przeznaczenia, z którego mogą korzystać wszyscy twórcy modeli, a także należy go uprościć do zrozumienia i użycia.
Diagramy UML są tworzone nie tylko dla programistów, ale także dla użytkowników biznesowych, zwykłych ludzi i wszystkich zainteresowanych zrozumieniem systemu. System może być systemem programowym lub innym niż oprogramowanie. W związku z tym musi być jasne, że UML nie jest metodą programowania, a raczej towarzyszy procesom, aby uczynić go skutecznym systemem.
Podsumowując, cel UML można zdefiniować jako prosty mechanizm modelowania do modelowania wszystkich możliwych praktycznych systemów w dzisiejszym złożonym środowisku.
Konceptualny model UML
Aby zrozumieć koncepcyjny model UML, najpierw musimy wyjaśnić, czym jest model koncepcyjny? i dlaczego model koncepcyjny jest potrzebny?
Model konceptualny można zdefiniować jako model złożony z pojęć i ich relacji.
Model koncepcyjny to pierwszy krok przed narysowaniem diagramu UML. Pomaga zrozumieć istoty w prawdziwym świecie i ich wzajemne interakcje.
Ponieważ UML opisuje systemy czasu rzeczywistego, bardzo ważne jest, aby stworzyć model koncepcyjny, a następnie postępować stopniowo. Konceptualny model UML można opanować, ucząc się następujących trzech głównych elementów -
- Bloki konstrukcyjne UML
- Zasady łączenia bloków konstrukcyjnych
- Typowe mechanizmy UML
Koncepcje zorientowane obiektowo
UML można określić jako następcę analizy i projektowania obiektowego (OO).
Obiekt zawiera zarówno dane, jak i metody, które kontrolują dane. Dane reprezentują stan obiektu. Klasa opisuje obiekt, a także tworzy hierarchię do modelowania systemu w świecie rzeczywistym. Hierarchia jest reprezentowana jako dziedziczenie, a klasy mogą być również powiązane na różne sposoby, zgodnie z wymaganiami.
Obiekty są rzeczywistymi bytami, które istnieją wokół nas, a podstawowe pojęcia, takie jak abstrakcja, hermetyzacja, dziedziczenie i polimorfizm, można przedstawić za pomocą UML.
UML jest wystarczająco potężny, aby reprezentować wszystkie koncepcje istniejące w analizie i projektowaniu obiektowym. Diagramy UML reprezentują tylko koncepcje zorientowane obiektowo. Dlatego przed nauczeniem się języka UML ważne jest szczegółowe zrozumienie koncepcji OO.
Poniżej przedstawiono kilka podstawowych pojęć związanych ze światem zorientowanym obiektowo -
Objects - Obiekty reprezentują jednostkę i podstawowy blok konstrukcyjny.
Class - Klasa to niebieski wydruk obiektu.
Abstraction - Abstrakcja reprezentuje zachowanie istoty świata rzeczywistego.
Encapsulation - Hermetyzacja to mechanizm łączenia danych ze sobą i ukrywania ich przed światem zewnętrznym.
Inheritance - Dziedziczenie to mechanizm tworzenia nowych klas z już istniejących.
Polymorphism - Określa mechanizm istnienia w różnych formach.
Analiza i projektowanie obiektów obiektowych
OO można zdefiniować jako dochodzenie, a mówiąc dokładniej, jest to badanie obiektów. Projektowanie to współpraca zidentyfikowanych obiektów.
Dlatego ważne jest, aby zrozumieć analizę obiektową i koncepcje projektowe. Najważniejszym celem analizy OO jest identyfikacja obiektów projektowanego systemu. Ta analiza jest również wykonywana dla istniejącego systemu. Teraz skuteczna analiza jest możliwa tylko wtedy, gdy jesteśmy w stanie zacząć myśleć w sposób umożliwiający identyfikację obiektów. Po zidentyfikowaniu obiektów identyfikowane są ich relacje i ostatecznie powstaje projekt.
Cel analizy i projektowania obiektów sportowych można opisać jako -
Identyfikacja obiektów systemu.
Rozpoznanie ich relacji.
Stworzenie projektu, który można przekonwertować na pliki wykonywalne przy użyciu języków OO.
Istnieją trzy podstawowe kroki, w których koncepcje obiektów obiektowych są stosowane i wdrażane. Kroki można zdefiniować jako
OO Analysis → OO Design → OO implementation using OO languages
Powyższe trzy punkty można szczegółowo opisać jako -
Podczas analizy obiektów obiektowych najważniejszym celem jest identyfikacja obiektów i ich właściwy opis. Jeśli te obiekty zostaną skutecznie zidentyfikowane, następne zadanie projektowania jest łatwe. Obiekty powinny być oznaczone obowiązkami. Obowiązki to funkcje pełnione przez obiekt. Każdy obiekt ma do wykonania jakiś rodzaj obowiązków. Kiedy te obowiązki są połączone, cel systemu zostaje osiągnięty.
Druga faza to projekt OO. W tej fazie nacisk kładzie się na wymagania i ich spełnienie. Na tym etapie obiekty współpracują zgodnie z ich zamierzonym skojarzeniem. Po zakończeniu skojarzenia projekt jest również gotowy.
Trzecia faza to wdrożenie OO. W tej fazie projekt jest wdrażany przy użyciu języków OO, takich jak Java, C ++ itp.
Rola UML w projektowaniu obiektów OO
UML to język modelowania używany do modelowania oprogramowania i systemów innych niż oprogramowanie. Chociaż UML jest używany w systemach innych niż oprogramowanie, nacisk kładzie się na modelowanie aplikacji obiektowych. Większość omówionych dotychczas diagramów UML jest wykorzystywanych do modelowania różnych aspektów, takich jak statyczne, dynamiczne itp. Niezależnie od aspektu artefakty są niczym innym jak obiektami.
Jeśli przyjrzymy się diagramowi klas, diagramowi obiektów, diagramowi współpracy, diagramom interakcji, wszystko byłoby w zasadzie zaprojektowane na podstawie obiektów.
Dlatego bardzo ważne jest zrozumienie związku między projektowaniem obiektów obiektowych a UML. Projekt obiektu obiektowego jest przekształcany w diagramy UML zgodnie z wymaganiami. Przed szczegółowym zrozumieniem UML, należy dobrze opanować koncepcję obiektu obiektowego. Po wykonaniu analizy i projektu obiektowego następny krok jest bardzo łatwy. Dane wejściowe z analizy i projektowania obiektów obiektowych są danymi wejściowymi do diagramów UML.