프로세스 흐름 도식화
1. 순서도 (Flowchart)
가장 고전적이고 대중적인 도식화 방법입니다. 논리적인 절차나 단계를 순차적으로 보여주는 데 집중합니다.
- 목적: 업무 프로세스의 가시화, 알고리즘의 논리적 오류 검증, 사용자 경험(UX)의 단순 흐름 파악
순서도 규칙 및 기호

순서도 구현 툴
- 코드 형태 구현: Mermaid Live Editor
- 화이트보드 형태 작성: draw.io (diagrams.net)
순서도 작성 Tip
화살표가 끊기는 것의 의미
- 프로세스 종료: 해당 단계에서 더 이상 진행할 액션 없이 시스템이 대기하거나 종료됨을 의미합니다.
- 외부 참조: 다른 페이지나 완전히 다른 프로세스로 이동할 때 사용합니다.
- 작성 오류: 의도치 않게 연결을 누락한 경우로, 테스트 설계 시 경로 누락(Missing Path)의 원인이 됩니다.
마름모를 써야 하는 경우 vs 화살표만 쓰는 경우
- 화살표만 쓰는 경우 (단순 전이): 화면에 노출된 여러 요소 중 사용자가 무엇을 누를지 '선택'하는 행위 그 자체일 때 사용합니다. (예: 메인 화면 -> [일정 추가 버튼 클릭])
- 마름모를 쓰는 경우 (판단/분기): 시스템이 내부 로직에 따라 결과를 갈라야 하거나, 하나의 액션 뒤에 두 가지 이상의 결과가 존재할 때 사용합니다.
- 의사결정 결과 (Condition): "입력값 유효 여부", "로그인 성공/실패"
- 사용자 선택 (User Event): 동일 맥락 내의 상반된 선택 ("확인" vs "취소")
- 시스템 상태 트리거 (Trigger): "세션 만료 여부", "네트워크 연결 상태"
흐름선 안의 텍스트
- 다음 단계로 넘어가기 위한 '조건(Condition)'이나 사용자가 취한 '선택(Event)'을 의미합니다.
위에서 아래로, 왼쪽에서 오른쪽으로
- 진행 방향: 화살표는 도형의 하단(Bottom)에서 시작하여 다음 도형의 상단(Top)으로 들어가는 것이 표준입니다.
- 상단 시작 금지: 도형의 상단면에서 화살표가 '나가는' 경우는 지양합니다. 상단은 대개 이전 단계에서 '들어오는' 입구로만 사용합니다.
마름모(판단)에서의 분기 규칙
- 성공/예(Yes): 보통 하단(Bottom)으로 뽑아 정방향 흐름을 유지합니다.
- 실패/아니오(No): 보통 오른쪽(Right)이나 왼쪽(Left) 측면으로 뽑습니다.
- 회귀(Loop): 실패하여 이전 단계로 돌아가야 한다면, 측면에서 나와 위쪽 단계의 측면으로 연결합니다.
화살표를 합쳐도 되는 경우 (Merge)
- 기준: 여러 분기점(No 대응 등)이 결국 '동일한 다음 단계'나 '동일한 이전 단계'로 수렴할 때 합칩니다.
- 설명: 각 분기마다 별도의 선을 그리면 도식의 가독성이 떨어지므로, 하나의 공통 경로로 묶어 복잡도를 낮춥니다.
프로세스로 표현? 화살표로 표현?
- 프로세스(직사각형): 시스템의 처리, 계산, 화면 전환 등 '상태의 변화'가 일어나는 독립적 단위를 표현할 때 사용합니다.
- 화살표: 단계 간의 '이동 경로'나 단순한 '행위의 연결'을 표현합니다.
- 기준: "이 단계가 별도의 테스트 케이스(TC)나 상세 로직을 가지는가?"를 생각했을 때 Yes라면 프로세스 도형으로 구성합니다.
2. 활동 다이어그램 (Activity Diagram)
UML(통합 모델링 언어)의 일종으로, 순서도보다 더 복잡한 시스템의 동작을 묘사할 때 사용합니다. 특히 여러 작업이 '동시에' 일어나는 상황을 표현하기에 최적화되어 있습니다.
- 목적: 비즈니스 프로세스의 상세 모델링, 유스케이스(Use Case)의 내부 로직 구체화, 병렬 처리(Parallel Processing) 시각화.
활동 다이어그램 규칙 및 기호

