01 · 필요한 이유

길이 갈라지는 것과 일이 동시에 벌어지는 것은 다르다

“원문이 있으면 검색하고, 민감한 내용이면 법무 검토를 한다. 검색과 이용 권리 확인을 마치면 초안을 만든다”라는 절차에는 두 종류의 갈림이 있습니다. 원문이 있는지에 따라 한 길만 택하는 조건 분기와, 검색과 권리 확인을 함께 시작하는 병렬 분기입니다. 둘을 같은 마름모로 그리면 한 작업만 하는지 두 작업을 모두 하는지 알 수 없습니다. 활동도에서는 조건 분기에 마름모, 병렬 시작과 합류에 굵은 막대를 써서 제어 의미를 나눕니다.[1]

생각그림 1 · 선택과 병렬의 차이
조건 분기 · 한 경로
원문 있음?→검색
[있음] 또는 [없음] 가운데 맞는 길을 택합니다.
병렬 분기 · 모든 경로
검색권리 확인
두 활동을 모두 시작하고 필요한 곳에서 기다립니다.
마름모는 선택, 굵은 막대는 동시에 시작하거나 모두 기다리는 의미입니다.
02 · 기호 읽기

행동·조건·분기·합류·종료를 구별한다

둥근 사각형은 수행할 행동, 화살표는 제어 흐름입니다. 검은 원은 시작, 테두리가 있는 검은 원은 활동 전체의 종료를 뜻합니다. 마름모에서 여러 선이 나가면 각 선에 [조건]을 적고, 조건은 가능한 상황을 빠짐없이 나누면서 서로 겹치지 않게 만드는 것이 좋습니다. 굵은 막대가 한 흐름을 여러 갈래로 보내면 포크, 여러 갈래를 하나로 모으면 조인입니다. 조인은 들어오는 모든 흐름이 완료될 때까지 기다리므로, 선택되지 않는 경로를 조인에 연결하면 영원히 기다리는 오류가 생길 수 있습니다.

생각그림 2 · 활동도의 다섯 표지
행동→◇ 조건→행동 A행동 B
● 시작◉ 종료
도형의 모양은 장식이 아니라 다음 행동을 언제 시작할 수 있는지 정하는 제어 규칙입니다.
03 · 원문 옮기기

동시에 해도 되는지와 반드시 기다려야 하는지를 묻는다

원문을 행동 목록으로 바꾼 뒤 각 행동의 입력과 출력을 적습니다. ‘자료 검색’은 검색어와 범위가 필요하고 문서 구간을 내놓습니다. ‘이용 권리 확인’은 자료 출처와 사용 방식을 받아 허용 범위를 내놓습니다. 두 작업이 서로의 결과를 입력으로 요구하지 않는다면 병렬로 시작할 수 있습니다. 그러나 ‘근거가 붙은 초안 생성’은 검색 결과와 이용 가능 자료가 모두 필요하므로 조인 뒤에 놓습니다. 병렬성은 화면을 멋지게 만드는 선택이 아니라 데이터 의존 관계에서 나옵니다.

생각그림 3 · 입력·출력으로 병렬 가능성 검사
행동필요한 입력내놓는 결과
자료 검색질문, 검색 범위관련 문서 구간
이용 권리 확인자료 출처, 사용 목적허용·제한 기록
초안 생성허용된 문서 구간 모두근거가 붙은 초안
앞의 두 행동은 독립적으로 시작할 수 있지만 초안 생성은 두 결과가 모일 때까지 기다립니다.
04 · 첫 사례

검색과 권리 확인을 병렬로 시작하고 안전하게 합친다

