# 회의록 작성 및 공유 개선 서비스 - 유저스토리 (v2.0) - [회의록 작성 및 공유 개선 서비스 - 유저스토리 (v2.0)](#회의록-작성-및-공유-개선-서비스---유저스토리-v20) - [차별화 전략](#차별화-전략) - [마이크로서비스 구성](#마이크로서비스-구성) - [유저스토리](#유저스토리) --- ## 차별화 전략 본 서비스는 다음과 같은 차별화 포인트를 통해 경쟁 우위를 확보합니다: ### 1. 기본 기능 (Hygiene Factors) - **STT(Speech To Text)**: 음성을 텍스트로 변환하는 기본 기능 - 시장의 대부분 서비스가 제공하는 기능으로 차별화 포인트가 아님 - 필수 기능이지만 경쟁 우위를 가져다주지 않음 ### 2. 핵심 차별화 포인트 (Differentiators) - **맥락 기반 용어 설명**: 단순 용어 설명을 넘어, 관련 회의록과 업무이력을 바탕으로 실용적인 정보 제공 - **강화된 Todo 연결**: Action item이 담당자의 Todo와 실시간으로 연결되고, 진행 상황이 회의록에 자동 반영 - **프롬프팅 기반 회의록 개선**: AI를 활용한 다양한 형식의 회의록 생성 (1Page 요약, 핵심 요약 등) - **지능형 회의 진행 지원**: 회의 패턴 분석을 통한 안건 추천, 효율성 분석 및 개선 제안 --- ## 마이크로서비스 구성 1. **User** - 사용자 인증 (LDAP 연동, JWT 토큰 발급/검증) 2. **Meeting** - 회의, 회의록, Todo, 실시간 협업 통합 관리 - 회의 관리: 회의 예약, 시작, 종료 - 회의록 관리: 회의록 생성, 수정, 확정, 공유 - Todo 관리: Todo 할당, 진행 상황 추적, 회의록 양방향 연결 - 실시간 협업: WebSocket 기반 실시간 동기화, 버전 관리, 충돌 해결 - 템플릿 관리: 회의록 템플릿 관리 - 통계 생성: 회의 및 Todo 통계 3. **STT** - 음성 녹음 관리, 음성-텍스트 변환, 화자 식별 (기본 기능) 4. **AI** - AI 기반 회의록 자동화, Todo 추출, 지능형 검색 (RAG 통합) - LLM 기반 회의록 자동 작성 - Todo 자동 추출 및 담당자 식별 - 프롬프팅 기반 회의록 개선 (1Page 요약, 핵심 요약 등) - 관련 회의록 자동 연결 (벡터 유사도 검색) - 전문용어 자동 감지 및 맥락 기반 설명 생성 (RAG) - 과거 회의록 및 사내 문서 검색 - 업무 이력 통합 5. **Notification** - 알림 발송 및 리마인더 관리 --- ## 유저스토리 ``` 1. User 서비스 1) 사용자 인증 관리 AFR-USER-010: [사용자관리] 시스템 관리자로서 | 나는, 서비스 보안을 위해 | 사용자 인증 기능을 원한다. - 시나리오: 사용자 인증 관리 사용자가 로그인을 시도한 상황에서 | 사번과 비밀번호를 입력하면 | LDAP 연동을 통해 인증이 완료되고 권한에 따라 서비스에 접근할 수 있다. - [ ] 사용자 인증 (사번, 비밀번호) - [ ] 세션 관리 - M/8 --- AFR-USER-020: [대시보드] 사용자로서 | 나는, 회의록 서비스의 주요 정보를 한눈에 파악하기 위해 | 대시보드를 통해 요약 정보를 확인하고 싶다. - 시나리오: 대시보드 조회 로그인 후 대시보드에 접근하면 | 예정된 회의, 진행 중 Todo, 최근 회의록 등 주요 정보가 표시되고 | 플로팅 액션 버튼을 통해 새 회의를 시작하거나 예약할 수 있다. **변경사항 (논리 아키텍처)**: - 프론트엔드가 Meeting Service에 직접 API 요청하여 회의, Todo, 회의록 정보 조회 - User Service는 인증만 담당 (JWT 토큰 검증) - 모든 API 요청에 사용자 정보(userId, userName, email) 포함 [대시보드 주요 위젯] - 사용자 인사말 (이름 표시) - 통계 카드: - 예정된 회의 개수 - 진행 중 Todo 개수 - Todo 완료율 (%) - 최근 회의 섹션: - 회의 제목 - 회의 일시 - 회의 장소 - 참석자 수 - 회의 상태 (진행중/예정/확정완료) - 참여하기/보기 버튼 - 전체 보기 링크 (회의록 목록으로 이동) - 할당된 Todo 섹션: - Todo 목록 (최대 3개) - 전체 보기 링크 (Todo 관리로 이동) - Todo 없을 시 안내 메시지 - 내 회의록 섹션: - 작성한 회의록 목록 (최대 3개) - 전체 보기 링크 - 회의록 없을 시 안내 메시지 - 공유받은 회의록 섹션: - 공유받은 회의록 목록 (최대 3개) - 전체 보기 링크 - 회의록 없을 시 안내 메시지 [플로팅 액션 버튼 (FAB)] - 메인 FAB 버튼 (+) - 클릭 시 확장 메뉴 표시: - 🚀 새 회의 시작 - 📅 회의 예약 - 우측 하단 고정 위치 [네비게이션] - 좌측 사이드바 (데스크톱): - 로고 및 서비스명 - 📊 대시보드 - 📋 회의 목록 - ✅ Todo 관리 - 사용자 프로필 (이름, 이메일) - 하단 탭 바 (모바일): - 🏠 홈 - 📋 회의록 - ✅ Todo [처리 결과] - 사용자별 맞춤 대시보드 표시 - 실시간 통계 업데이트 - 반응형 레이아웃 (모바일/태블릿/데스크톱) - M/8 --- 2. Meeting 서비스 (회의, 회의록, Todo, 실시간 협업 통합) 1) 회의 준비 및 관리 UFR-MEET-010: [회의예약] 회의록 작성자로서 | 나는, 회의를 효율적으로 준비하기 위해 | 회의를 예약하고 참석자를 초대하고 싶다. - 시나리오: 회의 예약 및 참석자 초대 회의 예약 화면에 접근한 상황에서 | 회의 제목, 날짜/시간, 장소, 참석자 목록을 입력하고 예약 버튼을 클릭하면 | 회의가 예약되고 참석자에게 초대 이메일이 자동 발송된다. [입력 요구사항] - 회의 제목: 최대 100자 (필수) - 날짜/시간: 날짜 및 시간 선택 (필수) - 장소: 최대 200자 (선택) - 참석자 목록: 이메일 주소 입력 (최소 1명 필수) [처리 결과] - 회의가 예약됨 (회의 ID 생성) - 일정이 캘린더에 자동 등록됨 - 참석자에게 초대 이메일 발송됨 - 회의 시작 30분 전 리마인더 자동 발송 - M/13 --- UFR-MEET-020: [템플릿선택] 회의록 작성자로서 | 나는, 회의록을 효율적으로 작성하기 위해 | 회의 유형에 맞는 템플릿을 선택하고 싶다. - 시나리오: 회의록 템플릿 선택 회의 시작 전 템플릿 선택 화면에 접근한 상황에서 | 제공되는 템플릿 중 하나를 선택하고 커스터마이징하면 | 회의록 도구가 준비된다. [템플릿 유형] - 일반 회의: 기본 구조 (참석자, 안건, 논의 내용, 결정 사항, Todo) - 스크럼 회의: 어제 한 일, 오늘 할 일, 이슈 - 프로젝트 킥오프: 프로젝트 개요, 목표, 일정, 역할, 리스크 - 주간 회의: 주간 실적, 주요 이슈, 다음 주 계획 [커스터마이징 옵션] - 섹션 추가/삭제 - 섹션 순서 변경 - 기본 항목 설정 [처리 결과] - 선택된 템플릿으로 회의록 도구가 준비됨 - S/5 --- UFR-MEET-030: [회의시작] 회의록 작성자로서 | 나는, 회의를 시작하고 회의록을 작성하기 위해 | 회의를 시작하고 음성 녹음을 준비하고 싶다. - 시나리오: 회의 시작 예약된 회의 시간에 회의 시작 버튼을 클릭한 상황에서 | 회의 ID를 확인하고 시작하면 | 회의 세션이 생성되고 음성 녹음이 준비된다. [회의 시작 조건] - 예약된 회의가 존재함 - 회의 시작 시간 10분 전부터 회의 시작 버튼 활성화 - 회의록 작성자가 시작 권한을 가짐 - 이미 시작된 회의일 경우, 진행중으로 표시 [처리 결과] - 회의 세션이 생성됨 (세션 ID) - 음성 녹음 준비 완료 - 참석자 목록 표시 - 회의 시작 시간 기록 - 실시간 회의록 주요 항목 추천 - M/8 --- 2) 회의 종료 및 완료 UFR-MEET-040: [회의종료] 회의록 작성자로서 | 나는, 회의를 종료하고 회의록을 정리하기 위해 | 회의를 종료하고 통계를 확인하고 싶다. - 시나리오: 회의 종료 회의가 진행 중인 상황에서 | 회의 종료 버튼을 클릭하면 | 음성 녹음이 중지되고 회의 통계가 생성된다. [회의 종료 처리] - 음성 녹음 즉시 중지 - 회의 종료 시간 기록 - 회의 통계 자동 생성 - 회의 총 시간 - 참석자 수 - 발언 횟수 (화자별) - 주요 키워드 [처리 결과] - 회의가 종료됨 - 회의 통계 표시 - 검증 완료 시 최종 회의록 확정 단계로 이동 [검증 미완료 시] - 검증이 안된 항목이 있다면 회의록 히스토리 페이지에서 추후 수정 가능 - M/8 --- UFR-MEET-050: [최종확정] 회의록 작성자로서 | 나는, 회의록을 완성하기 위해 | 최종 회의록을 확정하고 버전을 생성하고 싶다. - 시나리오: 최종 회의록 확정 회의가 종료된 상황에서 | 회의록 내용을 최종 검토하고 확정 버튼을 클릭하면 | 필수 항목이 검사되고 최종 버전이 생성된다. [필수 항목 검사] - 회의 제목 입력 여부 - 참석자 목록 작성 여부 - 주요 논의 내용 작성 여부 - 결정 사항 작성 여부 [처리 결과] - 최종 회의록 확정됨 (확정 버전 번호) - 확정 시간 기록 - AI가 자동으로 Todo 항목 추출 (UFR-AI-020 연동) - 회의록 공유 가능 상태로 전환 [필수 항목 미작성 시] - 누락된 항목 안내 메시지 표시 - 해당 섹션으로 자동 이동 - M/13 --- UFR-MEET-046: [회의록목록조회] 회의록 작성자로서 | 나는, 작성한 회의록들을 효율적으로 관리하기 위해 | 회의록 목록을 조회하고 필터링하고 싶다. - 시나리오: 회의록 목록 조회 및 필터링 대시보드에서 "회의록" 메뉴를 클릭하면 | 회의록 목록이 표시되고 | 다양한 필터와 검색으로 원하는 회의록을 찾을 수 있다. [회의록 목록 조회] - 회의록 상태별 필터링: 전체 / 작성중 / 확정완료 - 정렬 옵션: 최신순 / 회의일시순 / 제목순 - 카테고리 필터: 전체 / 공유받은 회의 / 참석한 회의 / 생성한 회의 - 검색 기능: 회의 제목, 참석자, 키워드로 검색 - 통계 표시: 전체 개수, 작성중 개수, 확정완료 개수 - 목록 표시 정보: - 회의 제목 - 회의 일시 - 참석자 수 - 회의록 상태 (작성중/확정완료) - 검증 완료율 (작성중인 경우) - 권한 정보 (조회 전용 표시) - 마지막 수정 시간 [처리 결과] - 필터/정렬/검색 조건에 맞는 회의록 목록 표시 - 회의록 클릭 시 상세 조회 화면으로 이동 - 모바일/태블릿/데스크톱 반응형 레이아웃 - M/8 --- UFR-MEET-047: [회의록상세조회] 회의록 작성자로서 | 나는, 지난 회의록의 상세 정보와 전체 내용을 | 한눈에 확인하고 싶다. - 시나리오: 회의록 상세 정보 조회 회의록 목록에서 특정 회의록을 클릭하면 | 해당 회의의 기본 정보와 섹션별 상세 내용이 표시되고 | 필요한 경우 수정, 공유 등의 작업을 수행할 수 있다. [회의 기본 정보 표시] - 회의 제목 - 회의 일시 (날짜 및 시간, 소요 시간) - 참석자 목록 (아바타 표시, 역할 구분: 작성자/참석자) - 회의 장소 (온라인/오프라인) - 회의록 상태 (작성중/확정완료) - 작성자 및 최종 수정 시간 [섹션별 상세 내용 표시] - 각 섹션 구분 표시 (번호, 제목) - 섹션별 검증 상태 표시 (검증완료 배지) - AI 요약 섹션: - 섹션별 AI 요약 내용 - 생성/수정 시간 표시 - 편집 버튼 (수정 권한이 있는 경우) - 상세 내용 섹션: - 논의 사항 (리스트 형태) - 결정 사항 (리스트 형태) - 일정 정보 (있는 경우) - 리소스 정보 (있는 경우) - 관련 회의록 섹션: - 관련도 높은 회의록 최대 3개 표시 - 각 회의록별 정보: 제목, 날짜, 관련도 %, 요약 내용 - 클릭 시 해당 회의록으로 이동 [부가 기능] - 회의록 수정 버튼 (수정 권한이 있는 경우만 활성화) - 회의록 공유 버튼 (공유 설정 화면으로 이동) - 탭 네비게이션 (회의록/대시보드) - 뒤로가기 버튼 (회의록 목록으로 복귀) - 더보기 메뉴 (다운로드, 삭제 등) [처리 결과] - 모바일/태블릿/데스크톱 반응형 레이아웃 - 긴 내용은 적절한 단락 구분 및 여백 적용 - 페이지 로딩 시 스크롤 위치는 최상단 - 관련 회의록 자동 표시 [권한별 표시] - 조회 권한만 있는 경우: 수정 버튼 비활성화 - 수정 권한이 있는 경우: 수정 버튼 활성화 - M/8 --- UFR-MEET-055: [회의록수정] 회의록 작성자로서 | 나는, 검증이 완료되지 않았거나 수정이 필요한 | 지난 회의록을 수정하고 싶다. - 시나리오: 지난 회의록 수정 회의록 상세 화면에서 수정 버튼을 클릭하면 | 회의록 수정 화면으로 이동하고 | 내용을 수정할 수 있다. [회의록 수정] - 회의 제목 수정 가능 - 섹션별 AI 요약 수정 가능 - AI 재생성 버튼 (섹션별 AI 요약 다시 생성) - 섹션별 내용 수정 가능 (마크다운 에디터) - 참고자료 추가/삭제 기능 - 상태에 따른 수정 가능 범위: - 작성중: 모든 섹션 수정 가능 - 확정완료: 수정 시 자동으로 작성중 상태로 변경 - 검증완료 섹션: 잠금 해제 요청 필요 (회의록 생성자만) - 수정 중 자동 저장 (30초 간격) - 저장 상태 표시 (저장됨/저장 중) - 수정 이력 관리 (누가, 언제, 무엇을 수정했는지) [처리 결과] - 수정 내용 즉시 반영 - 수정 시간 업데이트 - 확정완료 상태였던 경우 → 작성중 상태로 변경 - 취소 시 이전 상태로 복원 [권한 제어] - 본인이 작성한 회의록만 수정 가능 - 검증완료 섹션 잠금/해제는 회의록 생성자만 가능 - 조회 전용 권한인 경우 수정 버튼 비활성화 - M/13 --- 3. STT 서비스 (음성 인식 및 변환 - 기본 기능) 1) 음성 인식 및 변환 UFR-STT-010: [음성녹음인식] 회의 참석자로서 | 나는, 발언 내용이 자동으로 기록되기 위해 | 음성이 실시간으로 녹음되고 인식되기를 원한다. - 시나리오: 음성 녹음 및 발언 인식 회의가 시작된 상황에서 | 참석자가 발언을 시작하면 | 음성이 자동으로 녹음되고 화자가 식별되며 발언이 인식된다. [음성 녹음 처리] - 오디오 스트림 실시간 캡처 - 회의 ID와 연결 - 음성 데이터 저장 (Azure 스토리지) [발언 인식 처리] - AI 음성인식 엔진 연동 (Azure Speech 등) - 화자 자동 식별 - 참석자 목록 매칭 - 음성 특징 분석 - 타임스탬프 기록 - 발언 구간 구분 [처리 결과] - 음성 녹음이 시작됨 (녹음 ID) - 발언이 인식됨 (발언 ID, 화자, 타임스탬프) - 실시간으로 텍스트 변환 요청 (UFR-STT-020 연동) [성능 요구사항] - 발언 인식 지연 시간: 1초 이내 - 화자 식별 정확도: 90% 이상 [비고] - STT는 기본 기능으로 경쟁사 대부분이 제공하는 기능임 - 차별화 포인트가 아닌 필수 기능 - M/21 --- UFR-STT-020: [텍스트변환] 회의록 시스템으로서 | 나는, 인식된 발언을 회의록에 기록하기 위해 | 음성을 텍스트로 변환하고 싶다. - 시나리오: 음성-텍스트 변환 발언이 인식된 상황에서 | AI 음성인식 엔진에 텍스트 변환을 요청하면 | 음성이 텍스트로 변환되고 정확도와 함께 반환된다. [텍스트 변환 처리] - 인식된 발언 데이터 전달 - 언어 설정 (한국어, 영어 등) - AI 음성인식 엔진 처리 - 문장 부호 자동 추가 - 숫자/날짜 형식 정규화 [처리 결과] - 텍스트가 변환됨 (텍스트 ID) - 변환된 내용 (원문 텍스트) - 정확도 점수 (0-100%) - AI 회의록 자동 작성 요청 (UFR-AI-010 연동) [정확도 낮은 경우] - 정확도 60% 미만 시 경고 표시 - 수동 수정 인터페이스 제공 [비고] - STT는 기본 기능으로 차별화 포인트가 아님 - M/13 --- 4. AI 서비스 (AI 기반 회의록 자동화, Todo 추출, 지능형 검색 - RAG 통합) 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 --- 3) 프롬프팅 기반 회의록 개선 (신규, 차별화 포인트) UFR-AI-030: [회의록개선] 회의록 작성자로서 | 나는, 회의록을 다양한 형식으로 변환하기 위해 | 프롬프팅을 통해 회의록을 개선하고 재구성하고 싶다. - 시나리오: 프롬프팅 기반 회의록 개선 회의록이 작성된 상황에서 | "1Page 요약", "핵심 요약", "상세 보고서" 등의 프롬프트를 입력하면 | AI가 해당 형식에 맞춰 회의록을 재구성하여 제공한다. [지원 프롬프트 유형] - "1Page 요약": A4 1장 분량의 요약본 생성 - "핵심 요약": 3-5개 핵심 포인트만 추출 - "상세 보고서": 시간순 상세 기록 with 타임스탬프 - "의사결정 중심": 결정 사항과 근거만 정리 - "액션 아이템 중심": Todo와 담당자만 강조 - "경영진 보고용": 임원진에게 보고할 형식으로 재구성 - "커스텀 프롬프트": 사용자 정의 형식 [AI 처리 과정] - 원본 회의록 분석 - 프롬프트 의도 파악 - 내용 재구성 - 중요도 기반 필터링 - 형식에 맞춘 재배치 - 불필요한 내용 제거 - 스타일 조정 - 문체 변환 (격식체, 구어체 등) - 길이 조정 (압축 또는 확장) [처리 결과] - 개선된 회의록이 생성됨 (새 버전) - 원본 회의록 링크 유지 - 생성 시간 및 프롬프트 기록 [Policy/Rule] - 원본 회의록은 항상 보존 - 여러 버전 동시 생성 가능 - 버전 간 비교 기능 제공 - M/21 --- 4) 관련 회의록 자동 연결 (신규, 차별화 포인트) UFR-AI-040: [관련회의록연결] 회의록 작성자로서 | 나는, 이전 회의 내용을 쉽게 참조하기 위해 | AI가 같은 폴더 내 관련 있는 과거 회의록을 자동으로 찾아 연결해주기를 원한다. - 시나리오: 관련 회의록 자동 연결 회의록이 작성되는 상황에서 | AI가 회의 주제와 내용을 분석하면 | 같은 폴더 내 유사한 주제의 과거 회의록을 찾아 자동으로 연결한다. [AI 분석 과정] - 현재 회의록 주제 및 키워드 추출 - 벡터 유사도 검색 - 과거 회의록 DB에서 검색 - 주제 유사도 계산 - 관련도 점수 계산 (0-100%) - 같은 폴더 내 상위 5개 회의록 선정 [연결 기준] - 주제 유사도 70% 이상 - 동일 참석자가 50% 이상 - 키워드 3개 이상 일치 - 시간적 연관성 (후속 회의, 분기별 회의 등) [처리 결과] - 관련 회의록 목록 생성 - 각 회의록별 정보 - 제목 - 날짜 - 참석자 - 관련도 점수 - 연관 키워드 - 회의록 상단에 "관련 회의록" 섹션 자동 추가 - 클릭 시 해당 회의록으로 이동 [Policy/Rule] - 관련도 70% 이상만 자동 연결 - 최대 5개까지 표시 - S/13 --- 5. AI 서비스 (지능형 검색 - RAG 기능, AI Service에 통합됨) 1) 맥락 기반 용어 설명 (강화) UFR-RAG-010: [전문용어감지] 회의록 작성자로서 | 나는, 업무 지식이 없어도 회의록을 정확히 작성하기 위해 | 전문용어가 자동으로 감지되고 맥락에 맞는 설명을 제공받고 싶다. - 시나리오: 맥락 기반 전문용어 자동 감지 회의록이 작성되는 상황에서 | 시스템이 회의록 텍스트를 분석하면 | 전문용어가 자동으로 감지되고 맥락에 맞는 설명이 준비된다. **변경사항 (논리 아키텍처)**: - AI Service에 RAG 기능 통합 - RAG와 AI 모두 LLM 기반 처리로 긴밀하게 연동 - 동일한 벡터 임베딩 모델 및 LLM 공유 가능 - 회의록 자동 작성 시 용어 설명이 병렬 처리되어 효율적 [전문용어 감지 처리] - 회의록 텍스트 실시간 분석 - 용어 사전과 비교 - 조직별 전문용어 DB - 산업별 표준 용어 DB - 신뢰도 계산 (0-100%) - 감지된 용어 위치 기록 [처리 결과] - 전문용어가 감지됨 - 감지된 용어 정보 - 용어명 - 감지 위치 (줄 번호, 문단) - 신뢰도 점수 - 용어 하이라이트 표시 - 맥락 기반 설명 자동 생성 (UFR-RAG-020 연동) [Policy/Rule] - 신뢰도 70% 이상만 자동 감지 - 중복 용어는 첫 번째만 하이라이트 [비고] - 단순 용어 설명이 아닌 맥락 기반 실용적 정보 제공이 차별화 포인트 - S/13 --- UFR-RAG-020: [맥락기반용어설명] 회의록 작성자로서 | 나는, 전문용어를 맥락에 맞게 이해하기 위해 | 관련 회의록과 업무 이력을 바탕으로 실용적인 설명을 제공받고 싶다. - 시나리오: 맥락 기반 용어 설명 자동 제공 전문용어가 감지된 상황에서 | RAG 시스템이 관련 문서를 검색하면 | 과거 회의록 및 업무 이력에서 맥락에 맞는 실용적인 설명이 생성되어 제공된다. [RAG 검색 수행] - 벡터 유사도 검색 - 과거 회의록 검색 (동일 용어 사용 사례) - 사내 문서 저장소 검색 (위키, 매뉴얼, 보고서) - 업무 이력 검색 (프로젝트 문서, 이메일 등) - 관련 문서 추출 (관련도 점수순) - 최대 5개 문서 선택 [맥락 기반 설명 생성] - 검색된 문서 내용 분석 - 용어 정의 추출 - 실제 사용 사례 추출 - 현재 회의 맥락에 맞는 설명 생성 - 간단한 정의 (1-2문장) - 이 회의에서의 의미 (맥락 기반) - 관련 프로젝트/이슈 연결 - 과거 논의 요약 (언제, 누가, 어떻게 사용했는지) - 참조 출처 링크 [처리 결과] - 맥락 기반 용어 설명이 생성됨 (설명 ID) - 설명 내용 - 간단한 정의 - 맥락 기반 상세 설명 - 실제 사용 사례 - 관련 프로젝트/이슈 - 과거 회의록 링크 (최대 3개) - 사내 문서 링크 - 툴팁 또는 사이드 패널로 표시 - 설명 제공 시간 기록 [설명을 찾지 못한 경우] - "관련 정보를 찾을 수 없습니다" 메시지 표시 - 전문가(회의 참석자)에게 설명 요청 버튼 제공 - 수동 입력된 설명은 용어 사전에 자동 저장 [비고] - **차별화 포인트**: 단순 용어 설명이 아닌, 조직 내 실제 사용 맥락과 이력을 제공 - 업무 지식이 없어도 실질적인 도움을 받을 수 있음 - S/21 --- 6. Meeting 서비스 (실시간 협업 - Meeting Service에 통합됨) 1) 실시간 협업 UFR-COLLAB-010: [회의록수정동기화] 회의 참석자로서 | 나는, 회의록을 함께 검증하기 위해 | 회의록을 수정하고 실시간으로 다른 참석자와 동기화하고 싶다. - 시나리오: 회의록 실시간 수정 및 동기화 회의록 초안이 작성된 상황에서 | 참석자가 회의록 내용을 수정하면 | 수정 사항이 버전 관리되고 웹소켓을 통해 모든 참석자에게 즉시 동기화된다. **변경사항 (논리 아키텍처)**: - Meeting Service에 실시간 협업 기능 통합 - WebSocket, 버전 관리, 충돌 해결이 Meeting Service 내부에서 처리됨 - 서비스 간 통신 오버헤드 제거, 성능 향상 [회의록 수정 처리] - 수정 내용 검증 - 수정 권한 확인 - 수정 범위 제한 (잠긴 섹션은 수정 불가) - 수정 이력 저장 - 수정자 - 수정 시간 - 수정 전/후 내용 - 수정 위치 - 버전 관리 - 새 버전 번호 생성 - 이전 버전 보관 [실시간 동기화] - 웹소켓을 통해 수정 델타 전송 - 전체 내용이 아닌 변경 부분만 전송 (효율성) - 모든 참석자 화면에 실시간 반영 - 수정자 표시 (이름) - 수정 영역 하이라이트 (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. Meeting 서비스 (Todo 관리 - Meeting Service에 통합됨, 차별화 포인트) 1) 실시간 Todo 연결 (강화) UFR-TODO-010: [Todo할당] Todo 시스템으로서 | 나는, AI가 추출한 Todo를 담당자에게 전달하기 위해 | Todo를 실시간으로 할당하고 회의록과 연결하고 싶다. - 시나리오: Todo 실시간 할당 및 회의록 연결 AI가 Todo를 추출한 상황에서 | 시스템이 Todo를 등록하고 담당자를 지정하면 | Todo가 실시간으로 할당되고 회의록의 해당 위치와 연결되며 담당자에게 즉시 알림이 발송된다. **변경사항 (논리 아키텍처)**: - Meeting Service에 Todo 관리 기능 통합 - Todo와 회의록이 동일 트랜잭션 내에서 처리 가능 - 회의록-Todo 양방향 연결이 내부 메서드 호출로 처리됨 (10배 빠름) [Todo 등록] - Todo 정보 저장 - Todo ID 생성 - Todo 내용 - 담당자 (AI 자동 식별 또는 수동 지정) - 마감일 (언급된 경우 자동 설정, 없으면 수동 설정) - 우선순위 (높음/보통/낮음) - 관련 회의록 링크 (섹션 위치 포함) [회의록 실시간 연결] - 회의록 해당 섹션에 Todo 뱃지 표시 - Todo 클릭 시 Todo 상세 정보 표시 - 양방향 연결 (Todo → 회의록, 회의록 → Todo) [알림 발송] - 담당자에게 즉시 알림 - 이메일 - 알림 내용 - Todo 내용 - 마감일 - 회의록 링크 (해당 섹션으로 바로 이동) [캘린더 연동] - 마감일이 있는 경우 캘린더에 자동 등록 - 마감일 3일 전 리마인더 일정 생성 [처리 결과] - Todo가 할당됨 (Todo ID) - 담당자 정보 - 마감일 - 할당 시간 - 회의록 연결 정보 (섹션 ID, 타임스탬프) - 담당자에게 알림이 발송됨 - 캘린더 등록 완료 [Policy/Rule] - Todo 할당 시 담당자에게 즉시 알림 발송 - 회의록과 실시간 양방향 연결 [비고] - **차별화 포인트**: Todo와 회의록의 강력한 연결, 원문 맥락 추적 가능 - M/13 --- UFR-TODO-030: [Todo완료처리] Todo 담당자로서 | 나는, 완료된 Todo를 처리하고 회의록에 반영하기 위해 | Todo를 완료하고 회의록에 자동 반영하고 싶다. - 시나리오: Todo 완료 처리 및 회의록 자동 반영 Todo 작업이 완료된 상황에서 | 담당자가 완료 버튼을 클릭하면 | Todo가 완료 상태로 변경되고 연결된 회의록에 완료 상태가 실시간으로 반영된다. [완료 처리] - 완료 시간 자동 기록 - 완료자 정보 저장 - 완료 상태로 변경 - 완료 여부 확인 다이얼로그 표시 [회의록 실시간 반영] - 관련 회의록의 Todo 섹션 자동 업데이트 - 완료 표시 (체크 아이콘) - 완료 시간 기록 - 완료자 정보 표시 [알림 발송] - 완료 알림 - 모든 Todo 완료 시 전체 완료 알림 [처리 결과] - Todo가 완료됨 - 완료 시간 - 완료자 정보 - 회의록에 완료 상태가 반영됨 - 반영 시간 - 회의록 버전 업데이트 [Policy/Rule] - Todo 완료 시 회의록에 완료 상태 즉시 반영 - 모든 Todo 완료 시 완료 알림 [비고] - **차별화 포인트**: Todo 완료가 회의록에 실시간 반영되어 회의 결과 추적 용이 - M/8 --- ## 논리 아키텍처 반영 사항 요약 ### 1. 마이크로서비스 구성 변경 (v2.0) **변경 전 (v1.0)**: 8개 마이크로서비스 - User, Meeting, STT, AI, RAG, Collaboration, Todo, Notification **변경 후 (v2.0)**: 5개 마이크로서비스 - User, Meeting, STT, AI, Notification ### 2. 주요 변경사항 #### 2.1 User Service 역할 변경 - **변경 전**: 사용자 인증 및 권한 관리, 대시보드 정보 제공 - **변경 후**: 사용자 인증 전용 (LDAP 연동, JWT 토큰 발급/검증) - **이유**: - 프론트엔드가 모든 API 요청에 사용자 정보(userId, userName, email) 포함 - User Service 동기 호출 제거 → 성능 향상, 장애 격리 - 네트워크 지연 제거 (~100ms 개선) #### 2.2 Meeting Service 통합 - **통합 서비스**: Meeting + Collaboration + Todo - **핵심 기능**: - 회의 관리: 회의 예약, 시작, 종료 - 회의록 관리: 회의록 생성, 수정, 확정, 공유 - Todo 관리: Todo 할당, 진행 상황 추적, 회의록 양방향 연결 - 실시간 협업: WebSocket 기반 실시간 동기화, 버전 관리, 충돌 해결 - **이점**: - 서비스 간 통신 오버헤드 제거 - Todo와 회의록이 동일 트랜잭션 내에서 처리 가능 - 일관성 향상, 개발 효율성 증가 - 내부 메서드 호출로 처리 속도 10배 향상 #### 2.3 AI Service 통합 - **통합 서비스**: AI + RAG - **핵심 기능**: - LLM 기반 회의록 자동 작성 - Todo 자동 추출 및 담당자 식별 - 프롬프팅 기반 회의록 개선 - 관련 회의록 자동 연결 (벡터 유사도 검색) - 전문용어 자동 감지 및 맥락 기반 설명 생성 (RAG) - 과거 회의록 및 사내 문서 검색 - **이점**: - RAG와 AI 모두 LLM 기반 처리로 긴밀하게 연동 - 동일한 벡터 임베딩 모델 및 LLM 공유 가능 - 회의록 자동 작성 시 용어 설명이 병렬 처리되어 효율적 - 서비스 개수 감소로 운영 복잡도 감소 ### 3. 유저스토리 영향도 #### 3.1 변경 없음 - STT 서비스 유저스토리: UFR-STT-010, UFR-STT-020 - Notification 서비스 유저스토리: 알림 발송 관련 #### 3.2 서비스 통합에 따른 변경 - **Collaboration → Meeting**: UFR-COLLAB-010, UFR-COLLAB-020, UFR-COLLAB-030 - **Todo → Meeting**: UFR-TODO-010, UFR-TODO-030 - **RAG → AI**: UFR-RAG-010, UFR-RAG-020 #### 3.3 기능적 변경 - **AFR-USER-020 (대시보드)**: - 프론트엔드가 Meeting Service에 직접 API 요청 - User Service는 인증만 담당 ### 4. 성능 개선 효과 | 항목 | 개선 전 | 개선 후 | 효과 | |------|---------|---------|------| | User Service 동기 호출 | ~100ms | 제거 | 네트워크 지연 제거 | | Todo 처리 | 서비스 간 통신 | 내부 메서드 호출 | 10배 빠름 | | 실시간 동기화 | 서비스 간 REST API | Meeting 내부 처리 | 지연 감소 | | 서비스 개수 | 8개 | 5개 | 운영 복잡도 감소 | ### 5. 차별화 전략 유지 논리 아키텍처 변경에도 불구하고 차별화 포인트는 그대로 유지됩니다: - ✅ **맥락 기반 용어 설명**: AI Service에서 RAG 기능 통합 제공 - ✅ **강화된 Todo 연결**: Meeting Service에서 더 강력한 통합 제공 - ✅ **프롬프팅 기반 회의록 개선**: AI Service에서 계속 제공 - ✅ **지능형 회의 진행 지원**: AI Service에서 계속 제공 --- ## 문서 이력 | 버전 | 작성일 | 작성자 | 변경 내용 | |------|--------|--------|----------| | 1.0 | 2025-01-20 | 도그냥 (서비스 기획자) | 초안 작성 (8개 마이크로서비스) | | 2.0 | 2025-01-22 | 길동 (아키텍트) | 논리 아키텍처 반영 (5개 마이크로서비스로 단순화) | ---