TTX Studio 사용 설명서
개인정보 유출사고 대응 테이블탑 훈련을 준비하고 진행하는 도구입니다. 이 설명서는 역할별로 읽으면 됩니다. 처음이라면 1장(공통) 을 먼저 읽고, 자기 역할의 장으로 가세요.
| 내 역할 | 읽을 장 |
|---|---|
| 훈련에 참여하는 직원 | 2. 참여자 |
| 관찰·평가 담당 | 3. 평가자 |
| 훈련을 준비·진행하는 담당자 | 4. 퍼실리테이터 — 준비 · 5. 퍼실리테이터 — 진행 · 6. 훈련 후 |
| 시나리오를 검수하는 실무·법무 담당 | 7. 검수자 |
| 훈련 총괄(관리자) | 8. 관리자 |
1. 공통 — 꼭 알아야 할 것
- 모든 내용은 가상입니다. 인물·회사·수치는 훈련용으로 만든 것입니다. 실제 고객정보·실제 연락처·주민등록번호 등을 절대 입력하지 마세요. 연락처가 필요하면
010-0000-1234,help@example.com처럼 가상 형식을 쓰세요. 실제 형식이 감지되면 경고가 나오거나 AI 전송이 차단됩니다. - 훈련 결과는 징계나 인사 평가에 사용하지 않습니다. 실수해도 괜찮습니다. 실수에서 배우는 것이 훈련의 목적입니다.
- 법규 내용은 훈련용 참고값입니다. 화면 하단의 안내처럼, 실제 업무에서는 원문 법령과 개인정보보호위원회 안내자료를 확인하세요.
- "AI 초안", "참고용" 표시가 붙은 내용은 AI가 만든 것이며, 사람이 확인한 뒤에만 쓰입니다.
- 화면 오른쪽 위 연결 상태가 "폴링 연결" 로 나오면 실시간 연결이 불안정한 것입니다. 2초마다 자동으로 갱신되니 그대로 진행해도 됩니다.
이 훈련에서 다루는 핵심 규칙(참고)
- 유출 등을 알게 된 때부터 72시간 이내 개인정보보호위원회 또는 KISA에 신고하고, 정보주체에게 통지합니다.
- 신고 대상(하나만 해당해도): ① 1천명 이상 유출 ② 민감정보·고유식별정보 유출 ③ 해킹 등 외부 불법 접근에 의한 유출
- 통지문 필수 5항목: 유출 항목 / 유출 시점과 경위 / 정보주체가 할 수 있는 피해 최소화 방법 / 대응조치와 피해 구제절차 / 담당부서와 연락처. 확인되지 않은 사항이 있으면 확인된 것부터 먼저 통지하고 추가 통지합니다.
2. 참여자
2-1. 입장하기
- 퍼실리테이터에게 6자리 참여 코드를 받습니다(예:
100001). - 첫 화면의 훈련 입장 칸에 코드를 넣고 입장을 누릅니다. (또는 안내받은 주소
/play/참여코드로 바로 접속) - 안내문을 읽고 이름(표시용) 을 입력한 뒤 역할(개인정보보호책임자, 법무, 홍보 등)을 고르고 입장합니다.
한 브라우저에서는 한 훈련에 한 사람만 입장할 수 있습니다. 같은 PC를 여러 명이 쓰면 다른 브라우저를 사용하세요. 창을 닫았다가 다시 열어도 같은 브라우저라면 입장 상태가 유지됩니다.
2-2. 훈련 보드 보는 법
| 영역 | 내용 |
|---|---|
| 가상 경과 | 훈련 속 시간(T+시:분). 퍼실리테이터가 빠르게 돌리거나 건너뛸 수 있습니다. 오른쪽에 실제 시각도 표시됩니다. |
| 현재 상황 | 지금 벌어진 상황(인젝트)과 논의할 질문. 새 상황이 오면 자동으로 바뀝니다. |
| 지난 상황 | 이미 받은 상황을 펼쳐 다시 볼 수 있습니다. |
| 팀 결정 기록 | 팀원 모두의 결정이 시간순으로 쌓입니다. |
| 내 역할카드 | 위쪽 버튼. 내 임무, 스스로 답해야 할 질문, 참고 자료. |
2-3. 결정 기록하기
- 팀이 논의한 뒤 결정·의견 기록 칸에 결정과 그 근거를 적습니다.
- 좋은 예: "샘플 20건 중 다수가 실제 회원정보와 일치함을 확인했으므로 지금을 '알게 된 때'로 보고, CPO와 대표에게 즉시 보고한다."
- 대상 상황에서 어떤 상황에 대한 결정인지 고르고 기록을 누릅니다.
2-4. 인지 시점 선언 — 가장 중요한 판단
- "이제 유출 등을 알게 되었다"고 팀이 판단하면 인지 시점 선언 버튼을 누릅니다.
- 그 순간부터 72시간 신고·통지 카운트다운이 시작됩니다. 선언 전에는 카운트다운이 보이지 않습니다. 언제 선언할지 판단하는 것 자체가 평가 항목입니다.
- 선언은 팀 전체에 한 번만 유효합니다. 실수로 눌렀다면 퍼실리테이터에게 취소를 요청하세요.
- 남은 시간이 24·12·6시간 이하가 되면 색이 바뀌고, 기한을 넘기면 빨간색 "기한 초과" 가 됩니다.
2-5. 신고·통지 완료 기록
팀이 신고(보호위원회·KISA)나 정보주체 통지를 했다고 판단하면 신고 완료 기록, 통지 완료 기록 버튼을 누릅니다. 기한 안에 했는지 자동으로 기록됩니다.
2-6. 기자·고객·조사관·공격자 응대(페르소나)
- 퍼실리테이터가 연결하면 보드 위쪽에 보라색 대화창이 나타납니다.
- 상대는 훈련용 가상 인물입니다(AI 또는 퍼실리테이터가 응답). 실제 상황처럼 응대하세요.
- 응대 요령: 확인된 사실만 말하기, 추측·약속 남발하지 않기, 공감 표현, 공식 창구 안내. 공격자의 협박에는 즉답하지 말고 팀의 원칙을 따르세요.
- 대화가 끝나면 퍼실리테이터가 종료하며, 창이 사라집니다.
2-7. 산출물 작성(통지문·신고서·보도자료)
- 보드 위쪽 산출물 작성을 누릅니다.
- 탭에서 정보주체 통지문 / 유출 신고서 / 보도자료를 고릅니다. 템플릿이 들어 있습니다.
■제목 아래의〔 〕안내문을 지우고 내용을 채웁니다. (■줄과〔 〕는 점검에서 내용으로 치지 않습니다.)- 저장으로 중간 저장, 점검으로 필수 5항목을 확인합니다.
- ✅ 충족 / ❌ 누락과 함께 근거 문장과 보완 제안이 나옵니다.
- "참고용"입니다. 최종 판단은 사람이 합니다. 점검 후 내용을 고치면 "다시 점검하세요"가 표시됩니다.
- AI 점검이 켜져 있으면 AI 판단도 함께 보입니다. 규칙과 AI 판단이 다른 항목은 노란색으로 표시되니 직접 확인하세요.
3. 평가자
- 참여자와 같은 방법으로 입장하되, 역할에서 평가자를 고릅니다. 평가자 화면으로 자동 이동합니다.
- 화면 구성: 가상 시계와 72시간 트래커, 정답 기산점과 참여자 선언 차이, 평가표 항목, 투입된 상황, 참여자 결정.
- 평가표 항목마다 관찰한 내용을 적고 기록을 누르면 가상 시각·실제 시각·작성자가 자동으로 남습니다. 항목에 해당하지 않는 관찰은 맨 아래 일반 관찰 메모에 적습니다.
- 관찰은 "누가 잘못했나"가 아니라 "팀이 어떤 행동을 했나"(관찰 가능한 행동)를 중심으로 적어 주세요.
4. 퍼실리테이터 — 훈련 준비
4-1. 로그인
첫 화면 오른쪽 위 운영자 로그인 → 아이디·비밀번호. 로그인에 5번 연속 실패하면 15분간 잠깁니다. 계정은 관리자(훈련 총괄)에게 요청하세요.
4-2. 시나리오 고르기 또는 만들기 — 시나리오 메뉴
- 이미 승인된 시나리오 A(해킹)·B(오발송)·C(수탁사)를 그대로 써도 됩니다.
- 새 시나리오(AI 생성): 사고 유형, 대상 시스템, 가상 유출 규모, 유출 항목(민감정보·고유식별정보 구분), 최초 인지 경로, 난이도, 참여 역할, 훈련 시간을 입력합니다. 오른쪽 신고 의무 미리보기가 입력에 따라 바로 바뀝니다. AI로 초안 생성을 누르면 1~3분 걸립니다.
- 직접 작성: 같은 정보를 입력하고 빈 초안 만들기. (AI가 꺼져 있으면 자동으로 이 방식입니다.)
- 실제 형식의 개인정보가 입력되면 AI 전송이 차단되고 위치가 표시됩니다.
4-3. 시나리오 편집
| 탭 | 할 일 |
|---|---|
| 기본 정보 | 제목·배경·사실관계, 정답 기산점(알게 된 때로 보는 가상 시각), 학습 목표 |
| 인젝트 | 상황 카드 편집. 왼쪽 손잡이를 끌어 순서 변경(키보드: 손잡이에서 Space 후 화살표), 색은 대응 7단계, AI로 다시 쓰기(제안을 비교해 "적용"해야 반영), 인젝트 추가, 인젝트 뱅크에 저장·불러오기 |
| 역할카드 | 역할별 임무·핵심 질문·참고 자료. AI로 생성 후 편집 가능 |
| 안내문 / 평가표 / 설문 | 참여자 안내문, 평가자용 체크리스트(법정기한·보고체계·커뮤니케이션), 사후 설문 |
오른쪽 패널에서 대응 7단계 커버리지(어느 단계에 상황이 없는지)와 규칙 충돌·구성 경고(예: 신고 대상인데 4단계 인젝트 없음, 규칙과 다른 기한 표현, 실데이터 형식)를 확인하고 HIGH 경고를 해소하세요.
4-4. 검수 요청과 인쇄
- 편집을 마치면 검수 요청. 검수자 2명(실무 1, 법무/개인정보 1)이 승인하면 승인(APPROVED) 이 됩니다. 승인된 시나리오만 훈련에 쓸 수 있습니다.
- 승인 후 내용을 고치면 버전이 올라가고 초안으로 돌아가 다시 검수를 받아야 합니다.
- 인쇄·내보내기: 역할카드·안내문·평가표·설문을 인쇄하거나 브라우저 인쇄에서 "PDF로 저장". 승인 전 문서에는 "검수 전 초안 — 배포 금지"가 찍힙니다.
4-5. 페르소나 점검 — 페르소나 메뉴
기자·고객·조사관·공격자의 이름, 성격, 목표, 알고 있는 정보 범위, 금지사항, 말투를 조직 상황에 맞게 다듬습니다. 공통 금지사항(실존 기관명 금지, 공격 기법 금지 등)은 지울 수 없습니다.
4-6. 훈련 만들기 — 훈련 메뉴
승인된 시나리오를 고르고 훈련 생성 → 6자리 참여 코드가 발급되고 콘솔로 이동합니다. 참여자에게 코드와 일정, "실데이터 입력 금지·징계 미사용" 안내를 전달하세요.
4-7. 리허설 체크리스트(D-1주)
- 프로젝터 화면(
프로젝터버튼)이 회의실 화면에 잘 보이는가 - 배속(실제 1분 = 가상 1시간 등)과 +1h/+6h 점프 연습
- 인젝트 투입·수정 후 투입·건너뛰기 연습
- 페르소나 호출과 대리 응답 연습(AI 없이도 진행 가능)
- AI가 멈췄을 때: 콘솔에 "정적 모드" 배너가 뜨고 정적 인젝트로 계속 진행되는지 확인
5. 퍼실리테이터 — 훈련 진행
5-1. 콘솔 화면
| 영역 | 내용 |
|---|---|
| 상단 | 참여 코드(크게), 참여자 수, 연결 상태, AI/정적 모드 배너 |
| 가상 시계 | 시작/일시정지, 배속(실제 1분 = 가상 1분·10분·1시간·3시간·6시간), +1h/+6h 점프, 훈련 종료, 프로젝터, 훈련 요약 |
| 72시간 트래커 | 참여자가 선언하면 카운트다운 표시. 정답 기산점과 선언 차이(퍼실리테이터만 보임). 잘못 선언했으면 선언 취소 |
| 인젝트 큐 | 예정 시각순 상황 목록. 예정 시각이 지나면 "투입 시각 도달" 표시. 지금 투입 / 수정 후 투입 / 건너뛰기 |
| 동적 인젝트 제안 | (AI 모드) 참여자 결정이 기록될 때마다 후속 상황 후보 2~3개와 근거(어떤 결정 때문인지, 어떤 단계를 검증하는지). 검토·수정 후 승인해야만 투입. 기각 가능 |
| 페르소나 시뮬레이션 | 페르소나·대상 참여자·공개 정보(이 인물이 알 수 있는 것만) 선택 후 호출. 대화를 실시간으로 보고 대리 응답, AI 응답, 대화 종료 |
| 참여자 산출물 | 참여자가 작성·점검한 산출물과 결과 |
| 로그 타임라인 | 모든 투입·결정·선언·페르소나 대화. 퍼실리테이터 메모는 참여자에게 보이지 않음 |
5-2. 진행 순서 예시
- 참여자 입장을 확인한다(참여자 목록).
- 배속을 정하고 시작. 첫 인젝트를 지금 투입.
- 참여자 논의 → 결정 기록을 지켜본다. 인지 시점 선언 시점을 관찰한다.
- 예정 시각이 된 인젝트를 투입한다. 상황에 맞게 수정 후 투입하거나 건너뛴다.
- 적절한 시점에 기자·고객·조사관·공격자 페르소나를 호출해 대외 응대를 연습시킨다.
- 통지문·보도자료 작성 시간을 준다(참여자 산출물 작성).
- 기한 압박을 주려면 +6h 점프를 활용한다.
- 마무리되면 훈련 종료.
5-3. AI가 멈추거나 꺼져 있을 때
- 콘솔 상단에 "정적 모드" 배너가 뜹니다. 정적 인젝트로 그대로 진행하세요.
- 페르소나는 대리 응답으로 퍼실리테이터가 인물 역할을 직접 합니다.
- 산출물 점검은 규칙 기반 점검만 수행됩니다.
- AI가 복구되면 AI 모드 재시도를 누릅니다.
6. 퍼실리테이터 — 훈련 후
- 콘솔의 훈련 요약에서 확인합니다.
- 인지 시점 선언: 정답 기산점과의 차이
- 신고·통지: 기한 내 완료 여부와 여유/초과 시간
- 산출물 필수항목 충족률: 목표 95% 대비 달성 여부, 산출물별 누락 항목
- 활동 지표(결정·인젝트·페르소나 대화·관찰 메모 수)
- 타임라인 CSV(엑셀에서 열림)와 전체 JSON을 내려받아 사후 검토 자료로 씁니다.
- 사후 설문을 배포하고, 사후 검토(AAR) 회의에서 개선 과제를 정합니다. 요약은 조직의 대응 역량 개선용이며 개인 평가에 쓰지 않습니다.
- 시나리오를 개선하면 다시 2인 검수를 받습니다.
7. 검수자
- 운영자 계정으로 로그인합니다(검수자도 운영자 계정이 필요합니다).
시나리오목록에서 검수 중 시나리오를 열고 검수 화면으로 갑니다.- 사실관계·신고 판정·정답 기산점, 인젝트 타임라인(질문·기대 결정·법적 체크포인트), 역할카드·안내문·평가표·설문, 규칙 충돌 경고를 읽습니다.
- 검수 구분(실무 / 법무·개인정보)을 고르고 체크리스트 8항목을 모두 확인하면 승인 버튼이 켜집니다. 문제가 있으면 의견을 적고 반려합니다(반려는 의견 필수).
- 실무 1명과 법무/개인정보 1명이 각각 승인해야 하며, 같은 계정이 두 구분을 모두 승인할 수 없습니다. 검수 중에 시나리오가 수정되면 제출이 거부되니 새로고침 후 다시 검수하세요.
8. 관리자(훈련 총괄)
관리자 계정으로 로그인하면 상단에 관리 메뉴가 보입니다.
8-1. 기록 보관·파기
- 훈련 기록(참여자, 발언·결정, 페르소나 대화, 산출물, 관찰 메모, AI 호출 로그)은 기본 1년 보관합니다.
- 목록에서 보관기한이 지난 훈련은 빨간색 (만료) 로 표시됩니다.
- 만료 훈련 일괄 파기 또는 훈련별 파기(확인을 위해 훈련 제목을 그대로 입력)로 영구 삭제합니다. 되돌릴 수 없습니다. 진행 중인 훈련은 파기할 수 없습니다.
- 파기 후에는 훈련 제목과 파기 일시·수행자만 남습니다. 참여 코드는 해제됩니다.
- 서버 담당자가 매일 자동 파기를 예약해 두는 것을 권장합니다(README 참고).
8-2. AI 호출 현황
- 기간(최근 7/30/90일, 전체)별로 프롬프트 버전별 호출 수·실패율·재시도율·토큰 사용량·평균/p95 지연과 실패 사유, 최근 실패 20건을 봅니다.
- 실패율이 10% 이상이면 빨간색입니다. 재시도율이 높으면 프롬프트 개선이 필요하다는 신호입니다.
- 이 화면은 입력·출력 원문을 보여주지 않습니다.
8-3. 계정 관리
현재 계정 생성·비밀번호 재설정은 서버 담당자가 명령(npm run staff:create)으로 합니다. 퇴사·역할 변경 시 서버 담당자에게 요청하세요.
9. 자주 묻는 질문
Q. 참여 코드를 넣었는데 "참여 코드를 확인하세요"가 나옵니다. 코드가 틀렸거나, 훈련이 파기되었거나, 짧은 시간에 너무 많이 시도해 잠시 제한된 경우입니다. 1분 후 다시 시도하고, 계속되면 퍼실리테이터에게 문의하세요.
Q. 새로고침하니 다시 입장하라고 합니다. 다른 브라우저나 시크릿 창이면 입장 정보가 없습니다. 원래 쓰던 브라우저로 접속하세요. 새로 입장해도 기존 팀 기록은 유지됩니다.
Q. 인지 시점을 잘못 눌렀어요. 퍼실리테이터에게 선언 취소를 요청하세요. 취소 기록도 로그에 남습니다.
Q. "실데이터로 의심되는 형식" 경고가 나옵니다.
실제 전화번호·이메일·주민등록번호처럼 보이는 값이 있습니다. 010-0000-XXXX, @example.com 같은 가상 형식으로 바꾸세요.
Q. 페르소나가 이상한 말을 하거나 답이 없습니다. AI 응답이 안전 기준을 통과하지 못하면 표시되지 않습니다. 퍼실리테이터가 대리 응답으로 이어갈 수 있습니다.
Q. 통지문 점검에서 분명히 썼는데 누락이라고 나옵니다. 규칙 점검은 표현 패턴으로 판단하는 참고용입니다. 예를 들어 연락처는 "담당부서 이름 + 전화번호/이메일"이 함께 있어야 충족으로 봅니다. 보완 제안을 참고하되, 최종 판단은 퍼실리테이터·평가자가 합니다.
Q. 화면이 실시간으로 안 바뀝니다. "폴링 연결" 상태여도 2초마다 갱신됩니다. 그래도 안 바뀌면 새로고침하세요.