AI 원고 제작 활동도를 만들 때 검색, 자료 이용 권리 확인, 개인정보 검사를 함께 시작할 수 있습니다. 다만 모든 자료에 같은 검사가 필요한지 조건을 먼저 확인합니다. 외부 자료를 쓰지 않는 원고라면 이용 권리 확인 경로를 시작하지 않을 수 있습니다. 이 선택 경로를 모든 입력을 기다리는 조인에 그대로 넣으면 시작되지 않은 경로를 영원히 기다립니다. 선택적 경로는 기본값 결과를 만들어 합류시키거나, 조건을 고려한 병합 구조를 따로 설계해야 합니다. 여기서는 외부 자료를 반드시 사용하는 교육용 사례라 세 경로가 모두 시작됩니다.

생각그림 4 · 세 활동의 포크와 조인
질문·원자료 확정
↓
관련 자료 검색
이용 권리 확인
개인정보 검사
표현 위험 검사
↓
검사를 통과한 자료로 초안 생성
각 갈래가 실제로 시작되는 사례이므로 조인은 모든 결과가 올 때까지 기다려도 막히지 않습니다.
05 · 다른 사례

답변 품질 검사와 사용자 안내는 합류 방식이 다르다

고객 문의 답변에서는 사실 확인과 금지 표현 검사를 병렬로 수행한 뒤 두 검사 모두 통과해야 전송할 수 있습니다. 반면 빠른 응답이 중요한 검색 화면은 여러 검색 공급자 중 먼저 성공한 결과를 보여 주고 나머지를 취소할 수 있습니다. 이것은 ‘모두 기다리는 조인’과 다른 규칙입니다. 독서 토론 자료를 만드는 경우에는 핵심 주장 추출과 낯선 용어 풀이를 병렬로 진행한 다음, 두 결과를 하나의 토론지에 합칩니다. 사례마다 병렬 시작은 같아 보여도 완료 조건이 ‘모두’, ‘하나 이상’, ‘기한 안의 결과’ 가운데 무엇인지 적어야 합니다.

생각그림 5 · 세 가지 완료 조건
모두 완료사실 확인 + 안전 검사 후 전송
첫 성공검색 공급자 중 먼저 온 유효 결과
기한까지2초 안에 도착한 결과만 모음
병렬 화살표의 끝에 ‘언제 다음으로 가는가’를 적어야 기다림과 취소 정책을 검토할 수 있습니다.
06 · LLM에 요청하기

데이터 의존성과 완료 조건을 요청문에 넣는다

LLM에 “병렬로 그려 달라”고 하면 서로 의존하는 작업도 나란히 놓을 수 있습니다. 각 행동의 입력·출력, 반드시 먼저 끝나야 하는 일, 조건 분기의 빠짐없는 값, 병렬 합류의 완료 규칙을 함께 줍니다. 원문에 없는 병렬화를 제안할 때는 확정 도표에 넣지 말고 제안 목록으로 분리하라고 요구합니다. 결과를 받은 뒤에는 포크 뒤 모든 경로가 조인에 도달하는지, 선택되지 않은 경로를 기다리지 않는지 반례로 확인합니다.

생각그림 6 · 복사 가능한 활동도 요청문
다음 AI 원고 제작 절차를 UML 활동도 초안으로 바꿔 주세요.
목적: 조건 분기와 병렬 실행, 합류 조건을 검토한다.
행동: 질문 확정 / 자료 검색 / 이용 권리 확인 / 개인정보 검사 / 초안 생성 / 사람 검토 / 발행.
의존성: 초안 생성은 검색 결과와 모든 검사 결과가 필요하다. 발행은 사람 검토 승인 뒤에만 가능하다.
분기: 사람 검토에서 [승인]이면 발행, [수정 필요]이면 초안 수정으로 돌아간다.
규칙: 선택은 마름모, 병렬 시작·모두 완료는 포크·조인 막대로 구분한다.
금지: 원문에 없는 자동 승인과 병렬 실행을 확정하지 않는다.
출력: ① 행동별 입력·출력표 ② 활동도 ③ 교착 가능성 ④ 확인 질문.
준비된 예시 도표와 실습 수치는 실제 LLM 실행 기록이나 운영 시간 측정값이 아니라 교육용으로 설계했습니다.
‘병렬’이라는 모양보다 어떤 결과를 기다리는지를 명시하는 요청문이 중요합니다.
07 · 오류와 수정

