From 6bc2708cec7d8f9c238867bddf096f397d38aff0 Mon Sep 17 00:00:00 2001 From: djeon Date: Wed, 15 Oct 2025 17:44:41 +0900 Subject: [PATCH] =?UTF-8?q?=EC=9C=A0=EC=A0=80=EC=8A=A4=ED=86=A0=EB=A6=AC?= =?UTF-8?q?=20=EB=AC=B8=EC=84=9C=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 회의록 작성 및 공유 개선을 위한 유저스토리 작성 - 5개의 주요 유저스토리와 세부 시나리오 포함 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- design/userstory.md | 674 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 674 insertions(+) create mode 100644 design/userstory.md diff --git a/design/userstory.md b/design/userstory.md new file mode 100644 index 0000000..ba28dbc --- /dev/null +++ b/design/userstory.md @@ -0,0 +1,674 @@ +# 회의록 작성 및 공유 개선 서비스 - 유저스토리 + +- [회의록 작성 및 공유 개선 서비스 - 유저스토리](#회의록-작성-및-공유-개선-서비스---유저스토리) + - [마이크로서비스 구성](#마이크로서비스-구성) + - [유저스토리](#유저스토리) + +--- + +## 마이크로서비스 구성 +1. **User** - 사용자 인증 및 권한 관리 +2. **Meeting** - 회의 관리, 회의록 생성 및 관리, 회의록 공유 +3. **STT** - 음성 녹음 관리, 음성-텍스트 변환, 화자 식별 +4. **AI** - LLM 기반 회의록 자동 작성, Todo 자동 추출 +5. **RAG** - 전문용어 감지 및 설명 제공, 문서 검색 +6. **Collaboration** - 실시간 동기화, 버전 관리, 충돌 해결 +7. **Todo** - Todo 할당 및 관리, 진행 상황 추적 +8. **Notification** - 알림 발송 및 리마인더 관리 +9. **Calendar** - 일정 생성 및 외부 캘린더 연동 + +--- + +## 유저스토리 +``` +1. User 서비스 +1) 사용자 인증 및 관리 +AFR-USER-010: [사용자관리] 시스템 관리자로서 | 나는, 서비스 보안을 위해 | 사용자 인증 및 권한 관리 기능을 원한다. +- 시나리오: 사용자 인증 및 권한 관리 + 사용자가 로그인을 시도한 상황에서 | 아이디와 비밀번호를 입력하면 | 인증이 완료되고 권한에 따라 서비스에 접근할 수 있다. + - [ ] 사용자 인증 (아이디, 비밀번호) + - [ ] JWT 토큰 기반 인증 + - [ ] 사용자 권한 관리 (관리자, 일반 사용자) + - [ ] 세션 관리 +- M/8 + +--- + +2. Meeting 서비스 +1) 회의 준비 및 관리 +UFR-MEET-010: [회의예약] 회의록 작성자로서 | 나는, 회의를 효율적으로 준비하기 위해 | 회의를 예약하고 참석자를 초대하고 싶다. +- 시나리오: 회의 예약 및 참석자 초대 + 회의 예약 화면에 접근한 상황에서 | 회의 제목, 날짜/시간, 장소, 참석자 목록을 입력하고 예약 버튼을 클릭하면 | 회의가 예약되고 참석자에게 초대 이메일이 자동 발송된다. + + [입력 요구사항] + - 회의 제목: 최대 100자 (필수) + - 날짜/시간: 날짜 및 시간 선택 (필수) + - 장소: 최대 200자 (선택) + - 참석자 목록: 이메일 주소 입력 (최소 1명 필수) + + [처리 결과] + - 회의가 예약됨 (회의 ID 생성) + - 일정이 캘린더에 자동 등록됨 + - 참석자에게 초대 이메일 발송됨 + - 회의 시작 30분 전 리마인더 자동 발송 + +- M/13 + +--- + +UFR-MEET-020: [템플릿선택] 회의록 작성자로서 | 나는, 회의록을 효율적으로 작성하기 위해 | 회의 유형에 맞는 템플릿을 선택하고 싶다. +- 시나리오: 회의록 템플릿 선택 + 회의 시작 전 템플릿 선택 화면에 접근한 상황에서 | 제공되는 템플릿 중 하나를 선택하고 커스터마이징하면 | 회의록 도구가 준비된다. + + [템플릿 유형] + - 일반 회의: 기본 구조 (참석자, 안건, 논의 내용, 결정 사항, Todo) + - 스크럼 회의: 어제 한 일, 오늘 할 일, 이슈 + - 프로젝트 킥오프: 프로젝트 개요, 목표, 일정, 역할, 리스크 + - 주간 회의: 주간 실적, 주요 이슈, 다음 주 계획 + + [커스터마이징 옵션] + - 섹션 추가/삭제 + - 섹션 순서 변경 + - 기본 항목 설정 + + [처리 결과] + - 선택된 템플릿으로 회의록 도구가 준비됨 + - 템플릿 ID와 설정 정보가 저장됨 + +- S/5 + +--- + +UFR-MEET-030: [회의시작] 회의록 작성자로서 | 나는, 회의를 시작하고 회의록을 작성하기 위해 | 회의를 시작하고 음성 녹음을 준비하고 싶다. +- 시나리오: 회의 시작 + 예약된 회의 시간에 회의 시작 버튼을 클릭한 상황에서 | 회의 ID를 확인하고 시작하면 | 회의 세션이 생성되고 음성 녹음이 준비된다. + + [회의 시작 조건] + - 예약된 회의가 존재함 + - 회의 시작 시간이 도래함 + - 회의록 작성자가 시작 권한을 가짐 + + [처리 결과] + - 회의 세션이 생성됨 (세션 ID) + - 음성 녹음 준비 완료 + - 참석자 목록 표시 + - 회의 시작 시간 기록 + - 실시간 회의록 작성 화면 활성화 + +- M/8 + +--- + +2) 회의 종료 및 완료 +UFR-MEET-040: [회의종료] 회의록 작성자로서 | 나는, 회의를 종료하고 회의록을 정리하기 위해 | 회의를 종료하고 통계를 확인하고 싶다. +- 시나리오: 회의 종료 + 회의가 진행 중인 상황에서 | 회의 종료 버튼을 클릭하면 | 음성 녹음이 중지되고 회의 통계가 생성된다. + + [회의 종료 처리] + - 음성 녹음 즉시 중지 + - 회의 종료 시간 기록 + - 회의 통계 자동 생성 + - 회의 총 시간 + - 참석자 수 + - 발언 횟수 (화자별) + - 주요 키워드 + + [처리 결과] + - 회의가 종료됨 + - 회의 통계 표시 + - 최종 회의록 확정 단계로 이동 + +- M/8 + +--- + +UFR-MEET-050: [최종확정] 회의록 작성자로서 | 나는, 회의록을 완성하기 위해 | 최종 회의록을 확정하고 버전을 생성하고 싶다. +- 시나리오: 최종 회의록 확정 + 회의가 종료된 상황에서 | 회의록 내용을 최종 검토하고 확정 버튼을 클릭하면 | 필수 항목이 검사되고 최종 버전이 생성된다. + + [필수 항목 검사] + - 회의 제목 입력 여부 + - 참석자 목록 작성 여부 + - 주요 논의 내용 작성 여부 + - 결정 사항 작성 여부 + + [처리 결과] + - 최종 회의록 확정됨 (확정 버전 번호) + - 확정 시간 기록 + - AI가 자동으로 Todo 항목 추출 (UFR-AI-020 연동) + - 회의록 공유 가능 상태로 전환 + + [필수 항목 미작성 시] + - 누락된 항목 안내 메시지 표시 + - 해당 섹션으로 자동 이동 + +- M/13 + +--- + +3) 회의록 공유 +UFR-MEET-060: [회의록공유] 회의록 작성자로서 | 나는, 회의 내용을 참석자들과 공유하기 위해 | 최종 회의록을 공유하고 싶다. +- 시나리오: 회의록 공유 + 최종 회의록이 확정된 상황에서 | 공유 버튼을 클릭하고 공유 대상과 권한을 설정하면 | 공유 링크가 생성되고 참석자 전원에게 알림이 발송된다. + + [공유 설정] + - 공유 대상: 참석자 전체 (기본) / 특정 참석자 선택 + - 공유 권한: 읽기 전용 / 댓글 가능 / 편집 가능 + - 공유 방식: 이메일 / 슬랙 / 링크 복사 + + [처리 결과] + - 공유 링크 생성 (고유 URL) + - 참석자에게 이메일/슬랙 알림 발송 + - 공유 시간 기록 + - 다음 회의 일정이 언급된 경우 캘린더에 자동 등록 (UFR-CAL-010 연동) + + [공유 링크 보안] + - 링크 유효 기간 설정 (선택) + - 비밀번호 설정 (선택) + +- M/13 + +--- + +3. STT 서비스 +1) 음성 인식 및 변환 +UFR-STT-010: [음성녹음인식] 회의 참석자로서 | 나는, 발언 내용이 자동으로 기록되기 위해 | 음성이 실시간으로 녹음되고 인식되기를 원한다. +- 시나리오: 음성 녹음 및 발언 인식 + 회의가 시작된 상황에서 | 참석자가 발언을 시작하면 | 음성이 자동으로 녹음되고 화자가 식별되며 발언이 인식된다. + + [음성 녹음 처리] + - 오디오 스트림 실시간 캡처 + - 회의 ID와 연결 + - 음성 데이터 저장 (클라우드 스토리지) + + [발언 인식 처리] + - AI 음성인식 엔진 연동 (Whisper, Google STT 등) + - 화자 자동 식별 + - 참석자 목록 매칭 + - 음성 특징 분석 + - 타임스탬프 기록 + - 발언 구간 구분 + + [처리 결과] + - 음성 녹음이 시작됨 (녹음 ID) + - 발언이 인식됨 (발언 ID, 화자, 타임스탬프) + - 실시간으로 텍스트 변환 요청 (UFR-STT-020 연동) + + [성능 요구사항] + - 발언 인식 지연 시간: 1초 이내 + - 화자 식별 정확도: 90% 이상 + +- M/21 + +--- + +UFR-STT-020: [텍스트변환] 회의록 시스템으로서 | 나는, 인식된 발언을 회의록에 기록하기 위해 | 음성을 텍스트로 변환하고 싶다. +- 시나리오: 음성-텍스트 변환 + 발언이 인식된 상황에서 | AI 음성인식 엔진에 텍스트 변환을 요청하면 | 음성이 텍스트로 변환되고 정확도와 함께 반환된다. + + [텍스트 변환 처리] + - 인식된 발언 데이터 전달 + - 언어 설정 (한국어, 영어 등) + - AI 음성인식 엔진 처리 + - 문장 부호 자동 추가 + - 숫자/날짜 형식 정규화 + + [처리 결과] + - 텍스트가 변환됨 (텍스트 ID) + - 변환된 내용 (원문 텍스트) + - 정확도 점수 (0-100%) + - AI 회의록 자동 작성 요청 (UFR-AI-010 연동) + + [정확도 낮은 경우] + - 정확도 60% 미만 시 경고 표시 + - 수동 수정 인터페이스 제공 + +- M/13 + +--- + +4. AI 서비스 +1) AI 회의록 작성 +UFR-AI-010: [회의록자동작성] 회의록 작성자로서 | 나는, 회의록 작성 부담을 줄이기 위해 | AI가 발언 내용을 자동으로 정리하여 회의록을 작성하기를 원한다. +- 시나리오: AI 회의록 자동 작성 + 텍스트가 변환된 상황에서 | LLM에 회의록 자동 작성을 요청하면 | 회의 맥락을 이해하고 구조화된 회의록 초안이 생성된다. + + [AI 처리 과정] + - 변환된 텍스트와 회의 맥락(제목, 참석자, 이전 내용) 분석 + - 회의 내용 이해 + - 주제별 분류 + - 발언자별 의견 정리 + - 중요 키워드 추출 + - 문장 다듬기 + - 구어체 → 문어체 변환 + - 불필요한 표현 제거 + - 문법 교정 + - 구조화 + - 회의록 템플릿에 맞춰 정리 + - 주제, 발언자, 내용 구조화 + - 요약문 생성 + + [처리 결과] + - 회의록 초안이 생성됨 (회의록 버전) + - 생성 시간 기록 + - 구조화된 내용 + - 논의 주제 + - 발언자별 의견 + - 결정 사항 + - 보류 사항 + - 참석자에게 실시간 동기화 (UFR-COLLAB-010 연동) + + [Policy/Rule] + - 텍스트 변환되면 자동으로 회의록 구조에 맞춰 정리 + - 실시간 업데이트 (3-5초 간격) + +- M/34 + +--- + +2) Todo 자동 추출 +UFR-AI-020: [Todo자동추출] 회의록 작성자로서 | 나는, 회의 후 실행 사항을 명확히 하기 위해 | AI가 회의록에서 Todo 항목을 자동으로 추출하고 담당자를 식별하기를 원한다. +- 시나리오: AI Todo 자동 추출 + 회의가 종료된 상황에서 | 최종 회의록을 분석하여 Todo 자동 추출을 요청하면 | 액션 아이템이 식별되고 담당자가 자동으로 지정된다. + + [AI 분석 과정] + - 회의록 전체 내용 분석 + - 액션 아이템 식별 + - "~하기로 함", "~까지 완료", "~담당" 등 키워드 탐지 + - 명령형 문장 분석 + - 마감일 언급 추출 + - 담당자 자동 식별 + - 발언 내용 기반 ("제가 하겠습니다", "~님이 담당") + - 직책/역할 기반 매칭 + - 과거 회의록 패턴 학습 + + [처리 결과] + - Todo가 자동 추출됨 + - 추출된 항목 수 + - 각 Todo별 정보 + - Todo 내용 + - 담당자 (자동 식별) + - 마감일 (언급된 경우) + - 우선순위 (언급된 경우) + - 관련 회의록 섹션 링크 + - Todo 서비스에 자동 전달 (UFR-TODO-010 연동) + + [담당자 식별 실패 시] + - 미지정 상태로 Todo 생성 + - 회의 주최자에게 수동 할당 요청 알림 + +- M/21 + +--- + +5. RAG 서비스 +1) 전문용어 지원 +UFR-RAG-010: [전문용어감지] 회의록 작성자로서 | 나는, 업무 지식이 없어도 회의록을 정확히 작성하기 위해 | 전문용어가 자동으로 감지되고 설명을 제공받고 싶다. +- 시나리오: 전문용어 자동 감지 + 회의록이 작성되는 상황에서 | 시스템이 회의록 텍스트를 분석하면 | 전문용어가 자동으로 감지되고 하이라이트 표시된다. + + [전문용어 감지 처리] + - 회의록 텍스트 실시간 분석 + - 용어 사전과 비교 + - 조직별 전문용어 DB + - 산업별 표준 용어 DB + - 신뢰도 계산 (0-100%) + - 감지된 용어 위치 기록 + + [처리 결과] + - 전문용어가 감지됨 + - 감지된 용어 정보 + - 용어명 + - 감지 위치 (줄 번호, 문단) + - 신뢰도 점수 + - 용어 하이라이트 표시 + - RAG 검색 자동 실행 (UFR-RAG-020 연동) + + [Policy/Rule] + - 신뢰도 70% 이상만 자동 감지 + - 중복 용어는 첫 번째만 하이라이트 + +- S/13 + +--- + +UFR-RAG-020: [용어설명제공] 회의록 작성자로서 | 나는, 전문용어를 이해하기 위해 | 용어에 대한 설명을 자동으로 제공받고 싶다. +- 시나리오: 용어 설명 자동 제공 + 전문용어가 감지된 상황에서 | RAG 시스템이 용어 설명을 검색하면 | 과거 회의록 및 사내 문서에서 관련 설명이 생성되어 제공된다. + + [RAG 검색 수행] + - 벡터 유사도 검색 + - 과거 회의록 검색 + - 사내 문서 저장소 검색 (위키, 매뉴얼, 보고서) + - 관련 문서 추출 (관련도 점수순) + - 최대 5개 문서 선택 + + [LLM 설명 생성] + - 검색된 문서 내용 분석 + - 용어 정의 추출 + - 회의 맥락에 맞는 설명 생성 + - 간단한 정의 (1-2문장) + - 상세 설명 + - 사용 예시 + - 참조 출처 + + [처리 결과] + - 용어 설명이 생성됨 (설명 ID) + - 설명 내용 + - 간단한 정의 + - 상세 설명 + - 참조 문서 링크 + - 툴팁 또는 사이드 패널로 표시 + - 설명 제공 시간 기록 + + [설명을 찾지 못한 경우] + - "설명을 찾을 수 없습니다" 메시지 표시 + - 전문가(회의 참석자)에게 설명 요청 버튼 제공 + - 수동 입력된 설명은 용어 사전에 자동 저장 + +- S/21 + +--- + +6. Collaboration 서비스 +1) 실시간 협업 +UFR-COLLAB-010: [회의록수정동기화] 회의 참석자로서 | 나는, 회의록을 함께 검증하기 위해 | 회의록을 수정하고 실시간으로 다른 참석자와 동기화하고 싶다. +- 시나리오: 회의록 실시간 수정 및 동기화 + 회의록이 작성된 상황에서 | 참석자가 회의록 내용을 수정하면 | 수정 사항이 버전 관리되고 웹소켓을 통해 모든 참석자에게 즉시 동기화된다. + + [회의록 수정 처리] + - 수정 내용 검증 + - 수정 권한 확인 + - 수정 범위 제한 (잠긴 섹션은 수정 불가) + - 수정 이력 저장 + - 수정자 + - 수정 시간 + - 수정 전/후 내용 + - 수정 위치 + - 버전 관리 + - 새 버전 번호 생성 + - 이전 버전 보관 + + [실시간 동기화] + - 웹소켓을 통해 수정 델타 전송 + - 전체 내용이 아닌 변경 부분만 전송 (효율성) + - 모든 참석자 화면에 실시간 반영 + - 수정자 표시 (아바타, 이름) + - 수정 영역 하이라이트 (3초간) + + [처리 결과] + - 참석자가 회의록을 수정함 (수정 ID) + - 수정 사항이 동기화됨 + - 동기화 시간 + - 영향받은 참석자 목록 + + [Policy/Rule] + - 회의록 수정 시 웹소켓을 통해 모든 참석자에게 즉시 동기화 + +- M/34 + +--- + +UFR-COLLAB-020: [충돌해결] 회의 참석자로서 | 나는, 동시 수정 상황에서도 내용을 잃지 않기 위해 | 충돌을 감지하고 해결하고 싶다. +- 시나리오: 동시 수정 충돌 해결 + 두 명의 참석자가 동일한 위치를 동시에 수정한 상황에서 | 시스템이 충돌을 감지하면 | 충돌 알림이 표시되고 해결 방법을 선택할 수 있다. + + [충돌 감지] + - 동일 위치 동시 수정 탐지 + - 라인 단위 비교 + - 버전 기반 충돌 확인 + - 충돌 정보 생성 + - 충돌 위치 + - 관련 수정자 2명 + - 각자의 수정 내용 + + [충돌 해결 방식] + - Last Write Wins (기본) + - 가장 최근 수정이 우선 + - 이전 수정은 버전 이력에 보관 + - 수동 병합 (선택) + - 충돌 내용 비교 UI 표시 + - 사용자가 최종 내용 선택 + - A 선택 / B 선택 / 직접 작성 + + [처리 결과] + - 충돌이 감지됨 (충돌 ID) + - 충돌 위치 + - 관련 수정자 + - 충돌이 해결됨 + - 해결 방법 (Last Write Wins / 수동 병합) + - 최종 내용 + - 해결된 내용 실시간 동기화 + + [Policy/Rule] + - 동시 수정 발생 시 최종 수정이 우선 (Last Write Wins) 또는 충돌 알림 + +- M/21 + +--- + +UFR-COLLAB-030: [검증완료] 회의 참석자로서 | 나는, 회의록의 정확성을 보장하기 위해 | 주요 섹션을 검증하고 완료 표시를 하고 싶다. +- 시나리오: 회의록 검증 완료 + 회의록 내용을 확인한 상황에서 | 참석자가 검증 완료 버튼을 클릭하면 | 검증 상태가 업데이트되고 다른 참석자에게 동기화된다. + + [검증 처리] + - 검증자 정보 기록 + - 검증 시간 기록 + - 검증 대상 섹션 기록 + - 검증 상태 업데이트 + - 미검증 → 검증 중 → 검증 완료 + + [섹션 잠금 기능] + - 주요 섹션 검증 완료 시 잠금 가능 (선택) + - 잠긴 섹션은 추가 수정 불가 + - 잠금 해제는 검증자 또는 회의 주최자만 가능 + + [처리 결과] + - 검증이 완료됨 + - 검증자 정보 + - 검증 상태 (검증 완료) + - 완료 시간 + - 검증 완료 상태 실시간 동기화 + - 검증 배지 표시 (체크 아이콘) + + [Policy/Rule] + - 주요 섹션 검증 완료 시 해당 섹션 잠금 가능 + +- M/8 + +--- + +7. Todo 서비스 +1) Todo 관리 +UFR-TODO-010: [Todo할당] Todo 시스템으로서 | 나는, AI가 추출한 Todo를 담당자에게 전달하기 위해 | Todo를 할당하고 알림을 발송하고 싶다. +- 시나리오: Todo 자동 할당 + AI가 Todo를 추출한 상황에서 | 시스템이 Todo를 등록하고 담당자를 지정하면 | Todo가 할당되고 담당자에게 즉시 알림이 발송되며 캘린더에 마감일이 등록된다. + + [Todo 등록] + - Todo 정보 저장 + - Todo ID 생성 + - Todo 내용 + - 담당자 (AI 자동 식별 또는 수동 지정) + - 마감일 (언급된 경우 자동 설정, 없으면 수동 설정) + - 우선순위 (높음/보통/낮음) + - 관련 회의록 링크 + + [알림 발송] + - 담당자에게 즉시 알림 + - 이메일 + - 슬랙 (연동된 경우) + - 알림 내용 + - Todo 내용 + - 마감일 + - 회의록 링크 + + [캘린더 연동] + - 마감일이 있는 경우 캘린더에 자동 등록 + - 마감일 3일 전 리마인더 일정 생성 + + [처리 결과] + - Todo가 할당됨 (Todo ID) + - 담당자 정보 + - 마감일 + - 할당 시간 + - 담당자에게 알림이 발송됨 + - 캘린더 등록 완료 + + [Policy/Rule] + - Todo 할당 시 담당자에게 즉시 알림 발송 + +- M/13 + +--- + +UFR-TODO-020: [Todo진행상황업데이트] Todo 담당자로서 | 나는, Todo 진행 상황을 공유하기 위해 | 진행률을 업데이트하고 상태를 변경하고 싶다. +- 시나리오: Todo 진행 상황 업데이트 + 할당된 Todo가 있는 상황에서 | 담당자가 진행률과 상태를 입력하면 | 진행 상황이 저장되고 회의 주최자에게 알림이 발송된다. + + [진행 상황 입력] + - 진행률: 0-100% (슬라이더 또는 직접 입력) + - 상태: 시작 전 / 진행 중 / 완료 + - 메모: 진행 상황 설명 (선택) + + [진행 상황 저장] + - 업데이트 시간 기록 + - 진행률 히스토리 저장 + - 상태 변경 이력 저장 + + [알림 발송] + - 회의 주최자에게 진행 상황 알림 + - 진행률이 50%, 100%에 도달하면 자동 알림 + + [처리 결과] + - Todo 진행 상황이 업데이트됨 + - 업데이트 시간 + - 진행률 (%) + - 상태 (시작 전/진행 중/완료) + - 회의록에 진행 상황 반영 + +- M/5 + +--- + +UFR-TODO-030: [Todo완료처리] Todo 담당자로서 | 나는, 완료된 Todo를 처리하기 위해 | Todo를 완료하고 회의록에 자동 반영하고 싶다. +- 시나리오: Todo 완료 처리 + Todo 작업이 완료된 상황에서 | 담당자가 완료 버튼을 클릭하면 | Todo가 완료 상태로 변경되고 회의록에 자동 반영되며 회의 주최자에게 알림이 발송된다. + + [완료 처리] + - 완료 시간 자동 기록 + - 완료자 정보 저장 + - 완료 상태로 변경 + - 완료 여부 확인 다이얼로그 표시 + + [회의록 반영] + - 관련 회의록의 Todo 섹션 업데이트 + - 완료 표시 (체크 아이콘) + - 완료 시간 기록 + + [알림 발송] + - 회의 주최자에게 완료 알림 + - 모든 Todo 완료 시 전체 완료 알림 + + [처리 결과] + - Todo가 완료됨 + - 완료 시간 + - 완료자 정보 + - 회의록에 완료 상태가 반영됨 + - 반영 시간 + - 회의록 버전 업데이트 + + [Policy/Rule] + - Todo 완료 시 회의록에 완료 상태 자동 반영 + - 모든 Todo 완료 시 회의 주최자에게 완료 알림 + +- M/8 + +--- + +8. Notification 서비스 +1) 알림 관리 +UFR-NOTI-010: [알림리마인더] 회의 참석자로서 | 나는, 중요한 일정을 놓치지 않기 위해 | 회의 및 Todo 관련 알림과 리마인더를 받고 싶다. +- 시나리오 1: 회의 알림 + 회의가 예약된 상황에서 | 회의 시작 30분 전이 되면 | 참석자에게 리마인더가 자동 발송된다. + + [회의 알림 유형] + - 회의 초대: 회의 예약 시 + - 회의 시작 리마인더: 30분 전 + - 회의록 공유: 회의 종료 후 + +- 시나리오 2: Todo 알림 + Todo가 할당된 상황에서 | 마감일 3일 전이 되면 | 담당자에게 리마인더가 자동 발송된다. + + [Todo 알림 유형] + - Todo 할당: 할당 즉시 + - 마감일 3일 전 리마인더 + - 마감일 당일 리마인더 + - 마감일 경과 긴급 알림 (미완료 시) + - Todo 완료: 완료 시 + + [알림 채널] + - 이메일 (기본) + - 슬랙 (연동 시) + - 인앱 알림 + + [알림 설정] + - 알림 채널 선택 + - 알림 시간 설정 + - 알림 끄기/켜기 + + [처리 결과] + - 알림이 발송됨 (알림 ID) + - 알림 대상 (이메일 주소, 슬랙 ID) + - 알림 내용 + - 발송 시간 + - 발송 채널 + - 발송 상태 (성공/실패) + + [Policy/Rule] + - 회의 시작 30분 전 리마인더 자동 발송 + - 마감일 3일 전 자동 리마인더 발송 + - 마감일 당일 미완료 시 긴급 알림 발송 + +- M/13 + +--- + +9. Calendar 서비스 +1) 일정 관리 +UFR-CAL-010: [일정연동] 회의록 작성자로서 | 나는, 일정을 통합 관리하기 위해 | 회의 및 다음 회의 일정을 외부 캘린더에 자동으로 연동하고 싶다. +- 시나리오 1: 회의 일정 자동 등록 + 회의가 예약된 상황에서 | 시스템이 일정 동기화를 요청하면 | 회의 일정이 Google Calendar, Outlook 등 외부 캘린더에 자동으로 등록된다. + + [일정 등록 정보] + - 회의 제목 + - 날짜 및 시간 + - 장소 + - 참석자 목록 + - 회의록 링크 (메모) + +- 시나리오 2: 다음 회의 일정 연동 + 회의록에서 다음 회의 일정이 언급된 상황에서 | 시스템이 자동으로 감지하면 | 다음 회의 일정이 캘린더에 자동으로 생성된다. + + [자동 감지 키워드] + - "다음 회의: ~" + - "~에 다시 모이기로 함" + - "후속 회의 일정: ~" + + [처리 결과] + - 일정이 캘린더에 연동됨 (일정 ID) + - 연동 상태 (성공/실패) + - 캘린더 종류 (Google Calendar, Outlook) + - 연동 시간 + + [지원 캘린더] + - Google Calendar + - Microsoft Outlook + - Apple Calendar + + [Policy/Rule] + - 다음 회의 일정이 언급되면 자동으로 캘린더에 등록 + +- S/13 + +--- +```