먼저 UML이란, Unified Modeling Lanauge의 줄임말로
보통 소프트웨어 시스템을 모델링하여 시각화하는데 사용되며 여기에는 해당 시스템의 구조/설계 등이 포함되게 됩니다.
UML 다이어그램으로는 class diagram, use case diagram, sequence diagram, timing diagram
UML 자체에 대한 자세한 내용은 생략하겠습니다.
(UML에 대한 spec이 별도로 존재하고 이는 OMG(Object Management Group)에서 관리하고 있습니다.)
시퀀스 다이어그램(Sequence Diagram)이란
UML 다이어그램중 하나로, 생명선들 사이에서 전달되는 메세지들에 중점을 두고 그 순서를 나타내는 다이어그램입니다.
시퀀스 다이어그램 구성 요소
아래 예시는 시퀀스 다이어그램을 구성하는 주요 요소들을 보여주고 있습니다.
Lifeline
Lifeline은 시퀀스 다이어그램 상의 독립적인 참여자를 나타냅니다. 여러 구성 요소들과 달리 lifeline은 2개 이상 다중으로 존재할 수 없는, 각각이 단 하나의 상호 작용 주체입니다.
Lifeline의 symbol은 아래와 같이 사각형 형태에 수직선이 연결되어 있는 모습이며, 사각형 안에 lifeline(참여자)에 대한 정보를 나타내고 수직선은 해당 참여자의 생명선을 나타냅니다.
Gate
Gate는 (시퀀스 다이어그램 내부)Message의 끝으로, 시퀀스 다이어그램으로 보여지는 범위 외부의 message에 대한 연결점으로,
이를 사용하는 목적은 모든 message에 대한 발신자와 수신자를 구체화하기 위함입니다.
Interaction Fragment
시퀀스 다이어그램의 대부분 요소들이 여기에 속하며,
이에 대한 공통적인(?) 표기법은 없고 각각의 subclass들이 스스로의 표기법을 갖습니다.
interation fragment에 해당하는 요소는 occurrence, execution, state invariant, combined fragment, interaction use 입니다.
Occurrence
이러한 occurrence는 별다른 표기법을 가지고 있는 것은 아니며, message의 시작/끝 또는 execution의 시작/끝을 가리키는 직선 화살표로 표현합니다.
Message Occurrence
각각의 message occurrence는 signal이나 operation call 발생 등을 보내거나 받는 것 같은 이벤트들을 나타냅니다.
Execution Occerrence
ececution occurrence는 action/behavior의 시작이나 끝에 대한 순간(시점)을 나타내는 occurrence입니다.
Execution
State Invariant
상호작용하는 과정에서 runtime 조건을 나타내는 interaction fragment로
속성 값이나 변수 내/외부 상태 등등 다양한 종류가 명시될 수 있습니다.
다음 차례의 ccurrence specification 수행 바로전에 해당 조건이 평가(판단)되며, 조건을 만족할 경우에만 그 trace가 유효하게 됩니다.
state invariant는 보통 왼쪽 이미지와 같이 lifeline 상의 중괄호로 표현합니다.(오른쪽 이미지처럼 특정 symbol로 나타내기도 합니다.)
Combined Fragment
- alt - alternatives
- opt - option
- loop - iteration
- break - break
- par - parallel
- strict - strict sequencing
- seq - weak sequencing
- critical - critical region
- ignore - ignore
- consider - consider
- assert - assertion
- neg - negative
Alternatives
Option
Loop
Break
Parallel
각 operand들이 병렬로 수행될 수 있음을 나타내는 interaction operator로 par이라 표현합니다.
여기에 포함된 operand들은 어떠한 순서로든 병렬로 실행될 수 있습니다.
- 원본 및 참고
댓글