활동 다이어그램 구현 툴
- 코드 형태 구현: PlantText, PlantUML
- 화이트보드 형태 작성: draw.io (diagrams.net)
활동 다이어그램 작성 Tip
분기(Decision)와 병합(Merge)
- 순서도의 마름모와 유사하지만, 활동 다이어그램에서는 여러 흐름이 하나로 모이는 지점도 마름모(Merge Node)를 사용하여 명시적으로 표현하는 것을 권장합니다.
포크와 조인 (Fork & Join)
- Fork (분기): 굵은 가로/세로 바(Bar)를 사용하여 하나의 흐름을 여러 개의 병렬 흐름으로 나눕니다. (예: 주문 완료 후 '결제 처리'와 '배송 준비'가 동시에 진행됨)
- Join (결합): 갈라졌던 병렬 흐름들이 모두 완료되어야 다음 단계로 넘어갈 수 있음을 의미합니다. 굵은 바에 여러 화살표가 들어오고 하나가 나가는 형태입니다.
신호 송신 및 수신 (Signal)
- 송신(Send Signal): 오각형(화살표 모양) 노드로 외부 시스템이나 다른 프로세스에 신호를 보낼 때 사용합니다.
- 수신(Receive Signal): 안으로 파인 오각형 노드로 외부의 신호를 기다릴 때 사용합니다. (예: 결제 콜백 대기)
3. 순서도(Flowchart) vs 활동 다이어그램(Activity Diagram) 비교
| 구분 | 순서도 (Flowchart) | 활동 다이어그램 (Activity Diagram) |
|---|---|---|
| 핵심 목적 | 프로세스의 범용적 순서 기술 | 시스템의 논리적 행위 모델링 |
| 표준 규격 | 비공식적/자유로움 | UML 국제 표준 준수 |
| 병렬 처리 | 표현하기 어렵거나 화살표가 엉킴 | Fork/Join 기호로 동시 작업 명확히 표현 |
| 주체 구분 | 텍스트로 설명 (가독성 낮음) | 스윔레인(Swimlane)으로 담당 주체 명확화 |
| 데이터 흐름 | 동작 위주 (데이터 표현 부재) | 객체 노드(Object Node)로 데이터 전달 표현 가능 |
| 주요 사용자 | 기획자, 비즈니스 분석가 | 설계자, 개발자, QA 엔지니어 |
4. 스윔레인 (Swimlane)
목적
- 프로세스의 각 단계가 '누구(어떤 시스템)'에 의해 수행되는지 책임을 명확히 구분하기 위함입니다.
- 복잡한 상호작용이 발생하는 시스템에서 데이터의 흐름과 처리 주체를 한눈에 파악할 수 있게 합니다.
사용 범위
시스템 레벨 테스팅: 클라이언트-서버-DB 간의 통신 확인 시 적절합니다.
비즈니스 프로세스: 부서 간 업무 협업 및 승인 절차를 정의할 때 사용합니다.
순서도 스윔레인

활동 다이어그램 스윔레인

'SW QA' 카테고리의 다른 글
| 4. 구조 기반 기법 (0) | 2026.06.16 |
|---|---|
| 유즈케이스 다이어그램 (Use Case Diagram) (0) | 2026.03.24 |
| 3-3. 유즈케이스 테스팅 (0) | 2026.03.24 |
| 3-2. 상태 전이 테스팅 (0) | 2026.03.14 |
| 3-1. 테스트 설계 기법과 명세 기반 기법 (0) | 2026.03.10 |