Schemat struktury złożonej

Diagram struktury złożonej w Unified Modeling Language (UML) to rodzaj diagramu struktury statycznej , który pokazuje wewnętrzną strukturę klasy i współpracę , którą umożliwia ta struktura.

Ten diagram może zawierać części wewnętrzne , porty , przez które części wchodzą ze sobą w interakcje lub przez które instancje klasy wchodzą w interakcję z częściami i ze światem zewnętrznym, oraz łączniki między częściami lub portami. Struktura złożona to zestaw połączonych ze sobą elementów, które współpracują w czasie wykonywania, aby osiągnąć określony cel. Każdy element ma określoną rolę we współpracy.

koncepcje

Kluczowymi jednostkami struktury złożonej zidentyfikowanymi w specyfikacji UML 2.0 są ustrukturyzowane klasyfikatory, części, porty, łączniki i elementy współpracy.

  • Część: Ay nazwij konkretną konkretną klasę. Część może zawierać współczynnik krotności, taki jak [0..*] pokazany dla Przeglądarki na diagramie.
  • Port : port to punkt interakcji, którego można użyć do połączenia ustrukturyzowanych klasyfikatorów z ich częściami i środowiskiem. Porty mogą opcjonalnie określać usługi, które dostarczają, oraz usługi, których wymagają od innych części systemu. Na schemacie każdy z małych kwadratów jest portem. Każdy port ma typ i jest oznaczony nazwą, na przykład „var”, „indVar1” lub „view” na diagramie. Porty mogą zawierać współczynnik krotności, na przykład [3].
Porty mogą albo delegować otrzymane żądania do części wewnętrznych, albo mogą dostarczać je bezpośrednio do zachowania ustrukturyzowanego klasyfikatora, w którym znajduje się port. Porty publiczne, które są widoczne w środowisku, są pokazane na granicy, podczas gdy porty chronione, które nie są widoczne w środowisku, są pokazane wewnątrz granicy. Wszystkie porty na diagramie są publiczne, z wyjątkiem portu widoku wzdłuż prawej granicy systemu Fibonacciego.
  • Łącznik: Łącznik łączy ze sobą dwie lub więcej jednostek, umożliwiając im interakcję w czasie wykonywania. Złącze jest pokazane jako linia między pewną kombinacją części, portów i ustrukturyzowanych klasyfikatorów . Diagram przedstawia trzy złącza między portami i jedno złącze między klasyfikatorem strukturalnym a częścią.
  • Współpraca: współpraca jest na ogół bardziej abstrakcyjna niż klasyfikator strukturalny. Jest pokazany jako kropkowany owal zawierający role, jakie instancje mogą odgrywać we współpracy.
  • Klasyfikator strukturalny : StructuredClassifier reprezentuje klasę, często klasę abstrakcyjną, której zachowanie można całkowicie lub częściowo opisać poprzez interakcje między częściami.
  • Encapsulated klasyfikator : EncapsulatedClassifier to typ ustrukturyzowanego klasyfikatora, który zawiera porty. Na diagramie zarówno FibonacciSystem, jak i Variable są hermetyzowanymi klasyfikatorami, ponieważ oba mają porty wzdłuż swoich granic.

Przykłady

Diagram struktury złożonej UML 2.0.

Jako przykład rozważmy jeden z możliwych sposobów modelowania produkcji ciągu Fibonacciego .

Ten diagram struktury złożonej UML 2.0 określa, że ​​instancje klasy „FibonacciSystem” składają się z wielu części. Najwyższa z tych części jest identyfikowana jako posiadająca klasyfikator „Funkcja Fibonacciego”. Trzy części są identyfikowane przez rolę, jaką odgrywają w instancjach Systemu Fibonacciego - rola NMinus2 , rola NMinus1 i rola N. Piąta część, identyfikowana przez jej klasyfikator Viewer , zawiera specyfikację krotności. W czasie wykonywania może istnieć 0 lub więcej instancji Viewer lub jakiejś konkretnej podklasy Viewer.

W czasie wykonywania instancje klas, które implementują te trzy role, muszą udostępniać usługi określone przez interfejs IVar za pośrednictwem swoich portów var . Jedną z takich klas jest Variable , pokazana na diagramie z portem o nazwie var typu Var , który realizuje interfejs IVar .

Port o nazwie „view” jest portem niepublicznym, którego może używać instancja FibonacciSystem w celu uzyskania dostępu do opcjonalnych instancji Viewer .

Linki zewnętrzne