일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Tomcat
- AJAX
- ubuntu
- MSSQL
- Eclipse
- Docker
- jpa
- MySQL
- Core Java
- myBatis
- Python
- JDBC
- PostgreSQL
- Source
- 오픈소스
- Open Source
- 문서
- SpringBoot
- Thymeleaf
- oracle
- 설정
- error
- STS
- Spring Boot
- spring
- maven
- JavaScript
- git
- IntelliJ
- Exception
- Today
- Total
헤르메스 LIFE
[UML] UML 시퀀스 다이어그램의 조각으로 제어 흐름 설명 본문
Visual Studio Ultimate의 UML 시퀀스 다이어그램에서는 결합 조각을 사용하여 루프, 분기 및 기타 대체 항목을 표시할 수 있습니다.
결합 조각은 하나 이상의 상호 작용 피연산자로 구성되며, 각 상호 작용 피연산자는 하나 이상의 메시지, 상호 작용 사용 또는 결합 조각을 포함합니다.
이 항목에서는 시퀀스 다이어그램의 조각에 대해 설명합니다. UML 시퀀스 다이어그램을 읽는 방법에 대한 자세한 내용은 UML 시퀀스 다이어그램: 참조를 참조하십시오. UML 시퀀스 다이어그램을 그리는 방법에 대한 자세한 내용은UML 시퀀스 다이어그램: 지침을 참조하십시오. |
그림에 표시된 요소는 다음과 같습니다.
-
결합 조각. 결합 조각에는 여러 가지 종류가 있습니다. 이 예제는 메시지의 대체 시퀀스가 발생할 수 있음을 나타내는 데 사용할 수 있는 Alt 결합 조각입니다.
-
상호 작용 피연산자. 모든 결합 조각에는 메시지, 상호 작용 사용 및 더 작은 결합 조각을 포함할 수 있는 상호 작용 피연산자가 최소한 하나 이상 포함됩니다. 이 예제의 경우 Alt 결합 조각은 메시지의 대체 시퀀스 두 개를 표시하는 상호 작용 작업을 두 개 포함합니다.
-
각 상호 작용 피연산자의 내부를 클릭하여 개별적으로 선택할 수 있습니다. 이 예제에서는 맨 위에 있는 상호 작용 피연산자가 선택되어 있으므로 경계를 볼 수 있습니다. 일반적으로 상호 작용 피연산자 사이의 구분선만 표시됩니다.
맨 위에 있는 상호 작용 피연산자를 선택하려면 결합 조각의 맨 위와 너무 가까운 곳을 클릭하면 안 됩니다.
-
가드. 각 상호 작용 피연산자에 가드를 제공할 수 있습니다. 가드는 상호 작용 피연산자 내의 메시지가 수행되는 조건을 기술합니다.
만들 수 있는 조각 종류의 목록을 보려면 결합 조각의 종류를 참조하십시오.
결합 조각을 만들려면
-
한 메시지 또는 같은 수명선이나 실행 발생에서 모두 시작하는 메시지 시퀀스를 선택합니다.
메시지를 두 개 이상 선택하는 경우에는 해당 메시지가 연속된 시퀀스여야 합니다.
-
메시지 중 하나를 마우스 오른쪽 단추로 클릭하고 코드 감싸기를 가리킨 다음, 원하는 결합 조각의 종류(예: Alt 결합 조각)를 클릭합니다.
새 결합 조각이 나타납니다. 제목은 Alt와 같이 선택한 결합 조각의 종류를 나타냅니다.
결합 조각 내부에는 선택한 메시지를 포함하는 조각이 있습니다.
몇몇 종류의 결합 조각에는 상호 작용 피연산자를 더 추가할 수 있습니다.
결합 조각에 새 상호 작용 피연산자를 추가하려면
-
상호 작용 피연산자의 안쪽(2), 포함된 조각의 바깥쪽 및 결합 조각 제목의 아래쪽에서 빈 공간을 마우스 오른쪽 단추로 클릭합니다.
-
추가를 가리킵니다.
-
앞에 상호 작용 피연산자 추가 또는 뒤에 상호 작용 피연산자 추가를 클릭합니다.
-
메시지 도구를 사용하거나 기존 메시지를 복사하여 붙여넣는 방법으로 새 상호 작용 피연산자 안에 메시지를 추가할 수 있습니다.
상호 작용 피연산자의 가드 속성을 설정하여 내부의 메시지가 실행되는 조건을 기술할 수 있습니다. 예를 들어 루프 결합 조각에서는 가드를 사용하여 반복이 계속되는 조건을 지정할 수 있고, Alt 결합 조각에서는 각 상호 작용 피연산자에 대해 별도의 조건을 지정할 수 있습니다.
상호 작용 피연산자의 가드를 설정하려면
-
상호 작용 피연산자의 안쪽(2)에서 포함된 조각의 바깥쪽에 있는 빈 공간을 클릭합니다.
상호 작용 피연산자와 가드 조건 주위에 선택 테두리가 나타납니다.
속성 창 제목에 상호 작용 피연산자가 표시됩니다.
-
가드 조건을 입력합니다.
조각의 맨 위 근처(4)에 조건이 나타납니다.
몇몇 종류의 결합 조각에 대한 속성을 설정할 수 있습니다.
결합 조각의 속성을 설정하거나 보려면
-
결합 조각의 제목을 마우스 오른쪽 단추로 클릭하고 속성을 클릭합니다.
결합 조각 종류에 따라 다양한 속성이 포함되어 있습니다.
제어 흐름을 기술하는 조각
간단한 시퀀스 다이어그램에서는 일반적인 시퀀스 하나만 보여 줍니다. 다음과 같은 형식의 결합 조각을 사용하여 다른 상황에서 발생할 수 있는 변화를 기술할 수 있습니다.
조각 형식 |
설명 |
---|---|
Opt | 선택적 요소입니다. 일어날 수도 있고 일어나지 않을 수도 있는 시퀀스를 포함합니다. 시퀀스가 발생하는 조건을 가드에 지정할 수 있습니다. |
Alt | 메시지의 대체 시퀀스가 들어 있는 조각 목록을 포함합니다. 어떤 경우에도 하나의 시퀀스만 발생합니다. 각 조각에 가드를 추가하여 조각 실행 조건을 나타낼 수 있습니다. else 가드는 다른 가드가 true가 아닐 경우 실행할 조각을 나타냅니다. 모든 가드가 false이고 else가 없으면 조각이 실행되지 않습니다. |
Loop | 조각이 몇 번 반복됩니다. 조각이 반복되는 조건을 가드에 나타낼 수 있습니다. 루프 결합 조각에는 조각의 최소/최대 반복 횟수를 나타내는 최소값 및 최대값 속성이 있습니다. 기본값은 제한 없음입니다. |
Break | 이 조각이 실행되면 나머지 시퀀스가 중단됩니다. 가드를 사용하여 중단 발생 조건을 나타낼 수 있습니다. |
Par | 병렬 결합 조각입니다. 조각의 이벤트를 인터리브할 수 있습니다. |
Critical | Par 또는 Seq 조각 내에서 사용됩니다. 이 조각의 메시지를 다른 메시지와 인터리브하면 안 된다는 것을 나타냅니다. |
Seq | 피연산자 조각이 두 개 이상 있습니다. 같은 수명선을 포함하는 메시지는 조각 순서대로 발생해야 하고, 같은 수명선을 포함하지 않는 경우에는 다른 조각의 메시지를 병렬로 인터리브할 수 있습니다. |
Strict | 피연산자 조각이 두 개 이상 있습니다. 지정된 순서대로 조각이 발생해야 합니다. |
시퀀스를 해석하는 방법에 대한 조각
기본적으로 시퀀스 다이어그램은 발생할 수 있는 일련의 메시지를 나타냅니다. 실행 중인 시스템에서는 다이어그램에 표시하도록 선택하지 않은 다른 메시지가 발생할 수 있습니다.
다음 조각 형식을 사용하여 이 해석을 변경할 수 있습니다.
조각 형식 |
설명 |
---|---|
Consider | 이 조각이 기술하는 메시지 목록을 지정합니다. 실행 중인 시스템에서 다른 메시지가 나타날 수 있지만 이 조각에서 기술하는 목적을 위해 중요하지 않은 메시지입니다. 메시지 속성에 목록을 입력합니다. |
Ignore | 이 조각에서 기술하지 않는 메시지 목록입니다. 실행 중인 시스템에서 나타날 수 있지만 이 조각에서 기술하는 목적을 위해 중요하지 않은 메시지입니다. 메시지 속성에 목록을 입력합니다. |
Assert | 이 피연산자 조각은 유효한 시퀀스만 지정합니다. 일반적으로 고려 또는 무시 조각 내에서 사용됩니다. |
Neg | 이 조각에 표시된 시퀀스는 수행되면 안 됩니다. 일반적으로 고려 또는 무시 조각 내에서 사용됩니다. |
'문서' 카테고리의 다른 글
[UML] Sequence Diagram (0) | 2012.05.30 |
---|---|
[UML] UML 시퀀스 다이어그램: 참조 (0) | 2012.05.30 |
[문서] 톰캣 6.0 클래스로더 구조 (0) | 2012.05.16 |
[문서] Understanding Class.forName (0) | 2012.05.16 |
JavaScript 및 Dojo로 인한 브라우저 메모리 누출 발견 및 해결하기 (0) | 2012.01.04 |