Skip to content

기획서

Sangyun Jeong edited this page Nov 13, 2023 · 2 revisions

1. 개요

  • 프로젝트 명: Village(빌리지)
  • 프로젝트 소개: 이웃과 함께하는 대여 서비스. 우리는 서로 물건을 빌리지!
  • 배경 : 일시적으로 필요한 물건을 구매하는 것이 부담스러운 경우 물건을 빌리는 것이 합리적이라고 판단된다. 전문 렌탈 서비스보다 바로 옆집에서 빌리고 값을 지불하는 것이 합리적이다. 개인간 물품 대여하는 플랫폼의 부재.
  • 예상 기간: 6주 (23.11.06 ~ 23.12.15)

2. 이용 대상

  • 잠시 필요한 물건을 빌려서 사용하고 싶은 사람.
  • 소유한 물건의 사용 주기가 매우 길어 빌려주고 대가를 지불받고 싶은 사람.

3. 목표

  • 스프린트 학습 내용 체화.
  • 실시간 통신기능 구현.
  • 브랜치 전략을 지키며 프로젝트를 관리하는 경험.
  • 다른 분야끼리 협업하여 프로젝트를 완성하는 경험.
  • 앱스토어에 배포 가능한 앱을 만드는 경험.

4. 요구사항

기능적 요구사항

  1. 회원 관리
    1. 사용자는 본인 인증을 통해서 회원가입이 가능해야 한다.
    2. 사용자는 소셜(카카오, 애플) 로그인이 가능해야 한다.
    3. 사용자는 로그아웃이 가능해야 한다.
    4. 사용자는 회원 탈퇴가 가능해야 한다.
  2. 게시판
    1. 공통 사항
      1. 사용자는 본인의 글을 편집할 수 있어야 한다.
      2. 사용자는 본인의 글을 삭제할 수 있어야 한다.
      3. 사용자는 글을 게시할 때 카테고리를 설정해야 한다.
      4. 사용자는 글을 게시할 때 제목을 설정해야 한다.
      5. 사용자는 글을 게시할 때 물품의 상세 설명을 작성해야 한다.
      6. 사용자는 특정 사용자를 차단할 수 있어야 한다.
      7. 사용자는 특정 게시물을 숨김처리를 할 수 있어야 한다.
    2. 물품 글 : 빌려줄 물품의 정보를 담은 글
      1. 사용자는 글을 게시할 때 물품의 사진을 첨부할 수 있어야 한다.
      2. 사용자는 글을 게시할 때 대여 가능 기간을 설정해야 한다.
    3. 요청 글 : 필요한 물품의 대여를 요청하는 글
      1. 사용자는 글을 게시할 때 대여할 기간을 설정해야 한다.
  3. 상세페이지 : 사용자는 물품의 상세페이지를 볼 수 있어야 한다.
    1. 사용자는 상세페이지에서 채팅을 보낼 수 있어야 한다.
  4. 게시글 검색 : 사용자는 원하는 물품을 검색할 수 있어야 한다.
    1. 사용자는 검색할 때 카테고리를 설정할 수 있어야 한다.
  5. 채팅
    1. 거래자 간 실시간 채팅이 가능해야 한다.
    2. 채팅에서 텍스트와 사진을 주고받을 수 있어야 한다.
    3. 사용자는 채팅을 삭제할 수 있어야 한다.
  6. 마이페이지
    1. 사용자는 회원 정보 수정이 가능해야 한다.
    2. 사용자는 자신이 작성한 글들을 조회할 수 있어야 한다.

비기능적 요구사항

  1. 애니메이션 요소들을 넣어 UI/UX 를 개선한다.
  2. 자동 배포가 가능하도록 인프라를 구성한다.

5. 아키텍처

iOS BE
Clean Architecture + MVVM-C MVC

6. 기술 스택

iOS BE
UIKit NestJS
Combine MySQL
Docker
NCloud

7. 도구

공통 iOS BE
Github Project Swift Package Manager EsLint
SwiftLint GitHub Action
Clone this wiki locally