스파르타코딩클럽/내일배움캠프

[내일배움캠프 AI] A5팀 - 음악 추천시스템 프로젝트 S.A

이모냥냥 2022. 11. 3. 00:26
반응형

🎵 Na-dle(나랑 들을래?)🎵

프로젝트소개

사용자의 취향을 반영하여 취향에 맞는 음악을 추천해주고, 취향이 비슷한 다른 사용자의 플레이리스트를 보여주는 추천시스템

 

와이어프레임

 

기능명세서

기능명세서

구분 기능 세부기능 내용
회원관리 로그인 아이디  
    비밀번호  
  회원가입 아이디  
    비밀번호  
    이름  
  프로필 편집 프로필이미지  
    이름  
    아이디  
    이메일  
    내 리뷰 목록  
회원가입 후 첫 로그인 선호도 조사 음원목록 랜덤하게 음원에서 20개 목록 출력
    평점 체크 들은 음악이면 선호도 평점(5점) 체크
메인화면 추천 노래 추천 음원 목록 추천시스템 결과에 따른 음원 목록 출력
    총평점 해당 음원의 총 평균 평점 출력
  비슷한 취향 유저 비슷한 취향 조회 추천시스템 결과로 비슷한 취향(similarity가 높은)을 가진 유저 5명 목록 출력
    follow  
음원상세페이지 음원정보 음원정보 음원이미지, 음원제목, 아티스트, 앨범 출력
  평점 총평점 해당 음원의 총 평균 평점 출력
    평점 체크 선호도 평점(5점) 체크
  리뷰정보 리뷰 목록 해당 음원 전체 리뷰 목록 조회
    리뷰 작성  
비슷한 취향 User 유저프로필정보    
  리뷰리스트    
  follow    

 

DB설계

 

API설계

구분 NAME method URL request response

           
구분 NAME method URL request response
회원가입 회원가입HTML GET /users/signup/   회원가입 html
  회원가입 POST /users/signup/ { ”fullname”:fullname,
”username”:username,
”password”:password, }
redirect(”users/signin/”)
로그인 로그인HTML GET /users/signin/   로그인 html
  로그인 POST /users/signin/ {”username”:username,
“password”:password}
redirect(”/”)
로그아웃 로그아웃 POST /users/signout/   redirect(”/”)
프로필페이지 프로필조회 GET /users/profile/   User Object
  프로필수정 POST /users/profile/ {”username”:username,
“password”:password,
”profile_image”:profile_image,
”email”:email,
”fullname”:fullname,}
 
음원 음원목록 GET /musics/   music Object
  음원생성 POST /musics/ {”title”:title,
”image”:image,
”artist”:artist,
”album”:album}
 
  음원상세조회 / 리뷰목록 GET /musics/<music_id>   music Object,
Review Object
  음원수정 PUT /musics/<music_id>    
  음원삭제 DELETE /musics/<music_id>    
리뷰 유저리뷰목록 GET /reviews/<user_id>   Review Object
  리뷰생성 POST /musics/<music_id>/reviews/ {”content”:content,
”grade”:grade}
 
  리뷰수정 PUT /musics/reviews/<review_id>/ {”content”:content,
”grade”:grade}
Review Object
  리뷰삭제 DELETE /musics/reviews/<review_id>/    

역할분담

  • 박수인 : 평점, 리뷰
  • 이동영 : 유저기능
  • 이현지 : 추천시스템
  • 정현주 : 평점, 리뷰
  • 최해민 : 추천시스템
반응형