본문 바로가기

사이드 프로젝트/Anytime Nyang

[Spring project] Anytime Nayng 요구사항 정의서

1. 프로젝트 개요

  • 프로젝트 명: 고양이 사진 자랑 커뮤니티 앱
  • 개발 목적: 고양이 사진을 자랑하고, 고양이 팬들이 모여 서로 소통할 수 있는 간단한 커뮤니티를 구축하기 위해.
  • 주요 기능: 회원가입 및 로그인, 회원정보 관리, 게시글 관리, 댓글 작성, 좋아요 기능, 태그 검색.

2. 시스템 구조

  • 클라이언트: 사용자가 앱에서 사진을 업로드하고, 게시글을 관리하며, 다른 사용자와 소통하는 인터페이스.
  • 서버: 사용자 인증, 게시글 및 댓글 관리, 데이터 저장, 검색 기능을 지원.
  • 데이터베이스: 사용자, 게시글, 댓글, 태그 및 좋아요 데이터를 저장하고 관리.

3. 요구사항 정의

3.1 회원 기능

요구사항 ID요구사항 명설명

USER-01 회원가입 사용자는 이메일, 비밀번호, 닉네임을 입력하여 회원가입을 할 수 있다.
USER-02 로그인 사용자는 이메일과 비밀번호를 입력하여 로그인할 수 있다.
USER-03 비밀번호 재설정 사용자가 비밀번호를 분실했을 때, 이메일을 통해 재설정할 수 있다.
USER-04 프로필 관리 사용자는 자신의 닉네임, 프로필 사진, 고양이 정보를 수정할 수 있다.
USER-05 비밀번호 변경 사용자는 현재 비밀번호를 확인 후, 새 비밀번호로 변경할 수 있다.
USER-06 회원 탈퇴 사용자는 계정을 삭제할 수 있으며, 계정 삭제 시 게시글과 댓글을 함께 삭제할지 선택할 수 있다.

3.2 게시글 기능

요구사항 ID요구사항 명설명

POST-01 게시글 작성 사용자는 고양이 사진과 함께 설명을 입력하여 게시글을 작성할 수 있다. 게시글에는 최대 5개의 태그를 추가할 수 있다.
POST-02 게시글 수정 사용자는 본인이 작성한 게시글의 사진과 설명을 수정할 수 있다.
POST-03 게시글 삭제 사용자는 본인이 작성한 게시글을 삭제할 수 있다.

3.3 댓글 기능

요구사항 ID요구사항 명설명

COMMENT-01 댓글 작성 사용자는 게시글에 댓글을 작성할 수 있다.
COMMENT-02 댓글 수정 사용자는 본인이 작성한 댓글을 수정할 수 있다.
COMMENT-03 댓글 삭제 사용자는 본인이 작성한 댓글을 삭제할 수 있다.

3.4 좋아요 기능

요구사항 ID요구사항 명설명

LIKE-01 좋아요 추가 및 취소 사용자는 게시글에 좋아요를 추가하거나 취소할 수 있다.
LIKE-02 좋아요 수 표시 각 게시글에 좋아요 수가 표시된다.

3.5 검색 기능

요구사항 ID요구사항 명설명

SEARCH-01 태그 검색 사용자는 특정 태그를 검색하여 해당 태그가 포함된 게시글 목록을 조회할 수 있다.

 


4. 비기능 요구사항

4.1 보안

  • 비밀번호 암호화: 사용자의 비밀번호는 암호화하여 저장한다.
  • 세션 관리: 사용자 로그인 시 세션 또는 토큰 기반 인증을 통해 사용자 정보를 보호한다.

4.2 성능

  • 게시글 및 태그 검색 최적화: 태그 검색 시 데이터베이스 인덱싱을 활용하여 빠른 검색 속도를 제공한다.

4.3 사용자 경험

  • 반응형 디자인: 모바일과 데스크톱 환경 모두에 최적화된 UI 제공.
  • 알림 기능 (선택사항): 댓글, 좋아요 발생 시 사용자에게 앱 내 알림을 통해 알려준다.

5. 데이터 구조 (예시)

  • User: 사용자 정보(이메일, 비밀번호, 닉네임, 프로필 사진 등)
  • Post: 게시글 정보(작성자, 사진, 설명, 태그, 좋아요 수 등)
  • Comment: 댓글 정보(게시글 ID, 작성자, 댓글 내용)
  • Like: 좋아요 정보(게시글 ID, 사용자 ID)
  • Tag: 태그 정보 및 게시글 연관성

6. 기대 효과

  • 간단한 커뮤니티 앱을 통해 고양이 팬들이 고양이 사진을 자랑하고 소통할 수 있는 플랫폼 제공.
  • 회원가입과 로그인, 게시글 관리 등 기본적인 웹 애플리케이션 개발에 대한 포트폴리오로 활용.

'사이드 프로젝트 > Anytime Nyang' 카테고리의 다른 글