복합구조도
Composite structure diagram| UML 다이어그램 유형 |
|---|
| 구조 UML 다이어그램 |
| 행동 UML 다이어그램 |
UML(Unified Modeling Language)의 복합구조도는 한 클래스의 내부 구조와 이 구조가 가능하게 하는 협업을 보여주는 정적 구조도의 일종이다.
이 다이어그램에는 내부 부품, 부품이 서로 상호 작용하는 포트 또는 클래스의 인스턴스가 부품 및 외부 세계와 상호 작용하는 포트, 부품 또는 포트 사이의 커넥터가 포함될 수 있다.복합 구조는 어떤 목적을 달성하기 위해 런타임에 협력하는 상호 연결된 요소들의 집합이다.각 요소에는 협업에서 정의된 역할이 있다.
개념
UML 2.0 규격에서 식별된 주요 복합 구조물 실체는 구조 분류자, 부품, 포트, 커넥터 및 협업이다.[1]
- Part : 부품은 분류자의 한 인스턴스 또는 인스턴스 집합에 의해 실행 시 수행되는 역할을 나타낸다.그 부분은 역할의 이름만 붙일 수도 있고 추상적인 슈퍼클래스의 이름을 붙일 수도 있고 특정 콘크리트 클래스의 이름을 붙일 수도 있다.부품은 [0..]과 같은 다중성 요소를 포함할 수 있다.*]는 다이어그램의 뷰어에 대해 표시된다.
- 포트 : 포트는 구조화된 분류기를 부품 및 환경과 연결하는 데 사용할 수 있는 상호 작용 지점이다.포트는 그들이 제공하는 서비스와 그들이 시스템의 다른 부분에서 필요로 하는 서비스를 선택적으로 지정할 수 있다.도표에서 각각의 작은 사각형은 포트다.각 포트는 유형이 있으며 다이어그램에 "var", "indVar1" 또는 "view"와 같은 이름이 라벨로 표시되어 있다.포트는 다중성 인자를 포함할 수 있다(예: [3]).
- 포트는 받은 요청을 내부 부품에 위임하거나, 포트가 포함된 구조화된 분류자의 동작에 직접 전달할 수 있다.환경에서 볼 수 있는 공용 포트는 경계선을 가로지르며, 환경에서는 볼 수 없는 보호 포트는 경계 안쪽에 표시한다.다이어그램의 모든 포트는 FibonacciSystem의 오른쪽 경계를 따라 있는 뷰 포트를 제외하고 공용이다.
- 커넥터 : 커넥터는 둘 이상의 엔티티를 결합하여 런타임에 상호작용을 허용한다.커넥터는 부품, 포트 및 구조화된 분류기의 일부 조합 사이의 선으로 표시된다.도표는 포트 사이에 3개의 커넥터와 구조화된 분류기와 부품 사이에 1개의 커넥터를 보여준다.
- 공동작업 : 공동작업은 구조화된 분류자보다 일반적으로 더 추상적이다.인스턴스(instance)가 협업에서 수행할 수 있는 역할을 포함하는 점 타원형으로 표시된다.
- 구조화된 분류자 : Structured Classifier는 한 클래스, 종종 추상적인 클래스를 나타내며, 그들의 행동은 부분들 간의 상호작용을 통해 완전하거나 부분적으로 설명될 수 있다.
- 캡슐화된 분류기 : 캡슐화된 분류기는 포트를 포함하는 구조화된 분류기의 일종이다.아래 다이어그램에서 피보나치시스템과 변수는 둘 다 경계를 따라 포트가 있기 때문에 캡슐화된 분류기다.
예
예를 들어, 피보나치 수열의 생산을 모델링하는 한 가지 가능한 방법을 생각해 보십시오.
이 UML 2.0 복합구조도는 'FibonacciSystem' 클래스의 인스턴스가 여러 부분으로 구성되었음을 명시한다.이 중 가장 위쪽에 분류기 'FibonacciFunction'이 있는 것으로 파악된다.그 중 세 부분은 피보나치시스템(NMinus2 역할, NMinus1 역할, N 역할)의 예에서 그들이 수행하는 역할에 의해 식별된다.분류기 뷰어로 식별된 다섯 번째 부분은 다중성 사양을 포함한다.런타임에 0개 이상의 뷰어 인스턴스 또는 뷰어의 구체적인 하위 클래스가 있을 수 있다.
런타임에 이 세 가지 역할을 구현하는 클래스 인스턴스는 그들의 var 포트를 통해 IVar 인터페이스에 의해 지정된 서비스를 제공해야 한다.그러한 클래스 중 하나는 IVar 인터페이스를 실현하는 Var 형식의 포트와 함께 다이어그램에 표시된 Variable이다.
"view"라는 이름의 포트는 FibonacciSystem 인스턴스가 뷰어의 선택적 인스턴스에 액세스하는 데 사용할 수 있는 비공용 포트다.
참조
- ^ OMG(2008년).OMG 통합 모델링 언어(OMG UML), 상부 구조, V2.1.2 웨이백 머신(Wayback Machine) 페이지.161-192에 2010-09-23 보관.
외부 링크
| 위키미디어 커먼즈에는 복합구조도와 관련된 미디어가 있다. |
- 공식 UML 2.0 사양을 포함한 UML에 대한 일반 정보.특히 복합 구조물에 대한 큰 섹션을 참조하십시오.
- Xholon 오픈 소스 프로젝트는 복합 구조와 관련된 일련의 링크를 유지한다.
- UML 2 복합 구조물 다이어그램