시작하지 않은 경로를 기다리는 교착을 없앤다

잘못된 도표는 [민감 정보 있음]일 때만 개인정보 검사를 시작하면서도, 아래 조인에서는 항상 개인정보 검사 결과를 기다립니다. 민감 정보가 없으면 그 경로는 시작되지 않았으므로 조인은 끝나지 않습니다. 수정 방법은 두 가지입니다. 조건 분기에서 [없음] 경로도 ‘검사 불필요’라는 결과를 만들어 같은 병합점으로 보내거나, 선택 분기와 병렬 조인의 구조를 분리해 실제로 시작된 경로만 기다리게 합니다. 어느 방법을 쓰든 종료 조건을 말로 설명하고 반례를 실행해야 합니다.

생각그림 7 · 교착을 만드는 합류와 수정
수정 전[민감 정보 없음]이면 검사 미실행
↓
조인은 검사 완료를 계속 기다림
수정 후[있음] → 검사 결과
[없음] → 검사 불필요
두 결과를 병합한 뒤 다음 활동
“없음”도 도표에서 의미 있는 결과로 만들어 주면 다음 활동의 입력이 분명해집니다.
08 · 흐름도와 비교

활동도는 토큰이 흐르는 제어 의미를 더 엄격히 읽는다

일반 흐름도도 절차와 결정을 표현할 수 있습니다. 활동도는 행동, 객체 흐름, 포크와 조인, 활동 파티션처럼 UML에서 정의한 제어 의미를 사용해 병렬성과 합류를 더 엄격하게 표현합니다. 단순한 안내 절차에는 흐름도가 읽기 쉽고 충분할 수 있습니다. 여러 시스템과 사람이 동시에 움직이고 선택 경로와 병렬 경로가 섞이면 활동도가 유리합니다. 제5회의 상태차트가 원고의 상태 변화를 묻는다면 활동도는 여러 행동이 어떤 제어 규칙으로 시작되고 끝나는지를 묻습니다.

생각그림 8 · 흐름도·상태차트·활동도 비교
도표중심 질문잘 드러나는 것
흐름도절차가 어떤 순서인가?간단한 단계와 조건
상태차트대상이 지금 어떤 상태인가?사건과 전환 조건
활동도어떤 행동이 언제 시작 가능한가?분기·병렬·합류·제어
모양이 비슷해도 중심 질문을 먼저 정하면 필요한 세부 수준을 선택할 수 있습니다.
09 · 직접 해 보기

순차와 병렬의 완료 시간을 비교하고 의존성을 검사하자

검색 4단위, 권리 확인 6단위, 개인정보 검사 3단위가 걸리는 교육용 모형입니다. 순차 실행은 시간을 모두 더하고, 서로 독립적인 세 작업을 동시에 시작하면 가장 늦게 끝나는 작업만큼 기다립니다. 그러나 ‘권리 확인은 검색 결과가 있어야 시작할 수 있다’를 선택하면 두 작업은 병렬로 둘 수 없습니다. 시간 단축보다 의존성 보존이 먼저입니다. 아래 수치는 실제 서비스 측정값이 아닙니다.

생각그림 9 · 병렬 실행 판단 실습
조건을 고른 뒤 계산하세요.
해설: 독립적 병렬이면 max(4,6,3)=6단위, 순차면 4+6+3=13단위입니다. 권리 확인이 검색 결과에 의존하면 최소 4+6=10단위가 필요하고 개인정보 검사만 그 옆에서 병렬로 진행할 수 있습니다.
병렬 배치는 시간표가 아니라 입력·출력 의존성을 먼저 검사해야 합니다.