Files
cloud-sharp-docs/설계/기능요구사항.md
2026-03-16 16:17:17 +09:00

11 KiB

FR ID 기능명 설명 입력 출력 예외 우선순위
FR-001 회원가입 비회원은 이메일 또는 아이디와 비밀번호를 이용해 계정을 생성할 수 있어야 한다. 시스템은 계정 정보를 저장하고 이후 로그인 가능 상태로 전환해야 한다. 이메일 또는 아이디, 비밀번호 회원가입 성공/실패 결과, 생성된 사용자 정보 이미 존재하는 계정, 비밀번호 정책 미충족, 필수값 누락 높음
FR-002 로그인 사용자는 등록된 계정 정보로 로그인할 수 있어야 하며, 로그인 성공 시 인증 상태를 획득해야 한다. 이메일 또는 아이디, 비밀번호 로그인 성공/실패 결과, 인증 세션 또는 토큰 계정 없음, 비밀번호 불일치, 비활성 계정 높음
FR-003 로그아웃 로그인한 사용자는 현재 인증 세션 또는 토큰을 종료할 수 있어야 한다. 인증 정보(세션/토큰) 로그아웃 성공/실패 결과 인증 정보 없음, 이미 만료된 세션/토큰 높음
FR-004 인증 세션 유지 로그인한 사용자는 재인증 없이 보호된 API를 사용할 수 있어야 하며, 시스템은 인증 상태를 유지해야 한다. 세션 쿠키 또는 JWT 토큰 인증된 사용자 컨텍스트, 보호 API 접근 허용 만료된 세션/토큰, 위조 또는 무효 토큰 높음
FR-005 기본 프로필 조회 로그인한 사용자는 자신의 기본 프로필 정보를 조회할 수 있어야 한다. 인증 정보 사용자 프로필 정보 인증 실패, 존재하지 않는 사용자 중간
FR-006 루트 폴더 자동 생성 시스템은 회원가입 완료 시 사용자 전용 루트 폴더를 자동으로 생성해야 한다. 사용자 식별 정보 루트 폴더 생성 결과 루트 폴더 생성 실패, 사용자 생성 실패 높음
FR-007 루트 폴더 조회 로그인한 사용자는 자신의 루트 폴더 및 최상위 파일/폴더 목록에 접근할 수 있어야 한다. 인증 정보 루트 폴더 정보, 하위 파일/폴더 목록 인증 실패, 루트 폴더 미존재 높음
FR-008 폴더 생성 사용자는 특정 부모 폴더 하위에 새 폴더를 생성할 수 있어야 한다. 부모 폴더 ID, 폴더명 생성된 폴더 정보 부모 폴더 없음, 권한 없음, 중복 이름 정책 위반 높음
FR-009 폴더명 변경 사용자는 기존 폴더의 이름을 변경할 수 있어야 한다. 실제 저장 경로가 아니라 메타데이터 기준으로 처리한다. 폴더 ID, 새 폴더명 변경된 폴더 정보 대상 폴더 없음, 권한 없음, 중복 이름 정책 위반 중간
FR-010 폴더 삭제 사용자는 폴더를 삭제할 수 있어야 한다. 비어 있지 않은 폴더의 삭제는 시스템 정책에 따라 처리한다. 폴더 ID 삭제 성공/실패 결과 대상 폴더 없음, 권한 없음, 하위 항목 존재, 루트 폴더 삭제 시도 중간
FR-011 파일 업로드 초기화 사용자는 업로드를 시작하기 위해 파일 메타데이터와 업로드 요청을 등록할 수 있어야 한다. 파일명, 크기, 타입, 대상 폴더 ID 업로드 세션 정보, 업로드 URL 권한 없음, quota 초과, 파일 크기 제한 초과, 대상 폴더 없음 높음
FR-012 파일 업로드 진행 및 재개 시스템은 대용량 파일 업로드 중 네트워크가 끊겨도 이어서 업로드할 수 있어야 한다. tus 업로드 세션, 청크 데이터 업로드 진행 상태, 재개 가능 상태 세션 만료, 손상된 청크, 잘못된 업로드 오프셋 높음
FR-013 업로드 완료 처리 파일 업로드가 완료되면 시스템은 메타데이터를 저장하고 파일 목록에 반영해야 한다. 업로드 완료 이벤트, 파일 식별 정보 저장된 파일 메타데이터, 목록 반영 결과 저장 실패, 메타데이터 반영 실패, 파일 무결성 오류 높음
FR-014 파일 다운로드 권한 있는 사용자는 저장된 파일을 다운로드할 수 있어야 한다. 파일 ID, 인증 정보 파일 스트림 또는 다운로드 응답 권한 없음, 대상 파일 없음, 삭제된 파일 높음
FR-015 파일명 변경 사용자는 파일명을 변경할 수 있어야 한다. 실제 저장 객체는 유지하고 메타데이터만 수정한다. 파일 ID, 새 파일명 변경된 파일 정보 대상 파일 없음, 권한 없음, 중복 이름 정책 위반 중간
FR-016 파일 이동 사용자는 파일을 다른 폴더로 이동할 수 있어야 한다. 실제 바이너리 파일은 이동하지 않고 메타데이터의 부모 폴더만 변경한다. 파일 ID, 대상 폴더 ID 이동된 파일 정보 대상 파일 없음, 대상 폴더 없음, 권한 없음, 동일 위치 이동 중간
FR-017 파일 삭제 사용자는 파일을 삭제할 수 있어야 하며, 삭제된 파일은 사용자 목록에서 제거되어야 한다. 파일 ID 삭제 성공/실패 결과 대상 파일 없음, 권한 없음, 이미 삭제된 파일 높음
FR-018 파일 목록 조회 사용자는 특정 폴더 내 파일 및 하위 폴더 목록을 조회할 수 있어야 한다. 폴더 ID, 인증 정보 파일/폴더 목록 대상 폴더 없음, 권한 없음 높음
FR-019 파일 목록 정렬 사용자는 파일 목록을 이름, 크기, 수정일 기준으로 정렬할 수 있어야 한다. 폴더 ID, 정렬 기준, 정렬 방향 정렬된 파일/폴더 목록 지원하지 않는 정렬 기준, 대상 폴더 없음 중간
FR-020 공유 링크 생성 사용자는 특정 파일에 대해 외부 공유용 다운로드 링크를 생성할 수 있어야 한다. 파일 ID, 선택 옵션(만료일/비밀번호) 공유 링크 URL, 링크 메타데이터 대상 파일 없음, 권한 없음 높음
FR-021 공유 링크 옵션 설정 사용자는 공유 링크에 대해 만료일, 비밀번호, 활성화 상태를 설정하거나 수정할 수 있어야 한다. 링크 ID, 만료일, 비밀번호, 활성화 여부 변경된 링크 정보 대상 링크 없음, 권한 없음, 잘못된 만료일 형식 중간
FR-022 공유 링크 비활성화 사용자는 기존 공유 링크를 비활성화하여 외부 접근을 차단할 수 있어야 한다. 링크 ID 비활성화 결과 대상 링크 없음, 권한 없음, 이미 비활성화된 링크 중간
FR-023 공유 링크 다운로드 외부 사용자는 유효한 공유 링크를 통해 파일을 다운로드할 수 있어야 한다. 공유 링크, 비밀번호(필요 시) 파일 다운로드 응답 링크 만료, 링크 비활성화, 비밀번호 불일치, 대상 파일 없음 높음
FR-024 이미지 미리보기 사용자는 지원되는 이미지 파일을 브라우저 내에서 바로 확인할 수 있어야 한다. 파일 ID 이미지 미리보기 데이터 또는 URL 지원하지 않는 형식, 대상 파일 없음, 권한 없음 중간
FR-025 텍스트 미리보기 사용자는 txt, md, json, log 등의 텍스트 파일 내용을 브라우저 내에서 확인할 수 있어야 한다. 파일 ID 텍스트 내용 지원하지 않는 형식, 인코딩 오류, 파일 크기 초과 중간
FR-026 PDF 미리보기 사용자는 PDF 파일을 브라우저 내장 뷰어를 통해 열람할 수 있어야 한다. 파일 ID PDF 미리보기 URL 또는 스트림 지원하지 않는 형식, 대상 파일 없음, 권한 없음 중간
FR-027 미지원 형식 처리 미리보기를 지원하지 않는 파일은 다운로드만 허용해야 한다. 파일 ID 다운로드 가능 상태 정보 대상 파일 없음, 권한 없음 낮음
FR-028 사용자 저장 용량 집계 시스템은 사용자별 총 파일 사용량을 계산하고 표시할 수 있어야 한다. 사용자 ID 또는 인증 정보 총 사용 용량, quota 대비 사용률 사용자 없음, 집계 실패 중간
FR-029 업로드 용량 제한 검사 시스템은 업로드 요청 시 파일 크기 제한과 사용자 quota 초과 여부를 검사해야 한다. 사용자 ID, 파일 크기 업로드 가능/불가 결과 quota 초과, 업로드 최대 크기 초과 높음
FR-030 기본 로그 기록 시스템은 업로드, 삭제, 공유 링크 생성 등 주요 이벤트를 로그로 기록해야 한다. 이벤트 정보, 사용자 정보, 대상 리소스 정보 로그 저장 결과 로그 저장 실패, 이벤트 정보 누락 중간