1. 단원 요약
- 액티비티, 액션, 제어흐름
- 액티비티: 일련의 액션들과 그 제어흐름으로 구성된 작업 단위, 모서리가 둥근 사각형
- 액션: 액티비티 수행에 필요한 더 이상 분해 불가한 단일 작업, 모서리가 둥근 사각형
- 제어흐름: 각 액션에 대한 입력흐름과 출력흐름, 화살표
- 제어노드
- 시작/종료: 액티비티의 시작과 종료를 표현
- 액티비티 시작 노드: ⬤
- 액티비티 종료 노드: ⦿
- 흐름 종료: 액티비티가 아닌 특정 흐름의 종료를 표현
- 흐름 종료 노드: ⊗
- 조건 노드: 조건문과 같은 의미이며, 마름모로 표시
- 병합 노드: 조건에 따른 흐름들이 합쳐지는 부분이며, 마름모로 표시
- 포크/조인 노드: 병렬 처리를 표현하며, 굵은 막대로 표시
- 시작/종료: 액티비티의 시작과 종료를 표현
- 객체, 객체흐름
- 객체란 액션의 입/출력 데이터로, 간혹 물리적인 객체이기도 함
- 객체 노드는 사각형으로 표시하며, 이름에 밑줄을 그어 인스턴스(=객체)임을 강조할 수 있음
- 객체 흐름이란 어떤 액션에서 출력된 객체가 다른 액션의 입력으로 쓰이는 경우를 말함
- 액션에 입출력이 필요함을 강조할 때는 객체 노드를 액션 노드 좌/우에 입력 핀과 출력 핀으로 표시한다.
- 객체 흐름에서 객체의 일부 필드 혹은 일부 정보만 전달되는 경우 스테레오타입을 사용한다.
- 객체 노드에서 액션 노드로 이어지는 화살표에 점선을 표시하고, 그 끝에 스테레오타입과 그 조건을 표시한다.
- 확장영역
- 입력 객체가 컬렉션인 경우, 컬렉션을 처리하는 구간을 확장 영역이라고 함
- 사각형(객체 노드) 대신에 세로로 연결된 4개의 사각형(▤, 확장 노드)으로 표시함
- 시그널
- 오목 오각형으로 표시
- 외부 액터(사람, 시스템, 프로세스)와의 상호작용을 의미함
- 시그널이 수신되는 경우 액션이 실행됨(시그널의 송/수신은 비동기적이다.)
- 시그널을 이용하여 인터럽트를 표현할 수 있다.
- 이 때에는, 시그널 수신 액션에서 다음 액션으로 나가는 화살표를 지그재그로 표시한다.
- 파티션
- 스윔레인(swimlane)이라고도 하며, 각 액션에 (수행)책임을 갖는 참여자를 표시한다.
- 가로 또는 세로로 구역을 구분하여 책임(수행) 주체를 표시한다.
- 액티비티의 재사용성
- 자주 사용되는 액션들이 중복될 때, 별도의 다이어그램을 만들고 그 자리에 포크 모양 아이콘(⫚)을 배치한다.
- 이를 호출 액티비티 액션(노드)이라고 부른다.
2. 연습문제 요약
- 시그널에 의해 액티비티가 실행되는 경우, 시작 노드가 생략될 수 있다.