프로젝트명
Flaschenbook - 도서 판매 사이트 API 기반 도서 추천 웹 사이트 구축 프로젝트
배경 / 목적
현재 도서 시장은 다양한 분야의 수많은 책이 출간되며 매우 경쟁적입니다. 독자들은 자신의 취향과 필요에 맞는 책을 찾는 데 많은 시간을 소비하게 되는데, 특히 인터넷에서 책을 구매하려는 경우 선택의 폭은 더욱 넓어집니다.
이러한 환경에서 독자들에게 가장 적합한 책을 추천해주는 서비스는 독자들이 책을 선택하는 데 큰 도움이 될 것입니다. 또한 독자들의 선호와 행동 패턴을 분석하여 개인화된 도서 추천을 제공하면 독자들의 만족도를 높이고, 도서 판매 사이트의 매출을 증가시킬 수 있을 것입니다.
이 프로젝트의 목적은 도서 판매 사이트의 API를 활용하여 독자들의 취향과 행동 패턴을 분석하고, 이를 기반으로 독자에게 가장 적합한 책을 추천하는 웹 사이트를 개발하는 것입니다. 이를 통해 독자들이 책을 선택하는 데 필요한 시간과 노력을 줄이고, 도서 판매 사이트의 사용자 경험을 향상시키는 것을 목표로 합니다.
기능 요구사항(Functional Requirements)
- 도서 데이터 수집: 도서 판매 사이트의 API를 통해 도서 데이터를 정기적으로 수집해야 한다.
- 사용자 행동 로깅: 사용자의 도서 검색, 클릭, 구매 등의 행동을 로그로 남겨야 한다. 이 로그 정보는 추후 사용자의 선호도 파악 및 도서 추천에 활용된다.
- 도서 추천 알고리즘 구현: 수집된 도서 데이터와 사용자 행동 로그를 기반으로 하는 도서 추천 알고리즘을 구현해야 한다. 추천 알고리즘은 사용자의 개인적 취향을 반영해야 하며, 다양한 기준(예: 최근 도서, 카테고리별 도서 등)에 따른 추천도 제공해야 한다.
- 사용자 인터페이스 제공: 사용자가 웹 사이트를 통해 도서를 검색하고, 추천 받은 도서를 확인하고, 선택한 도서의 상세 정보를 볼 수 있는 사용자 인터페이스를 제공해야 한다.
- 사용자 피드백 수집: 사용자가 추천받은 도서에 대한 피드백을 제공할 수 있는 기능을 구현한다. 이는 추후 추천 알고리즘의 개선과 사용자 경험 향상에 사용된다.
- 사용자 계정 관리: 사용자의 로그인, 로그아웃, 계정 생성, 정보 수정 등의 기본적인 계정 관리 기능을 제공해야 한다.
- 모니터링 : 데이터 파이프라인의 성능을 모니터링할 수 있는 도구가 제공되어야 한다.
비기능 요구사항(Non-functional Requirements)
- 성능: 추천 시스템은 사용자의 쿼리에 대해 1초 내에 응답해야 한다. 데이터 수집 및 처리는 지연 없이 신속하게 이루어져야 한다.