서비스 목표: 인플루언서와 광고주를 연결하고, 플랫폼별 데이터를 기반으로 성과 분석 및 인사이트 제공
주요 사용자:
- 인플루언서: 유튜브, 인스타그램, 네이버 블로그 등 외부 계정 데이터를 연결해 자신의 성과와 트렌드를 확인
- 광고주: 인플루언서를 검색·조회하고 협업 가능성 탐색
랜딩 페이지
- 서비스 소개, CTA 버튼
- 로그인/회원가입 진입
- 인플루언서 / 광고주 구분 배너
로그인/회원가입
-
인플루언서
- 소셜 로그인 (Google, Kakao 등 Provider 연동)
- 필수 정보 입력: 닉네임, 생년월일, 대표 이미지, 이메일, 자기소개
- 연결할 플랫폼 계정 선택 (YouTube, Instagram, Naver Blog 등)
-
광고주
- 자체 로그인 (아이디/비밀번호)
- 회사 정보 입력: 브랜드명, 회사명, 대표자, 사업자 등록번호, 개업일자, 회사 로고, 소개
종합 대시보드
- 인플루언서 기본 프로필
- 플랫폼별 통합 성과 (조회수, 구독자, 콘텐츠 수)
- 최근 12개월 / 30일 기준 성과 추이
- 키워드 트렌드 TOP10 (Google Trends 기반)
- 연관 인플루언서/콘텐츠 추천
플랫폼별 대시보드
- 채널 프로필 (팔로워 수, 카테고리, URL)
- 일별 계정 인사이트 (조회수, 팔로워, 콘텐츠 수)
- 댓글 감성 분석 (긍정/부정 비율)
- 오늘의 인기도 지표 (조회수 기반)
콘텐츠별 대시보드
- 콘텐츠 상세 (제목, 설명, 태그, 발행일, 조회수, 좋아요, 댓글 수)
- AI 기반 분석 (요약, 키워드 추출, 댓글 긍·부정 Top3)
- 유사 콘텐츠 비교 (Top3)
- 랭킹 정보 (내 인기 콘텐츠 Top10, 전체 급상승/인기 콘텐츠 Top10)
인플루언서 검색
- 카테고리/플랫폼별 검색 필터
- 조회수·팔로워·트렌드 기반 정렬
- 상세 프로필 페이지 (성과 지표 + 호감도 점수)
광고주–인플루언서 채팅
- 1:1 실시간 채팅
- 읽음 여부 표시 (Last Seen)
- 알림 기능 (신규 메시지 수신 시 팝업/뱃지)
데이터 수집
- 플랫폼 API/크롤러를 통해 계정·콘텐츠·댓글 데이터 수집
- S3, Spark 기반 일별 통계 처리 (조회수/좋아요/댓글)
AI 분석
- 댓글 감성 분석 (긍정/부정 스코어링)
- 콘텐츠 요약 및 키워드 추출
ERD 주요 엔티티
- 광고주(advertiser): 회사 정보, 사업자 등록번호, 로그인 계정 관리
- 인플루언서(influencer): 프로필, 소셜 로그인, 연결 계정 관리
- 플랫폼 계정(platform_account): 유튜브/블로그/인스타 계정 정보 및 카테고리 연동
- 콘텐츠(content): 게시물/영상 메타 정보
인사이트 데이터
- daily_account_insight: 계정 단위 일별 성과
- daily_type_insight: 콘텐츠 유형별 일별 성과
- content_comment_insight: 댓글 기반 분석 (감성 점수/요약/키워드)
트렌드/랭킹
- daily_keyword_trend
- daily_trending_influencer, daily_popular_influencer
- daily_trending_content, daily_popular_content, daily_my_popular_content
커뮤니케이션
- chat_room: 광고주–인플루언서 간 채팅방
✅ 완료
- 기능 요구사항 정의
- 페이지별 기능 명세서 작성
- ERD 및 데이터베이스 스키마 설계 (DDL 작성 완료)
- API 명세서 작성 (Auth, User, Insight, Contact 전 범위)
- 간략한 피그마 와이어프레임 작성
- 백엔드 (Spring Boot) 구현
- OAuth 소셜 로그인(Google) 연동 구현
- 프론트엔드 초기 세팅 (React + Vite)
- API 연동 (회원가입/로그인, 사용자 API, 검색API) 구현
- S3 및 Sprak 구현
- 배포(백엔드) 완료
- 데이터 수집 파이프라인 구현 (외부 플랫폼 API 크롤링/ETL)
- 메인 대시보드 화면 구현
- DM 연동
- Spark 문서화
- dev-be, dev-fe 통합
- 플랫폼별, 콘텐츠별 대시보드 화면 구현
- 대시보드 데이터 조회
- AI 분석 모듈 연동 (댓글 감성 분석, 요약)
- 통합 테스트 및 배포
에픽(Epic) → 작업(Task) → 하위 작업(Sub-Task) 구조
- 작업(Task) 단위별로 feature branch 생성
- Sub-Task는 해당 branch에서 커밋 단위로 관리
- 만약 작업을 완료하지 못했는데 커밋을 해야하는 경우 커밋 이름 뒤에 -1, -2 를 붙여서 커밋
feat(S13P21A302-124): 로그인 UI 컴포넌트 구현-1
feat(S13P21A302-124): 로그인 UI 컴포넌트 구현-2- 하위 작업(Sub-Task)는 별도 브랜치 생성 없이 Task feature branch에서 커밋 단위로 관리
- 모든 Sub-Task 완료 시 feature branch를
dev-fe또는dev-be에 merge - 브랜치 생성 방법:
- 1안: Jira에서 GitLab 직접 브랜치 생성 → 로컬에서 fetch & switch
- 2안: 브랜치명 복사 → 로컬에서 생성 후 원격 연결
- 3안: Task 상태를 "진행 중"으로 변경 시 자동 생성 ([BE]/[FE] 태그 필요)
- 1시간 = 1포인트
- Sub-Task 기준으로만 할당
- 에픽(Epic)에는 스토리 포인트 비우기 (자동 합산 불가)
- 자동 합산 규칙으로 상위 Task에 반영 → 수동 입력 불필요
- 접두사: [BE], [INFRA], [FE], [AI]
- 이슈 제목: 기능/문제 명확히 기술
- 내용: 설명, 참고 사항, 완료 조건으로 구분
- 작업 목적, 필요성, 기능/변경 사항 명확히 작성
- 문서, 링크, 디자인 시안 첨부
- 예: Figma 디자인 링크, API 명세서
- 기능 정상 동작
- 관련 문서/위키 업데이트 완료
- 작업(Task) 단위 feature branch 생성
- 하위 작업(Sub-Task)는 별도 브랜치 생성 없이 Task 브랜치에서 커밋 단위로 관리
- 완료 후 dev-fe / dev-be로 merge
- 브랜치 생성 방법:
- 1안: Jira에서 GitLab 직접 브랜치 생성 → 로컬에서 fetch & switch
- 2안: 브랜치명 복사 → 로컬에서 생성 후 원격 연결
- 3안: Task 상태를 "진행 중"으로 변경 시 자동 생성 ([BE]/[FE] 태그 필요)
- Sub-Task 스토리 포인트 합산 → 상위 Task 반영
- 불필요한 수동 포인트 입력 방지
- Jira 자동화 규칙 관리
- [INFRA]: 서버 세팅 (EC2, Caddy), DevOps (Jenkins, Docker), S3 세팅
- [BE]: 사용자 회원가입/로그인, 프로필 관리, 대시보드, 검색, 채팅, 데이터 수집, 스파크 통계
- [FE]: 사용자 회원가입/로그인, 프로필 관리, 종합 대시보드, 플랫폼 대시보드, 콘텐츠 대시보드, 인기 인플루언서, 검색, 채팅
- [AI]: 댓글 분석, 콘텐츠 요약
-
에픽 → 작업(Task) → 하위 작업(Sub-Task) 단위로 관리
-
주요 구조 0. 기획 및 설계: 아이디어 회의, 와이어프레임, ERD, API 명세서, WBS 작성
- [INFRA] 서버 세팅: 프로젝트 설정, EC2/Nginx
- [BE] 사용자 관리: 회원가입, 로그인, 프로필 관리, 플랫폼 계정 연동
- [BE] 대시보드: 종합/플랫폼별/콘텐츠별
- [BE] 인플루언서 검색 & 채팅
- [AI] 데이터 분석
- [DATA] 수집 및 통계
-
단위: 1 Story Point = 1시간
-
진척율: 작업(Task) 단위 반영, 상위 Task/에픽 자동 합산
- 흐름
- 외부 데이터 소스 크롤링
- S3에 Bronze 레이어로 raw data 저장
- Apache Spark를 통해 Silver 레이어로 데이터 정제(이 과정에서 각 게시글에 대한 댓글들에 ai 분석을 할 예정)
- 다시 Spark로 Gold 레이어에서 비즈니스 로직 적용하여 통계 결과 얻음
- RDB에 저장해 서비스 서버에서 데이터 제공공

