[최종 프로젝트 - React with typescript] 2차 기획 회의(디자이너, 개발)

Habin Lee·2024년 1월 8일
1

2차 기획 회의(feat. 하루종일..)

디자이너 미팅

  • 초안 이후 디자인 수정 - 추가 페이지 및 UX를 개선하기 위한 UI 수정
  • 이 웹 앱을 만드는 목적성 상기

1. 공구 기능(페이지 삭제)

  • 미대생들 의견으로는 공구 기능이 배송비 절감효과가 크고 특히 학과 내에서 소통을 하는 경우가 많으므로 공구 페이지까지 작성하는 것은 과하다는 의견이 많았다. → 필요한 사람들끼리 커뮤니티에 적는 것이 좋겠다.
  • 공구 기능을 없애더라도 차별성이 없어지지는 않을 것 같다.

2. 커뮤니티 기능(추가 기능이 아닌 필수 기능)

  • 공구 기능 페이지를 없애면서 커뮤니티 같은 자유롭게 같은 목적을 가지고 글을 쓸 공간이 필요하기 때문에 추가 기능이 아닌 필수 기능으로 넣게 되었다.
  • 다만 공구 기능만을 위한 페이지는 아니며, 같은 학교 학생들이 아닌 다른 학교 학생들은 어떻게 생활하는지 교류의 장이 될 수 있으면 좋겠다고 생각하여 이 부분도 고려하여 추가하게 되었다.
  • 학교생활 혹은 일상 생활에서 필요한 꿀팁을 서로 공유해도 괜찮을 것 같다.

3. 이번 프로젝트의 목적성

  • 미대생 커뮤티니는 있지만 재료 중고거래 플랫폼은 여전히 없다. → 어떤 재료인지(톱, 드릴 등)에 따라서 중고나라, 번개장터에 종종 있으나 도구 말고 한정된 전공 관련 재료(석고, 금속 등)는 오프라인에서도 찾기가 힘들다.
  • 일반인?은 잘 모르는 유니크한 미술 용품이라 중고나라에서는 살 사람이 있을까? 하며 올리지 않는 미대생들이 많다고 한다. (거래할 일이 없을 거라 생각하여 기본 중고나라에 판매하려는 시도조차 하기 어려워 버려지는 재료가 많다고 한다.)
  • 앱 자체의 사용자는 미대생 한정으로 조금 좁지만, 그만큼 타겟이 확실하여 니즈가 있다고 생각이 된다!
  • 차별성과 가능성이 조금이라도 있다면 해봐도 좋을 것 같다!
  • 에브리타임같은 학교간의 교류나 단톡이 잘 되어있는데 우리 앱이 꼭 필요할까 생각한다면.. 공구 관련해서는 단톡이 더 편하겠지만 중고는 다를 수 있다.

4. 소비자가 우리 서비스를 이용할 가치가 있는가?

  • 좁은 타겟층이기 때문에 오히려 사용할 가능성이 충분히 있다고 생각한다.
  • 해당 학교 학생 외에 교류할 수 있다는 것이 강점이다.
  • 커뮤니티 기능만 가져간다면 차별성이 약해질 것 같고, 중고 거래가 유입의 포인트가 될 것.

결론

  • 당근마켓 같은 순서로 기능을 조금씩 늘려가며 개발하는 것이 적합하겠다.
  • 공구 페이지는 삭제하고, 커뮤니티 페이지는 필수로 전환.
  • 커뮤니티 기능에 대한 디테일한 회의가 필요.

개발자 회의

  • 오전에 디자이너 미팅으로 나온 의견을 토대로 개발자 회의 착수!

디자인 브리핑 중 나온 의견 + 회의 결과

  • 중고거래 작성 페이지에서 필터는 다중선택이 가능하도록 하여 사용자가 필요한 부분을 태그 필터로 관리하도록 만들기
  • 중고 게시물에 관한 룰을 언제 알려줄지 → 회원가입 시 약관 동의를 해도 보지 않는 사람이 많아서 중고거래 서비스 페이지 방문 시에도 보여질 수 있도록!
  • 로그인은 소셜 로그인으로만 가능하게 하고 인풋은 받지 않는다. (카카오, 구글, 페이스북, 애플)
    → 추후 블랙리스트의 재가입 시도를 막기 위해 본인 인증이 가능한 로그인만 구현
  • 중고 거래 게시물 작성에서 불순한 의도를 가진 행위는 제재를 가한다는 동의를 리마인드
    → 동의할 시에만 작성하기 버튼 활성화
  • 데이터들을 table별로 아주 잘 셋팅을 해놔야겠다. ⬇

DB 테이블 셋팅

  • 구현할 기능 페이지들을 나열하여 유저들을 관리하기 위한 데이터 세팅
  • 일단 가장 핵심적인 부분만 일단 첨부하지만, 나머지 페이지까지 다 적으면 정말 대량의 데이터를 다뤄야한다.
  • 서비스 하나에 필요한 데이터가 생각보다 많아서 놀랬다.
// 회원가입 테이블
{
  id:string (supabase 자동생성 됨! DB 내에서의 id),
  uid: string (우리가 붙여주는 user 고유 id)
  username: string ,
  nickname: string,
  address: string,
  created_At: string (supabase timestamptz 으로 생성),
  chat_rooms: {chatroom_id: string, participants: {user_id: string, username:string, userImage_url:string}[] }[], 
  likes: {post_id: string, post_user:string, post_content:string}[],
  (찜한 게시물의 정보를 저장하는 배열),
  board: {post_id: string, post_user:string, post_content:string}[]
  (작성한 커뮤니티 게시물 정보 담는 배열),
  comment: {post_id:string, comment: string}[]
  (내가 댓글남긴 게시물의 id와 comment),
}

// 중고 게시물 작성 테이블
{
  id:string (supabase 자동생성),
  post_user:  string (아마도 로그인 된 user의 uid..),
  nickname: string,    
  created_at: string (supabase 자동생성),
  title: string,
  contents: string,
  price: number,
  count: 0, 
  tags: string[], 
  location: string,
  dealType: string,
  like_user: {uid:string, }[],
  likes: number (초기값 0),
  quality: string,
  changable: boolean,
  shipping_cost: boolean,
  agreement: boolean,
}

느낀 점

  • 그렇게 큰 프로젝트도 아닌데 생각보다 회의가 길어져서 놀랐고, 긴 회의를 하고 나면 지치긴 하지만 그래도 방향성이 잡혀져가는게 눈에 보여서 좋았던 것 같다. 그리고 팀원들끼리 티키타카가 좋아서 적절한(조금 과할지도 모르는) 수다타임 덕분에 완전 퍼지지 않고 이어갈 수 있는 점도 정말 좋은 것 같다. 이번 프로젝트를 진행하면서 협업 시 소통의 중요성 및 기술 성장을 이뤄낼 수 있을 것 같아서 기대가 크다.

0개의 댓글