참고 사이트: https://coding-factory.tistory.com/806
시퀀스 다이어그램 구성요소
구성 요소 | 표현 방법 | 내용 |
액터 | 시스템으로부터 서비스 요청자로, 사람이나 외부 시스템을 표현 | |
객체 | 메시지를 주고받는 주체 | |
생명선 | 객체가 메모리에 존재하는 기간. 객체 아래쪽에 점선을 그어 표현함 객체 소멸(X)이 표시된 기간까지 존재함 |
|
실행 상자 | 객체가 메시지를 주고받으며 구동되고 있음을 표현 | |
메시지 | 객체가 상호작용을 위해 주고받는 메시지 | |
객체 소멸 | 해당 객체가 더이상 메모리에 존재하지 않음을 표현 | |
프레임 | 다이어그램의 전체 또는 일부를 묶어 표현. frame에는 다이어그램 이름을 표기. Sequence Diagram의 약자인 SD로 시작 |
|
가드 | [ ] | 메시지가 송신되는 데 만족해야 하는 조건 메시지 이름 앞에 [ ] 기호를 사용하여 Guard 배치 |
alt | Alternatives으로, 상호작용 조건에 따라 선택적으로 수행할 수 있도록 표기 | |
opt | Option으로, 특정 조건에서만 상호작용을 선택적으로 수행하도록 표기 | |
loop | 반복적인 상호작용을 표기할 때 사용 최소/최대 반복 횟수를 지정할 수 있으며 minint = 1, maxint =5 또는 loop(1,5) 표기 가능 |
|
ref | 다른 sd를 참조하도록 할 때 사용 | |
break | 상호작용 그룹을 빠져나갈 때 사용 | |
par | Parallel으로, 동시에 실행되는 상호작용 수 | |
note | 주석과 같이, 시퀀스다이어그램에 왼쪽, 오른쪽, 두 객체에 걸쳐, 메모 작성 가능 |
* alt~ 부터는 https://steady-hello.tistory.com/132 블로그 참조
생명선 (Lifeline)
- 액터나 객체가 얼마나 오래 존재하는지 나타내는 선
- 액터나 객체가 위에 존재하면 아래로 점선으로 존재
- 점선이 이어져있는 곳까지 메모리에 살아있음
- 메모리에서 객체가 소멸되면 아래에 X표로 객체 소멸 표시
실행 상자
- 액터나 객체와 같은 인스턴스가 다른 인스턴스와 상호작용 할 때 작성
- 작성법은 라이프라인의 중앙에 직사각형 막대로 표기
메세지
유형 | 표현 방법 | 내용 |
동기 메시지 | 동기적으로 메시지를 전송함 | |
비동기 메시지 | 비동기적으로 메시지를 전송함 | |
동기 반환 메시지 | 동기적으로 메시지 호출을 반환함 | |
비동기 반환 메시지 | 비동기적으로 메시지 호출을 |
- 메시지는 인스턴스 간 주고 받은 데이터를 나타낸다.
- 호출은 실선, 응답은 점선으로 표기하며 동기 메시지는 화살표를 채우고 비동기식 메시지는 화살표를 비워둔다.
동기 호출
- 동기 호출은 요청을 보낸 뒤 응답이 올때까지 기다린다.
- 동기 호출 메시지는 꽉찬 화살표에 실선으로 표기하며, 동기 응답은 꽉찬 화살표에 점선, 비동기 응답은 빈 화살표에 점선으로 표시한다.
동기 호출
- 비동기 호출은 빈 화살표에 실선으로 표기하며 요청을 보낸 뒤 응답을 기다리지 않는다.
자체 메시지
- 자체적으로 동작을 처리할때는 자체 메시지를 사용한다.
- 자체 메시지는 본인의 생명선으로 회귀하는 화살표를 그린다.
시퀀스 다이어그램 예시