[출처] http://staruml.sourceforge.net/docs/user-guide(ko)/ch04.html
제 4 장. StarUML 모델링 하기
이 장에서는 본격적으로 StarUML™에서 다이어그램과 요소를 생성하고 편집하는 방법에 대해 설명합니다. 또한 모델 탐색기를 사용하여 프로젝트 구조를 구성하는 방법을 알아봅니다.
- 다이어그램 및 요소 편집하기
- 모델 구조 구성하기
다이어그램 및 요소 편집하기
새 다이어그램 생성하기
StarUML™은 모두 11가지의 UML 다이어그램을 지원합니다. 사용자는 필요에 따라 원하는 다이어그램을 생성하여 작성할 수 있습니다.
새로운 다이어그램을 생성하는 방법:
- 모델 탐색기 혹은 다이어그램 영역에서 새로 생성된 다이어그램이 포함될 요소를 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤, [Add Diagram] 메뉴를 선택합니다. 그런 다음 생성하고자 하는 다이어그램의 종류를 선택하면 새 다이어그램이 생성됩니다.
생성할 수 있는 다이어그램 종류
다이어그램 종류 | 설명 |
---|---|
![]() | 클래스 다이어그램(Class Diagram)은 클래스관련 요소들의 여러 가지 정적인 관계를 시각적으로 표현한 것입니다. 클래스 다이어그램은 클래스(Class) 뿐만 아니라 인터페이스(Interface), 열거형(Enumeration), 패키지(Package) 및 여러 가지 관계들 뿐만 아니라 인스턴스(Instance)와 그것들의 연결(Link) 등도 포함할 수 있습니다. |
![]() | 유스케이스 다이어그램(Use Case Diagram)은 특정 시스템 혹은 개체내의 유스케이스(Use Case)들과 그 외부의 액터(Actor)들 간의 관계를 표현한 것입니다. 유스케이스는 해당 시스템의 기능을 표현하며 그것들이 어떤 외부 액터들과 상호작용하는지를 나타냅니다. |
![]() | 시퀀스 다이어그램(Sequence Diagram)은 인스턴스들이 어떻게 상호작용을 하는지를 묘사합니다. 하나의 협동-인스턴스집합(CollaborationInstanceSet)에 포함된 인스턴스(Instance)들 상호간에 주고받는 자극(Stimulus)들의 집합인 상호작용-인스턴스집합(InteractionInstanceSet)을 직접적으로 표현합니다. 시퀀스 역할 다이어그램(Sequence Role Diagram)은 역할(ClassifierRole) 중심의 관점을 반영한 반면, 시퀀스 다이어그램(Sequence Diagram)은 인스턴스(Instance) 중심의 관점을 반영한 것입니다. |
![]() | 시퀀스 역할 다이어그램(Sequence Role Diagram)은 역할 개념들이 어떻게 상호작용을 하는지를 묘사합니다. 하나의 협동(Collaboration)에 포함된 역할(ClassifierRole)들 상호간에 주고받는 메시지(Message)들의 집합인 상호작용(Interaction)을 직접적으로 표현합니다. 시퀀스 다이어그램(Sequence Diagram)은 인스턴스(Instance) 중심의 관점을 반영한 반면, 시퀀스 역할 다이어그램(Sequence Role Diagram)은 역할(ClassifierRole) 중심의 관점을 반영한 것입니다. |
![]() | 협동 다이어그램(Collaboration Diagram)은 인스턴스들이 어떻게 협동하는지를 묘사합니다. 하나의 협동-인스턴스집합(CollaborationInstanceSet)에 포함된 인스턴스(Instance)들의 협동 모델을 직접적으로 표현합니다. 협동 역할 다이어그램(Collaboration Role Diagram)은 역할(ClassifierRole) 중심의 관점을 반영한 반면, 협동 다이어그램(Collaboration Diagram)은 인스턴스(Instance) 중심의 관점을 반영한 것입니다. |
![]() | 협동 역할 다이어그램(Collaboration Role Diagram)은 역할 개념들이 어떻게 협동하는지를 묘사합니다. 하나의 협동(Collaboration)에 포함된 역할(ClassifierRole)들의 협동 모델을 직접적으로 표현합니다. 협동 다이어그램(Collaboration Diagram)은 인스턴스(Instance) 중심의 관점을 반영한 반면, 협동 역할 다이어그램(Collaboration Role Diagram)은 역할(ClassifierRole) 중심의 관점을 반영한 것입니다. |
![]() | 상태 다이어그램(Statechart Diagram)은 특정 개체의 동적인 행위를 상태(State)와 그것들간의 전이(Transition)를 통해 묘사합니다. 일반적으로 클래스의 인스턴스에 대한 행위를 묘사하는데 사용되지만 그 밖의 요소들에 대해서도 얼마든지 사용될 수 있습니다. |
![]() | 액티비티 다이어그램(Activity Diagram)은 상태 다이어그램의 특별한 형태로써, 활동들의 수행 흐름을 묘사하는데 적합합니다. 일반적으로 작업흐름(Workflow)을 표현하기 위해 많이 사용되며, 클래스, 패키지 혹은 연산 등의 개체에 대해 주로 사용됩니다. |
![]() | 컴포넌트 다이어그램(Component Diagram)은 소프트웨어 컴포넌트 사이의 의존관계를 묘사합니다. 소프트웨어 컴포넌트를 구성하는 요소들과 그것들을 구현하는 요소들도 모두 표현될 수 있습니다. |
![]() | 디플로이먼트 다이어그램(Deployment Diagram)은 물리적인 컴퓨터 및 장비 등의 하드웨어 요소들과 그것에 들이 배치되는 소프트웨어 컴포넌트, 프로세스 및 객체들의 형상을 묘사합니다. |
![]() | 복합구조 다이어그램(Composite Structure Diagram)은 분류자(Classifier)의 내부 구조를 표현하는 다이어그램입니다. 여기에는 Classifier가 시스템의 다른 부분들과의 상호작용하는 지점 등을 포함합니다. |
참고
- 요소의 종류에 따라 그 아래에 생성하여 둘 수 있는 다이어그램의 종류가 모두 다르다는 것을 유의 하십시오.
다이어그램에 요소 생성하기
다이어그램에 새로운 요소를 생성하고자 한다면 먼저 다이어그램이 열려 있어야 합니다. 팔레트에는 다이어그램의 종류에 따라 생성될 수 있는 요소들이 열거되어 있으며, 열거된 요소들의 목록은 다이어그램의 종류에 따라 달라집니다.
팔레트로부터 요소를 생성하는 방법:
- 팔레트에서 생성할 요소 선택합니다.
- 다이어그램 영역에서 생성할 위치에 마우스를 클릭합니다.(드래그하여 영역을 그리면 해당 크기로 요소가 생성되고, 특별히 두 요소를 연결하는 요소를 생성하고자 하는 경우에는 두 요소를 정확하게 연결하여야 합니다.)
요소를 연속적으로 여러 개 생성하는 방법:
- 팔레트에서 생성할 요소를 선택합니다.
- 팔레트의 팝업 메뉴에서 [Lock] 메뉴를 선택하거나, 생성할 요소를 한번 더 클릭합니다.
- 요소를 연속적으로 여러 개를 생성합니다.
- 더 이상 생성하지 않는 경우에는 팔레트에서 [그림-Select] 항목을 클릭합니다.
참고
- 팔레트에서 요소를 다이어그램에 생성하는 것은 하나의 모델 요소(Model element)와 그것을 표현한 하나의 뷰 요소(View element)를 생성하는 것입니다.
다이어그램에 뷰 요소 생성하기
다이어그램에서 팔레트로부터 새로운 요소를 생성하는 것 외에, 이미 존재하는 모델 요소(Model element)에 대한 뷰 요소(View element)만을 생성할 수 있습니다.
새로운 뷰 요소를 생성하는 방법 (드래그-앤드-드롭 방식):
- 모델 탐색기에서 생성할 뷰에 해당하는 모델을 먼저 선택합니다.
- 해당 모델 요소를 끌어다가 다이어그램 영역에 놓으면 뷰 요소가 생성됩니다. (이 경우에는 연관된 모든 요소들과의 연결들도 자동으로 나타납니다.)
참고
- 모델 요소의 종류와 다이어그램의 종류에 따라 이러한 드래그-앤드-드롭 방식으로 뷰 요소를 만드는 것이 가능할 수도 있고 혹은 불가능할 수도 있습니다.
- 뷰 요소 없이 모델 요소만을 생성할 수도 있습니다. 모델 요소 생성에 대한 자세한 내용은 모델 요소 생성하기를 참고하십시오.
다이어그램에서 요소 편집하기
다이어그램 영역에서 요소를 직접 편집할 수 있습니다.
요소를 편집하는 방법:
- 다이어그램에서 편집하고자 하는 뷰 요소를 마우스로 더블클릭합니다.
- 퀵 다이얼로그가 화면에 나타나면 요소의 이름(Name), 가시성(Visibility) 등을 편집하거나 버튼을 눌러 하위 요소를 생성할 수도 있습니다.
- [Enter] 키를 치거나 다이어그램의 다른 영역을 클릭하면 편집 내용이 적용됩니다.
참고
- 각 요소별 퀵 다이얼로그를 사용방법은 Quick dialogs를 참고하십시오.
뷰 크기 조정 및 이동
다이어그램 영역에 있는 뷰들의 크기와 위치를 조정할 수 있습니다. 또한 키보드의 특수키와 커서키의 조합으로 뷰들의 크기와 위치를 미세하게 조정할 수도 있습니다.
뷰의 크기를 조정하는 방법:
- 다이어그램에서 크기를 조정하고자 하는 뷰를 마우스로 클릭하여 선택합니다.
- 뷰 선택 후 나타나는 선택 표시 위의 포인트 중 원하는 방향의 포인트를 드래그하여 크기를 조정합니다.
키보드를 이용하여 뷰의 크기를 조정하는 방법:
- 다이어그램에서 크기를 조정하고자 하는 뷰를 마우스로 클릭하여 선택합니다.
- Shift+커서키를 사용하여 원하는 방향으로 뷰의 크기를 조정합니다. Shit+커서키는 현재 설정된 그리드의 단위만큼 크기가 변경되며, Shift+Alt+커서키로는 미세하게 뷰의 크기를 조정할 수 있습니다.
뷰를 이동시키는 방법:
- 다이어그램에서 이동시키고자 하는 뷰를 마우스로 클릭하여 선택합니다. 이동시킬 뷰가 여러 개 이면 Ctrl+클릭 으로 여러 뷰를 선택하거나 뷰들을 포함하도록 영역을 드래그하여 선택합니다.
- 선택된 영역 내에 마우스를 클릭한 후 원하는 방향으로 드래그하여 뷰들을 이동시킵니다.
키보드를 이용하여 뷰를 이동시키는 방법:
- 다이어그램에서 이동시키고자 하는 뷰를 마우스로 클릭하여 선택합니다. 이동시킬 뷰가 여러 개 이면 Ctrl+클릭 으로 여러 뷰를 선택하거나 뷰들을 포함하도록 영역을 드래그하여 선택합니다.
- Ctrl+커서키를 사용하여 원하는 방향으로 뷰들을 이동시킵니다. Ctrl+커서키는 현재 설정된 그리드의 단위만큼 위치가 이동되며, Ctrl+Alt+커서키로는 미세하게 뷰의 위치를 변경할 수 있습니다.
단축생성 구문을 사용하여 요소 생성하기
퀵 다이얼로그의 단축생성 구문기능을 이용하면 별도의 마우스 조작 없이 키보드만으로 요소를 생성할 수 있습니다.
단축생성 구문을 사용하여 요소를 생성하는 방법:
- 다이어그램에서 뷰를 선택합니다.
- [Enter] 키를 눌러 퀵다이얼로그를 구동합니다.
- 퀵다이얼로그 입력란에서 생성을 원하는 요소에 맞게 구문을 입력합니다.
단축생성 구문
단축 생성 구문은 간단한 텍스트 입력만으로 타겟 모델을 생성하거나 타겟 모델과 관계를 생성할 수 있습니다. 단축 생성 구문의 일반적인 규칙은 다음과 같습니다. 생성하려는 관계의 표기법과 관계를 맺게 될 타겟 모델의 이름들을 기술합니다. 만약 타겟 모델의 이름이 없으면 관계와 적합한 적절한 모델 요소를 새로 생성하고 관계를 생성합니다.각 다이어그램에서 사용할 수 있는 단축 생성 구문의 relationship-notation은 다음과 같습니다.
다이어그램 종류 | 표기법 | 현재 요소 | 설명 |
---|---|---|---|
Class Diagram Component Diagram Deployment Diagram Composite Structure Diagram
| <= | Classifier | 현재 요소로부터 타겟 요소로 specialization 관계를 맺습니다. |
=> | Classifier | 현재 요소로부터 타겟 요소로 generalization 관계를 맺습니다. | |
-- | Classifier | 현재 요소로부터 타겟 요소로 association 관계를 맺습니다. | |
<- | Classifier | 타겟 요소로부터 현재 요소로 navigable association 관계를 맺습니다. | |
-> | Classifier | 현재 요소로부터 타겟 요소로 navigable association 관계를 맺습니다. | |
<>- | Classifier | 현재 요소는 타겟 요소를 aggregate하는 관계를 맺습니다. | |
-<> | Classifier | 타겟 요소가 현재 요소를 aggregate하는 관계를 맺습니다. | |
<*>- | Classifier | 현재 요소는 타겟 요소를 compose하는 관계를 맺습니다. | |
-<*> | Classifier | 타겟 요소가 현재 요소를 compose하는 관계를 맺습니다. | |
<-- | Classifier | 타겟 요소가 현재 요소에 대해서 dependency 관계를 맺습니다. | |
--> | Classifier | 현재 요소가 타겟 요소에 대해서 dependency 관계를 맺습니다. | |
)- | Classifier | 타겟 요소가 현재 요소에 대해서 requirement 관계를 맺습니다. | |
-( | Classifier | 현재 요소가 타겟 요소에 대해서 requirement 관계를 맺습니다. | |
@- | Classifier | 타겟 요소가 현재 요소를 realization하는 관계를 맺습니다. | |
-@ | Classifier | 현재 요소가 타겟 요소를 realization하는 관계를 맺습니다. | |
Usecase Diagram | ()- | UseCase | 현재 요소와 연결된 타겟 모델(Actor)과 communication 연결을 한다. |
-() | Actor | 현재 요소와 연결된 타겟 모델(UseCase)과 communication 관계를 맺습니다. | |
<i- | UseCase | 타겟 요소로부터 현재 요소로 include 관계를 맺습니다. | |
-i> | UseCase | 현재 요소로부터 타겟 요소로 include 관계를 맺습니다. | |
<e- | UseCase | 타겟 요소로부터 현재 요소로 extend 관계를 맺습니다. | |
-e> | UseCase | 현재 요소로부터 타겟 요소로 extend 관계를 맺습니다. | |
Sequence Diagram Seqeunce Diagram(Role) | <- | Object, ClassifierRole | 현재 요소로부터 타겟 요소로 stimulus를 생성합니다. |
-> | Object, ClassifierRole | 타겟 요소로부터 현재 요소로 stimulus를 생성합니다. | |
<-> | Object, ClassifierRole | 타겟 요소로부터 현재 요소로 return을 가지는 stimulus를 생성합니다. | |
<- | Stimulus, Message | 현재 Stimulus의 Sub-Stimulus(타겟 요소로부터 들어오는)를 생성합니다. | |
-> | Stimulus, Message | 현재 Stimulus의 Sub-Stimulus(타겟 요소로 나가는)를 생성합니다. | |
<-> | Stimulus, Message | 현재 Stimulus의 Sub-Stimulus(타겟 요소로부터 나가면서 리턴을 가지는)를 생성합니다. | |
<~ | Stimulus, Message | 현재 Stimulus 앞에 존재하는 Stimulus(타겟 요소로부터 들어오는)를 생성합니다. | |
~> | Stimulus, Message | 현재 Stimulus 앞에 존재하는 Stimulus(타겟 요소로 나가는)를 생성합니다. | |
<_ | Stimulus, Message | 현재 Stimulus 뒤에 존재하는 Stimulus(타겟 요소로부터 들어오는)를 생성합니다. | |
_> | Stimulus, Message | 현재 Stimulus 뒤에 존재하는 Stimulus(타겟 요소로 나가는)를 생성합니다. | |
Collaboration Diagram Collaboration Diagram(Role) | <- | Object, ClassifierRole | 현재 요소로부터 타겟 요소로 stimulus를 생성합니다. |
-> | Object, ClassifierRole | 타겟 요소로부터 현재 요소로 stimulus를 생성합니다. | |
<-> | Object, ClassifierRole | 타겟 요소로부터 현재 요소로 return을 가지는 stimulus를 생성합니다. | |
Statechart Diagram/ Activity Diagram | <- | State, ActionState | 타겟 요소에서 현재 요소로 나가는 transition을 생성합니다. |
-> | State, ActionState | 현재 요소에서 타겟 요소로 나가는 transition을 생성합니다. | |
-* | State, ActionState | 타겟 요소(Initial State)로부터 현재 요소로 들어오는 transition을 생성합니다. | |
-@ | State, ActionState | 현재 요소에서 타겟 요소(Final State)로 나가는 transition을 생성합니다. | |
<-<> | State, ActionState | 타겟 요소(Decision)에서 현재 요소로 들어오는 transition을 생성합니다. | |
-><> | State, ActionState | 현재 요소에서 타겟요소(Decision)로 나가는 transition을 생성합니다. | |
-(H) -(h) | State, ActionState | 현재 요소에서 타겟요소(History)로 나가는 transition을 생성합니다. | |
-(H*) -(h*) | State, ActionState | 현재 요소에서 타겟요소(Deep History)로 나가는 transition을 생성합니다. | |
<-| | State, ActionState | 타겟 요소에서 현재 요소로 join해서 들어오는 transition을 생성합니다. | |
|-> | State, ActionState | 현재 요소에서 타겟 요소로 fork해서 나가는 transition을 생성합니다. |
복사 및 붙여넣기
요소들을 복사 혹은 잘라내어 다른 곳으로 붙여넣기를 할 때에는 모델 요소와 뷰 요소를 구분하여야 합니다. 모델 요소를 복사하면 모델 요소 하위에 붙여넣기를 해야 하며 이 경우에는 복사된 모델 요소의 모든 하위 요소들까지 복사됩니다. 뷰 요소를 복사하여 동일한 다이어그램 혹은 다른 다이어그램으로 복사할 수 있으며 이 경우에는 다이어그램에만 붙여넣기를 할 수 있고 모델 요소 하위로는 뷰 요소들을 붙여넣기 할 수 없습니다. 이 경우에도 뷰 요소의 종류 및 다이어그램의 종류에 따라 복사/붙여넣기가 제한될 수 있습니다.
모델 요소를 복사하여 붙여넣는 방법:
- 복사하고자 하는 모델 요소를 모델 탐색기에서 선택합니다.
- 마우스 오른쪽 버튼을 누른 후 [Copy] 메뉴를 선택하면 모델 요소가 클립보드에 복사됩니다.
- 복사된 모델 요소를 붙여넣을 요소를 모델 탐색기에서 다시 선택합니다.
- 마우스 오른쪽 버튼을 누른 후 [Paste] 메뉴를 선택하면 복사된 모델 요소가 클립보드로부터 생성되어 선택된 요소 하위에 포함됩니다.
복사된 모델 요소는 그것을 실제 포함할 수 있는 요소 하위에만 붙여넣기를 할 수 있습니다.
다이어그램의 뷰 요소들을 복사하여 붙여넣는 방법:
- 다이어그램 영역에서 복사하고자 하는 뷰 요소들을 선택합니다. (마우스로 클릭하거나 영역을 드래그 하여 여러개를 선택할 수 있습니다. [Shift]키를 누르고 뷰 요소를 클릭하면 추가적으로 선택됩니다.)
- 마우스 오른쪽 버튼을 누른 후 [Copy] 메뉴를 선택하면 뷰 요소들이 클립보드에 복사됩니다.
- 복사된 뷰 요소들을 붙여 넣을 다이어그램을 열어 활성화시킵니다. (모델 탐색기 혹은 다이어그램 탐색기에서 더블 클릭을 하거나 다이어그램 탭 중에서 선택합니다.)
- 마우스 오른쪽 버튼을 누른 후 [Paste] 메뉴를 선택하면 복사된 뷰 요소들이 활성화된 다이어그램으로 복사되어 포함됩니다.
다이어그램별 복사/붙여넣기 특징
다이어그램 종류 | 복사/붙여넣기 특징 |
---|---|
Class Diagram | Class, UseCase, Component, Deployment, CompositeStructure 다이어그램들 간에는 복사/붙여넣기가 자유로움 |
UseCase Diagram | Class, UseCase, Component, Deployment, CompositeStructure 다이어그램들 간에는 복사/붙여넣기가 자유로움 |
Sequence Diagrams | 복사/붙여넣기를 허용하지 않음 |
Collaboration Diagrams | 복사/붙여넣기를 허용하지 않음 |
Statechart Diagram | 동일한 StateMachine 내의 다이어그램 사이에서만 복사/붙여넣기 허용 |
Activity Diagram | 동일한 ActivityGraph 내의 다이어그램 사이에서만 복사/붙여넣기 허용 |
Component Diagram | Class, UseCase, Component, Deployment, CompositeStructure 다이어그램들 간에는 복사/붙여넣기가 자유로움 |
Deployment Diagram | Class, UseCase, Component, Deployment, CompositeStructure 다이어그램들 간에는 복사/붙여넣기가 자유로움 |
CompositeStructure Diagram | Class, UseCase, Component, Deployment, CompositeStructure 다이어그램들 간에는 복사/붙여넣기가 자유로움 |
프로퍼티 설정하기
모델 요소는 여러 가지의 프로퍼티(Property) 정보를 가지고 있습니다. 사용자는 이러한 프로퍼티의 값을 설정함으로써 모델을 원하는데로 수정합니다. 이러한 프로퍼티에는 다음과 같은 종류가 있습니다.
프로퍼티 종류
프로퍼티 종류 | 설명 |
---|---|
이름(Name) | 모델 요소의 이름을 나타냄 |
스테레오타입(Stereotype) | 모델 요소에 대한 스테레오타입을 나타냄 |
타입식(TypeExpression) | 특정 타입을 가리키기 위한 식(Expression)을 나타냄 |
문자열(String) | 문자열을 나타냄 |
논리형(Boolean) | True 혹은 False를 나타냄 |
열거형(Enumeration) | 몇개의 리터럴 중 한가지를 선택 |
레퍼런스(Reference) | 특정 요소를 가리킴 |
컬렉션(Collection) | 여러 개의 요소를 나타냄 (컬렉션편집기를 통해 편집) |
이름(Name) 프로퍼티 설정하기
이름은 프로퍼티 편집기의 "Name" 항목에 기록합니다. 단, 이름에는 모델의 경로를 구분하기 위하여 사용되는 :: 특수문자는 사용될 수 없습니다. 그리고 이름은 자신이 속한 이름 공간에서 유일해야 합니다. 예를 들어 패키지(Package) 내에서 클래스(Class)들의 이름은 유일해야 합니다. 이름이 다른 요소와 충돌하는 경우에는 사용자에게 경고 메시지를 보여줍니다.
스테레오타입(Stereotype) 프로퍼티 설정하기
스테레오타입은 프로퍼티 편집기에서 "Stereotype" 항목에 기록합니다. 이 때 입력하는 내용은 스테레오타입의 이름이며 이것은 UML 프로파일 내에 정의된 스테레오타입 이거나 정의되지 않은 단순한 이름일 수 있습니다. 스테레오타입 프로퍼티를 설정하기 위한 방법은 다음과 같은 것들이 있습니다.
- 정의된 스테레오타입 입력 : 현재 프로젝트에 포함되어 있는 프로파일들에 의해 정의된 스테레오타입의 이름을 입력합니다. 해당 스테레오타입을 직접 가리키게 됩니다.
- 정의되지 않은 스테레오타입 입력 : 현재 프로젝트에 포함되어 있는 프로파일들에서 정의되지 않은 스테레오타입의 이름을 입력합니다. 단순한 문자열 정보에 지나지 않습니다.
- 스테레오타입 대화상자에서 선택 : 스테레오타입 대화상자를 열면 정의된 스테레오타입들을 바로 선택할 수 있습니다.
타입식(TypeExpression) 프로퍼티 설정하기
타입식 프로퍼티는 속성(Attribute), 파라미터(Parameter) 등에 포함되어 있습니다. 타입식을 편집하기 위해서는 프로퍼티 편집기의 "Type" 부분에 타입식을 기록합니다. 타입식 프로퍼티를 설정하는 방법은 다음과 같은 것들이 있습니다.
- 정의된 타입 이름 입력 : 현재 프로젝트에 포함되어 있는 분류자 요소들(클래스, 인터페이스, 시그널, 예외, 컴포넌트, 노드, 서브시스템 등)의 이름을 입력합니다. 직접 해당 요소를 가리키게 됩니다.
- 정의된 타입 경로명 입력 : 현재 프로젝트에 포함되어 있는 분류자 요소들의 경로명을 직접 입력합니다. (예: "::Logical View::Package1::Class1")
- 정의되지 않은 타입 이름입력 : 현재 프로젝트에 포함된 분류자와 관계 없는 이름을 입력합니다. 단순한 문자열 정보에 지나지 않습니다.
- 요소 선택 대화상자에서 선택 : 요소 선택 대화상자를 열면 정의된 타입 혹은 프로파일에 정의된 데이터타입을 바로 선택할 수 있습니다.
모델 요소 문서화하기
모델 요소에 대한 상세한 설명을 기록할 수 있습니다.
모델 요소를 문서화하는 방법:
- 상세 설명을 기록하고자 하는 요소를 모델 탐색기에서 선택하거나 다이어그램 영역에서 선택합니다.
- 메인 윈도우의 인스펙터 영역에서 [Documentation] 탭을 선택합니다.
- 상세한 내용을 편집 영역에 기록합니다.
파일 혹은 URL 첨부하기 요소에 관련된 파일이나 웹페이지의 주소(URL) 등을 여러 개 첨부해 둘 수 있습니다. 첨부된 파일이나 웹페이지는 간편하게 연관된 애플리케이션으로 열거나 웹브라우저를 통해 URL로 이동할 수 있습니다.
파일 혹은 URL을 첨부하는 방법:
- 요소를 모델 탐색기 혹은 다이어그램 영역에서 선택합니다.
- 메인 윈도우의 인스펙터 영역에서 [Attachments] 탭을 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Add] 메뉴를 선택하거나 도구모음에서 [Add] 버튼을 누릅니다.
- 첨부 대화상자가 나타나면 첨부할 파일의 경로명을 포함한 이름이나 웹페이지의 주소를 입력(오른쪽에 있는 탐색 버튼을 눌러 직접 선택할 수도 있음)하고 [OK] 버튼을 누릅니다.
첨부된 항목을 제거하는 방법:
- 요소를 모델 탐색기 혹은 다이어그램 영역에서 선택합니다.
- 메인 윈도우의 인스펙터 영역에서 [Attachments] 탭을 선택합니다.
- 목록에서 삭제할 첨부 항목을 선택한 다음, 마우스 오른쪽 버튼을 누르고 [Delete] 메뉴를 선택하거나 도구모음에서
버튼을 누릅니다.
제약사항 기록하기
요소에 여러 개의 제약사항(Constraint)를 기록할 수 있습니다. 제약사항이란 요소에 적용되는 규칙으로써 인간의 언어로 쉽게 설명하거나, UML에 정의된 OCL(Object Constraint Language)의 구문에 맞추어 작성할 수도 있습니다.
제약사항을 추가하는 방법:
- 제약사항을 추가하고자 하는 요소를 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Constraints] 메뉴를 선택합니다.
- 제약사항 편집기가 나타나면 [Add] 버튼을 누릅니다.
- 제약사항 대화상자가 나타나면 이름과 내용을 입력한 다음 [OK] 버튼을 누릅니다.
제약사항을 삭제하는 방법:
- 제약사항을 삭제하고자 하는 요소를 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Constraints] 메뉴를 선택합니다.
- 제약사항 편집기가 나타나면 삭제할 제약사항을 목록에서 선택한 다음 [Delete] 버튼을 누릅니다.
제약사항의 내용을 변경하는 방법:
- 제약사항의 내용을 변경하고자 하는 요소를 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Constraints] 메뉴를 선택합니다.
- 제약사항 편집기가 나타나면 변경할 제약사항을 목록에서 선택한 다음 [Edit] 버튼을 누릅니다.
- 제약사항 대화상자가 나타나면 이름과 내용을 수정합니다. 그런 다음 [OK] 버튼을 누릅니다.
확장속성 편집하기
요소의 기본적인 프로퍼티 외에 UML 프로파일에 의해서 부가적으로 확장된 속성(TaggedValue)들을 편집할 수 있습니다.
확장속성을 편집하는 방법:
- 확장속성을 편집할 요소를 모델 탐색기 혹은 다이어그램 영역에서 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤, [Tagged Values] 메뉴를 선택합니다.
- 확장속성 편집기가 나타나면 편집할 확장속성이 포함된 프로파일에 해당하는 탭을 선택합니다.
- 그리고 확장속성을 포함하는 집합을 [Tag Definition Set] 콤보상자에서 선택하고 [Tagged Values] 목록에서 속성을 선택하여 값을 편집합니다.
편집한 확장속성값을 기본값으로 되돌리는 방법:
- 확장속성을 가진 요소를 모델 탐색기 혹은 다이어그램 영역에서 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤, [Tagged Values] 메뉴를 선택합니다.
- 확장속성 편집기가 나타나면 확장속성이 포함된 프로파일에 해당하는 탭을 선택합니다.
- 그리고 확장속성을 포함하는 집합을 [Tag Definition Set] 콤보상자에서 선택하고 [Tagged Values] 목록에서 속성을 선택한 다음 [Set As Default] 버튼을 누릅니다.
뷰 요소 삭제하기
뷰 요소를 삭제한다는 것은 모델 요소는 삭제하지 않고 순수하게 그것을 화면상으로 나타내고 있는 뷰 요소만을 삭제한다는 것을 의미합니다.
뷰 요소를 삭제하는 방법:
- 뷰 요소를 삭제하기 위해서는 다이어그램 상에 나타나 있는 뷰 요소를 먼저 선택합니다.
- [Del]키를 누르거나 메뉴에서 [Edit]->[Delete]를 선택하면 됩니다.
참고
- 뷰 요소를 삭제하더라도 관련된 모델 요소는 삭제되지 않습니다.
선 색상 적용하기
뷰 요소들의 테두리 선이나 연결 선 등의 색상을 변경 적용할 수 있습니다.
선 색상을 적용하는 방법:
- 다이어그램 영역에서 선 색상을 변경할 요소들을 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤, [Format]->[Line Color] 메뉴를 선택합니다.
- 색상 대화상자가 나타나면 적용하고자 하는 색상을 선택한 다음 [OK] 버튼을 누릅니다.
채움 색상 적용하기
뷰 요소들의 내부 영역에 채워질 색상을 변경 적용할 수 있습니다.
채움 색상을 적용하는 방법:
- 다이어그램 영역에서 채움 색상을 변경할 요소들을 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤, [Format]->[Fill Color] 메뉴를 선택합니다.
- 색상 대화상자가 나타나면 적용하고자 하는 색상을 선택한 다음 [OK] 버튼을 누릅니다.
글꼴 적용하기
뷰 요소들의 나타나는 텍스트들의 글꼴 모양, 색상 및 크기 등을 변경 적용할 수 있습니다.
글꼴을 적용하는 방법:
- 다이어그램 영역에서 글꼴을 변경할 요소들을 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤, [Format]->[Font] 메뉴를 선택합니다.
- 글꼴 대화상자가 나타나면 원하는 글꼴 모양, 크기 및 색상 등을 선택한 다음 [OK] 버튼을 누릅니다.
참고
- UML 관련된 뷰 요소들은 [Style]을 지정할 수 없는 경우가 있습니다. 그것은 글꼴 스타일은 UML 표기법상에 정의되어 있어서 변경할 수 없는 경우이기 때문입니다.
스테레오타입 표시하기
스테레오타입에 따라 뷰 요소는 서로 다른 형태로 표현될 수 있습니다. 표현될 수 있는 형태는 다음과 같은 것들이 있습니다.
- None[Shift+Ctrl+N] : 스테레오타입을 표시하지 않습니다.
- Textual[Shift+Ctrl+T] : "<<", ">>"로 스테레오타입의 이름을 묶어서 표시합니다.
- Icon[Shift+Ctrl+I] : 뷰 요소를 스테레오타입의 아이콘 형태로 표시합니다. 이 경우에는 반드시 해당 스테레오타입에 아이콘이 등록되어 있어야 하며, 그렇지 않은 경우에는 텍스트로 표시합니다.
- Decoration[Shift+Ctrl+E] : 뷰 요소를 텍스트와 작은 크기의 스테레오타입의 아이콘으로 표시합니다. 이 경우에는 반드시 해당 스테레오타입에 아이콘이 등록되어 있어야 하며, 그렇지 않은 경우에는 텍스트로 표시합니다. Actor, Interface, Component, Node, Artifact 등 일부 요소는 스테레오타입에 아이콘이 등록되어 있지 않아도 기본 아이콘으로 데코레이션 형태로 표시됩니다.
선 모양 설정하기
연관(Association), 의존관계(Dependency), 일반화(Generalization) 등과 같은 선 형태의 뷰 요소들은 다음과 같은 두 가지 형태의 선 모양을 지원합니다.
- Rectilinear : 선이 항상 90도 각도로 꺽인 형태의 모양을 유지합니다.
- Oblique : 선이 자유로운 각도로 꺽여서 표현될 수 있습니다.
선 모양을 변경하는 방법:
- 선 형태를 가지는 뷰 요소들을 다이어그램 영역에서 선택합니다.
- 마우스 오른쪽 버튼을 눌러 [Format]->[Line Style] 메뉴를 선택한 뒤, 직교선 혹은 꺽은선 중 원하는 선 모양에 해당하는 메뉴를 선택하여 체크합니다.
자동크기 설정하기
뷰 요소들의 크기는 사용자가 유동적으로 변경할 수 있지만, 매번 크기를 직접 변경하지 않고 자동으로 그 크기를 결정하도록 설정해 둘 수 있습니다.
뷰 요소에 자동크기를 설정하는 방법:
- 자동으로 크기를 결정하고자 하는 뷰 요소들을 다이어그램 영역에서 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Format]->[Auto Resize] 메뉴를 체크합니다.
- 자동크기 설정을 해제하려면 체크된 메뉴를 한번 더 선택하여 체크를 해제하면 됩니다.
속성 감추기
클래스(Class), 예외(Exception), 유스케이스(UseCase) 등과 같이 속성(Attribute)을 가지는 요소들은 다이어그램에서 자신의 속성 구획(Attribute compartment) 영역에 속성들을 나타냅니다. 사용자는 필요에 따라서 이 속성들을 나타나게 할 수도 있고 또는 감출 수도 있습니다.
속성을 감추는 방법:
- 속성을 감추고자 하는 요소들을 다이어그램 영역에서 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Format]->[Suppress Attributes] 메뉴를 선택합니다..
속성을 다시 나타나게 하려면, 위 과정을 한번 더 수행하면 됩니다.
연산 감추기
클래스(Class), 예외(Exception), 유스케이스(UseCase), 서브시스템(Subsystem) 등과 같이 연산(Operation)을 가지는 요소들은 다이어그램에서 자신의 연산 구획(Operation compartment) 영역에 연산들을 나타냅니다. 사용자는 필요에 따라서 이 연산들을 나타나게 할 수도 있고 또는 감출 수도 있습니다.
연산을 감추는 방법:
- 연산을 감추고자 하는 요소들을 다이어그램 영역에서 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Format]->[Suppress Operations] 메뉴를 선택합니다.
연산을 다시 나타나게 하려면, 위 과정을 한번 더 수행하면 됩니다.
리터럴 감추기
열거형(Enumeration)은 리터럴(Literal)들을 가지는데 이것은 다이어그램에서 열거형의 리터럴 구획(Literal compartment) 영역에 나타납니다. 사용자는 필요에 따라서 이 리터럴들을 나타나게 할 수도 있고 또는 감출 수도 있습니다.
리터럴을 감추는 방법:
- 리터럴을 감추고자 하는 열거형 요소들을 다이어그램 영역에서 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Format]->[Suppress Literals] 메뉴를 선택합니다.
리터럴들을 다시 나타나게 하려면, 위 과정을 한번 더 수행하면 됩니다.
워드랩 적용하기
요소의 이름이 한 단어 이상으로 길게 정의되어 있을 경우 뷰의 크기가 지나치게 늘어나 다이어그램의 전체적인 가시성을 떨어뜨리게 됩니다. 워드랩을 이용하면 요소의 긴 이름을 여러 줄로 나누어 표시하여 뷰의 크기를 적당하게 조정할 수 있습니다.
워드랩 적용하는 방법:
- 워드랩을 적용하고자 하는 요소들을 다이어그램 영역에서 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Format]->[Word Wrap Name] 메뉴를 선택합니다.
워드랩을 해제하려면, 위 과정을 한번 더 수행하면 됩니다.
참고
- 관계류 요소들과 이름이 다이어그램 상에서 표시되지 않는 요소, 그리고 Swimlane등 일부 요소는 워드랩이 적용되지 않습니다.
상위 이름 표시하기
뷰 요소에는 일반적으로 자신의 이름만을 표시합니다. 그러나, 여러 개의 패키지들로 구성된 프로젝트에서는 동일한 이름을 가진 요소가 서로 다른 패키지에 존재할 수 있고, 그것들이 하나의 다이어그램에 나타나야 하는 경우가 있습니다. 이러한 경우, 자신이 어디에 속해 있는지를 표현하여야 두 요소를 구분할 수 있으로 상위 요소의 이름도 함께 표현해야 하며 이때는 "상위요소이름::자신의이름"과 같은 형식으로 표시됩니다.
상위 이름을 표시하는 방법:
- 상위의 이름을 표시하고자 하는 요소들을 다이어그램 영역에서 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Format]->[Show Parent Name] 메뉴를 선택합니다.
이미 상위 이름이 표시된 요소들에서 상위 이름을 표시하지 않고 싶을 때에는 위 과정을 한번 더 반복하면 됩니다.
프로퍼티 표시
요소의 확장 속성 중에서 태그 값(Tagged Value)이나 요소의 Changeability 속성은 다이어그램에서 뷰 요소의 프로퍼티 부분으로 표시됩니다. 사용자는 필요에 따라서 이 프로퍼티 부분을 나타나게 할 수도 있고 감출 수도 있습니다.
프로퍼티를 표시하는 방법:
- 프로퍼티를 표시하고자 하는 요소들을 다이어그램 영역에서 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Format]->[Show Properties] 메뉴를 선택합니다.
프로퍼티를 감추려면, 위 과정을 한번 더 수행하면 됩니다.
참고
- AssociationEnd 요소의 Changeability 프로퍼티 값이 CHANGEABLE 이거나 Ordering 프로퍼티 값이 UNORDERED 인 경우에는 해당 프로퍼티 값이 다이어그램의 뷰 요소의 프로퍼티 부분에 표시되지 않습니다.
연산 시그너쳐 표시하기
클래스(Class), 서브시스템(Subsystem) 등과 같이 연산을 포함하는 요소가 다이어그램에 나타날 때 연산들의 파라미터 이름과 타입을 모두 표시하게 할 수도 있고 이것들을 감출 수도 있습니다.
연산 시그너쳐를 표시하는 방법:
- 연산의 시그너쳐를 표시하고자 요소들을 다이어그램 영역에서 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Format]->[Show Operation Signature] 메뉴를 선택합니다.
나타난 연산의 시그너쳐를 감추려면 위 과정을 한번 더 수행하면 됩니다.
구획의 가시성 표시하기
속성(Attribute), 연산(Operation) 혹은 리터럴(Literal) 등을 가지는 클래스(Class), 유스케이스(UseCase), 서브시스템(Subsystem) 등과 같은 요소들이 다이어그램에 표현될 때에는 각 속성이나 연산들을 나타내는 구획(Compartment)을 가지고 있습니다. 클래스는 속성과 연산의 구획을, 서브시스템은 연산의 구획을, 그리고 열거형은 리터럴과 연산의 구획을 가집니다. 이러한 구획 부분에 나타나는 요소들(속성, 연산 등)의 가시성을 표시하거나 표시하지 않을 수 있습니다.
구획의 가시성을 표시하는 방법:
- 구획의 가시성을 표시하려는 요소들을 다이어그램 영역에서 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Format]->[Show Compartment Visibility] 메뉴를 선택합니다.
- 구획의 가시성이 표시된 요소들에서 구획의 가시성을 표시하지 않으려면 위 과정을 한번 더 반복하면 됩니다.
구획의 스테레오타입 표시하기
속성(Attribute), 연산(Operation) 혹은 리터럴(Literal) 등을 가지는 클래스(Class), 유스케이스(UseCase), 서브시스템(Subsystem) 등과 같은 요소들이 다이어그램에 표현될 때에는 각 속성이나 연산들을 나타내는 구획(Compartment)을 가지고 있습니다. 클래스는 속성과 연산의 구획을, 서브시스템은 연산의 구획을, 그리고 열거형은 리터럴과 연산의 구획을 가집니다. 이러한 구획 부분에 나타나는 요소들(속성, 연산 등)의 스테레오타입을 표시하거나 표시하지 않을 수 있습니다.
구획의 스테레오타입을 표시하는 방법:
- 구획의 스테레오타입을 표시하려는 요소들을 다이어그램 영역에서 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Format]->[Show Compartment Stereotype] 메뉴를 선택합니다.
- 구획의 스테레오타입이 표시된 요소들에서 구획의 스테레오타입을 표시하지 않으려면 위 과정을 한번 더 반복하면 됩니다.
다이어그램 열기
다이어그램을 편집하기 위해서는 우선 다이어그램을 열어야 합니다. 다이어그램을 열면 다이어그램에 대한 탭이 생기게 되고, 탭을 선택하면 편집할 수 있는 활성 다이어그램(Active Diagram)이 됩니다.
다이어그램을 여는 방법:
- 열고자 하는 다이어그램을 모델 탐색기 혹은 다이어그램 탐색기에서 찾습니다.
- 해당 다이어그램을 항목을 마우스로 더블 클릭하면 다이어그램이 열리고 자동으로 활성 다이어그램이 됩니다.
다이어그램 활성화 시키기
여러 다이어그램을 열었을 때 특정 다이어그램을 편집하려면 해당 다이어그램을 활성화시켜야 합니다. 이미 열려있는 다이어그램을 활성화하려면, 해당 다이어그램을 탭에서 클릭하면 됩니다. 열려져 있는 다이어그램이 많을 경우에는 팝업 메뉴에 나타나는 다이어그램 목록을 보고 선택하여 활성화시킬 수 있습니다.
메뉴에서 선택하여 다이어그램을 활성화 시키는 방법:
- 다이어그램 탭에서 마우스 오른쪽 버튼을 누른 뒤 [Pages] 메뉴를 선택합니다.
- 서브 메뉴로 나타나는 다이어그램 목록 중 활성화시킬 다이어그램 이름을 선택합니다.
다이어그램 닫기
다이어그램을 더 이상 편집하지 않는다면 다이어그램을 닫아 둘 수 있습니다. 다이어그램을 닫는 것은 다이어그램이 삭제되는 것과는 분명히 다르며, 언제든지 다시 열 수 있습니다.
다이어그램을 닫는 방법:
- 닫고자 하는 다이어그램의 탭을 선택하여 활성 다이어그램으로 둡니다.
- 탭 위에서 마우스 오른쪽 버튼을 누른 다음 [Close Diagram] 메뉴를 선택합니다.
열려진 모든 다이어그램을 닫는 방법:
- [View]->[Close All Diagrams] 메뉴를 선택합니다.
다이어그램 삭제하기
다이어그램이 더 이상 필요하지 않는 경우에는 다이어그램을 삭제할 수 있습니다. 다이어그램을 삭제하면 다이어그램에 관련된 모든 내용이 사라지므로 주의해야 합니다.
다이어그램을 삭제하는 방법:
- 삭제하고자 하는 다이어그램을 모델 탐색기 혹은 다이어그램 탐색기에서 선택합니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Delete From Model]를 선택합니다.
요소 찾기
보통 소프트웨어 모델 내에는 매우 많은 요소들이 만들어집니다. 이렇게 많은 요소들 사이에서 원하는 요소를 찾아가기란 쉽지 않은 일입니다. 이런 경우 요소들을 검색하여 원하는 요소로 빠르게 찾아갈 수 있습니다.
요소를 찾는 방법:
- [Edit]->[Find] 메뉴를 선택합니다.
- 찾기 대화상자가 나타나면 [Text To Find] 부분에 찾으려는 요소의 이름 혹은 그 일부분을 입력하고, 찾으려는 요소의 타입에 제한을 두려면 [Option-Element Type] 부분에 요소의 타입을 지정합니다. 검색에서 대소문자를 구분하고 싶다면 [Option-Case Sensitive] 부분을 체크합니다. 그런 다음 [OK] 버튼을 누릅니다.
- 검색된 결과들은 정보 영역의 [Message] 부분에 추가되며, 각 메시지를 더블 클릭하면 해당 요소로 찾아갑니다.
요소 정렬하기
다이어그램에 나열되어 있는 요소들을 일정한 방향 혹은 간격 등 다양한 방법으로 정렬할 수 있습니다.
요소 정렬 기능
정렬 기능 | 설명 |
---|---|
![]() | 선택된 요소들을 왼쪽에 맞춰 정렬합니다. |
![]() | 선택된 요소들을 오른쪽에 맞춰 정렬합니다. |
![]() | 선택된 요소들을 가로로 가운데 정렬합니다. |
![]() | 선택된 요소들을 위쪽에 맞춰 정렬합니다. |
![]() | 선택된 요소들을 아래쪽에 맞춰 정렬합니다. |
![]() | 선택된 요소들을 세로로 가운데 정렬합니다. |
![]() | 선택된 요소들 간의 가로 간격을 균등하게 맞춥니다. |
![]() | 선택된 요소들 간의 세로 간격을 균등하게 맞춥니다. |
![]() | 선택된 요소들을 맨 앞에 나오도록 합니다. |
![]() | 선택된 요소들을 맨 뒤에 나오도록 합니다. |
요소들을 정렬하는 방법:
- 다이어그램 영역에서 정렬하고자 하는 요소들을 선택합니다. (맨 앞으로 가져오기와 맨 뒤로 보내기를 제외한 정렬은 최소한 두 개 이상의 요소들을 선택해야 합니다.)
- 마우스 오른쪽 버튼을 누른 뒤 [Format]->[Alignment] 메뉴를 선택한 다음 원하는 정렬 기능에 해당하는 메뉴를 선택합니다.
다이어그램 자동배치
다이어그램의 요소들이 무질서하게 배치되어 사용자가 알아보기 힘들 경우에 요소들을 보기 좋게 자동으로 배치시킬 수 있습니다.
다이어그램의 요소들을 자동으로 배치하는 방법:
- 자동으로 배치하고자 하는 다이어그램을 활성 다이어그램(현재 편집중인 다이어그램)으로 둡니다.
- 마우스 오른쪽 버튼을 누른 뒤 [Format]->[Layout Diagram] 메뉴를 선택합니다.
참고
- 단 시퀀스 다이어그램에서는 자동배치 기능을 사용할 수 없습니다.
확대/축소 설정하기
다이어그램의 영역에 요소가 너무 많아 한눈에 보기 힘들거나 요소의 글자가 너무 작아서 잘 보이지 않을 때, 다이어그램을 확대하거나 축소할 수 있습니다.
다이어그램을 확대/축소 하는 방법:
- [View]->[Zoom] 메뉴를 선택합니다.
- 그런 다음 다이어그램을 한 단계(5%) 확대하려면 [Zoom In] 메뉴를 선택, 한 단계 축소하려면 [Zoom Out] 메뉴를 선택하고, 다이어그램 전체를 화면에 모두 나타나게 하고 싶으면 [Fit To Window] 메뉴를 선택합니다. 아니면 다이어그램의 원하는 크기에 해당하는 비율(50%, 75%, 100%, 125%, 150%, 175%, 200%)을 바로 선택하셔도 됩니다.
다이어그램을 이미지파일로 저장하기
다이어그램을 별도의 이미지 파일로 저장할 수 있습니다. StarUML
다이어그램을 이미지로 저장하는 방법:
- 먼저 이미지로 저장하려는 다이어그램을 열어 활성 다이어그램(Active Diagram-현재 편집중인 다이어그램)으로 만듭니다.
- 메인 메뉴에서 [File]->[Export Diagram] 메뉴를 선택합니다.
- 저장 대화상자가 나타나면 파일 이름을 입력하고 원하는 파일 형식을 선택하고 [Save] 버튼을 누릅니다.
참고
- 메타파일(.wmf) 이미지 포맷의 경우 특정 뷰어에 따라 이미지가 제대로 보이지 않을수 있습니다. 메타파일 이미지 포맷 저장시 확장메타파일(.emf) 이미지 포맷을 사용할 것을 권장합니다.
다이어그램을 비트맵으로 복사하기
편집하고 있는 다이어그램을 다른 문서 등에 삽입하기 위해 다이어그램 이미지를 비트맵으로 복사할 수 있습니다. 비트맵으로 복사하면 편집 시에 보이는 그대로 문서에 삽입할 수 있지만, 확대 축소를 할 경우 이미지가 거칠게 보이거나 찌그러져 보일 수 있습니다.
다이어그램을 비트맵으로 복사하는 방법:
- 비트맵으로 복사하려는 다이어그램을 열어 활성 다이어그램으로 만듭니다.
- 메인 메뉴에서 [Edit]->[Copy Diagram As Bitmap] 메뉴를 선택합니다.
참고
- 뷰를 선택한 다음 Ctrl+C로 복사를 하면 다이어그램 정보가 메타 이미지로 복사됩니다. 메타 이미지는 문서에 삽입하여 확대 축소해도 일그러짐이 없지만 문서 편집 프로그램에 따라 다이어그램의 실제 형상과 약간 차이가 날 수도 있습니다.
다이어그램 탐색하기
다이어그램이 많은 내용을 포함하고 있는 경우에는 그 크기가 매우 커질 수 있으므로, 화면 크기의 한계로 인하여 다이어그램의 많은 영역들이 가려지게 됩니다. StarUML™은 다이어그램의 영역을 효과적으로 탐색할 수 있는 방법들을 제공하여 사용자가 원하는 다이어그램의 영역으로 빠르게 이동할 수 있도록 도와줍니다. 다이어그램을 탐색하는 방법에는 다음과 같은 것들이 있습니다.
스크롤바(ScrollBar)와 휠(Wheel)로 탐색하기
스크롤 바를 이용하여 원하는 다이어그램 영역으로 이동합니다. 휠-마우스(Wheel Mouse)를 사용하는 경우에는 마우스의 휠을 사용하여 상하 이동을 할 수 있습니다.
버드-뷰(Bird View)로 탐색하기
다이어그램 영역의 오른쪽 맨 아래에 작은 아이콘 이 있습니다. 이것을 클릭하면 다이어그램 전체를 작은 영역에 보여주는데, 마우스를 누른 채로 원하는 영역으로 이동한 뒤 마우스 버튼을 떼면 됩니다. 먼 영역으로 이동하고자 할 때에는 이 기능이 편리합니다.
Ctrl + 마우스로 이동하기
Ctrl키를 누른 채로 화면에 마우스 버튼을 누르고 마우스를 이동하면 다이어그램이 이동합니다. 가까운 영역으로 이동하고자 할 때에는 이 기능이 편리합니다.
기본 다이어그램으로 설정하기
프로젝트에는 많은 다이어그램들이 포함됩니다. 이 중에서도 가장 기본적인 다이어그램(Default Diagram)이 하나 혹은 그 이상 있을 수 있습니다. 예를 들어, 프로젝트의 전체적인 구조를 표현한 다이어그램을 기본 다이어그램으로 설정할 수 있습니다. 기본 다이어그램은 클래스 다이어그램(Class Diagram), 유스케이스 다이어그램(UseCase Diagram), 컴포넌트 다이어그램(Component Diagram) 그리고 디플로이먼트 다이어그램(Deployment Diagram)만이 될 수 있습니다. 기본 다이어그램을 프로젝트를 읽어온 직후 자동으로 열리게 됩니다.
기본 다이어그램으로 설정하는 방법:
- 기본(Default)으로 설정하고자 하는 다이어그램을 모델 탐색기 혹은 다이어그램 탐색기에서 선택합니다.
- 인스펙터 영역에서 [Properties] 탭을 선택합니다.
- 프로퍼티 편집기에서 "DefaultDiagram" 프로퍼티를 체크합니다.
모델 구조 구성하기
모델 요소 생성하기
다이어그램에는 나타나지 않게 모델 요소만을 생성할 수 있습니다. 이러한 모델은 어떠한 다이어그램에도 나타나지 않으며, 차후에 언제든지 다이어그램에 하나 이상의 뷰를 나타나게 할 수 있습니다.
모델 요소를 생성하는 방법:
- 생성할 요소가 포함될 요소를 모델 탐색기에서 선택합니다.
- 마우스 오른쪽 버튼을 눌러 [Add] 메뉴를 선택한 뒤, 생성할 요소에 해당하는 메뉴를 선택하거나, 메인 메뉴에서 [Model]->[Add] 메뉴를 선택하여도 동일한 작업이 됩니다.
- 요소가 생성되어 선택된 요소에 하위에 추가됩니다.
모델 요소 삭제하기
모델 요소를 삭제하는 것은 여러 가지 부수적인 요소들도 삭제됩니다. 따라서, 모델 요소를 삭제하는 것은 신중해야 합니다. 모델 요소가 삭제될 경우 다음 요소들도 삭제됩니다.
- 포함하는 모델 요소 : 삭제될 모델이 직접 포함하고 있는 모든 모델 요소들도 함께 삭제됩니다.
- 관계 모델 요소 : 일반화(Generalization), 연관(Association), 의존(Dependency)등과 같이 삭제될 모델 요소에 연결된 관계류 들도 모두 삭제됩니다.
- 뷰 요소 : 삭제될 모델들에 해당하는 모든 뷰 요소들이 삭제됩니다.
모델 요소를 삭제하는 방법:
- 삭제하고자 하는 모델 요소를 모델 탐색기에서 선택합니다. 혹은 그에 해당하는 뷰 요소를 다이어그램 영역에서 선택합니다.
- [Ctrl+Del] 키를 누르거나 메뉴에서 [Edit]->[Delete From Model]를 선택합니다.
- 선택된 모델 요소가 삭제됩니다.
모델 요소 이동하기
모델 요소를 다른 요소의 하위로 이동할 수 있습니다. 예를 들어 클래스를 다른 패키지의 하위로 이동한다든지, 속성을 다른 클래스의 하위로 이동한다든지 하는 등의 행위를 수행할 수 있습니다. 모델 요소의 이동은 그것을 포함할 수 있는 요소로만 이동할 수 있고, 그 외에는 이동할 수 없습니다.
모델 요소를 다른 위치로 이동하는 방법:
- 모델탐색기에서 이동하고자 하는 요소를 선택합니다.
- 해당 요소를 끌어서 그것을 포함할 요소에 놓습니다.
모델 요소 순서 변경 하기
소프트웨어 모델의 구성을 직관적으로 볼 수 있게 하기 위하여 모델 요소들 간의 순서를 변경할 수 있습니다. 모델 요소들 간의 순서 변경은 동일한 종료의 요소들간에만 할 수 있습니다. 또, 모델 탐색기의 정렬 방식이 "Storage Order" 일 때만 유효합니다.
모델 요소의 순서를 변경하는 방법:
- 모델탐색기에서 순서를 변경하고자 하는 요소를 선택합니다.
- [Move Up] 버튼 또는 [Move Down] 버튼을 눌러 모델 요소를 한 칸씩 이동시킵니다.
Attribute, Operation, Enumeration Literal 등 컬렉션 편집에 표시되는 요소들은 컬렉션 편집기에서 순서를 변경할 수 있습니다.
컬렉션 편집기에서 모델 요소의 순서를 변경하는 방법:
- 순서를 변경할 요소의 상위 요소를 선택합니다.
- [Model]->[Collection Editor...] 메뉴를 선택하여 컬렉션 편집기를 실행합니다.
- 요소가 포함된 컬렉션에 해당하는 탭을 선택합니다.
- 순서를 변경할 요소를 선택합니다.
- [Move Up] 버튼 또는 [Move Down] 버튼을 눌러 모델 요소의 순서를 변경합니다. Ctrl+커서키를 사용하여 순서를 변경할 수도 있습니다.
모델 정렬
모델 탐색기에 보이는 모델들의 구조를 저장 순서 또는 알파벳 순으로 정렬할 수 있습니다. 정렬된 모델은 모델 탐색기가 정렬하여 보여주는 것일 뿐이며 실제 모델간의 순서가 변경되는 것은 아닙니다. 모델을 정렬하려면 모델 탐색기의 [저장 순서로 정렬] 버튼 또는 [알파벳 순서로 정렬] 버튼을 클릭하면 됩니다. 모델 정렬방식을 변경하면 모델 탐색기의 각 노드의 펼침 상태가 취소되고, 가장 상위 레벨의 노드만 펼쳐집니다.