-
Notifications
You must be signed in to change notification settings - Fork 1
1 아키텍처_데이터 흐름도
Jina Ham edited this page Feb 18, 2026
·
2 revisions
이 다이어그램은 ForDay 서비스의 주요 기능 흐름을 보여주는 Level-1 DFD이다.
사용자의 계정 생성부터 활동 기록, 그리고 다른 사용자와의 상호작용까지 전체 기능 구조를 표현한다.
- 사용자 로그인 →
User저장소 - 온보딩에서 취미 입력 →
Hobby저장소 생성
- 취미 데이터를 기반으로 AI 활동 추천 요청
- OpenAI가 추천 목록 반환
- 추천 활동을 선택하여
Activity저장
- 사용자가 활동 수행
- 활동 기록 생성 →
Activity Record저장
- 다른 사용자가 활동 기록 조회
- 활동 기록에 반응(Reaction) →
Activity Record Reaction - 활동 기록 스크랩 →
Activity Record Scrap
사용자가 취미 기반으로 AI 활동 추천을 요청할 때, 호출 제한 확인 → 데이터 조회 → AI 호출 → 결과 저장/반환까지의 내부 처리 흐름을 표현한다.
1️⃣ 호출 가능 여부 확인
- userSocialId + hobbyId로 AI 호출 횟수 확인
- 남은 횟수가 없으면 기존 추천 목록 반환
2️⃣ 추천 요청 준비
- Hobby 정보 조회
- 해당 정보로 AI 프롬프트 생성
3️⃣ AI 추천 요청
- OpenAI에 활동 추천 요청
- 추천 활동 목록 반환
4️⃣ 결과 처리
- 추천 결과를
ActivityRecommendItem저장소에 저장 - 사용자에게 추천 목록 반환
사용자가 활동 기록을 생성할 때, 오늘 이미 기록했는지 확인한 후 기록 가능 여부를 판단하고 저장하는 내부 처리 흐름을 표현한다.
1️⃣ 기록 생성 요청
- 사용자가 활동 기록 생성 요청
2️⃣ 오늘 기록 여부 확인
- userId + hobbyId로 Redis에서 오늘 기록 존재 여부 조회
3️⃣ 분기 처리
- 오늘 기록 있음 → 활동 기록 거부
- 오늘 기록 없음 → 기록 가능 처리
4️⃣ 기록 생성
- 오늘 기록 여부를 Redis에 저장
- 요청 데이터를 기반으로
Activity Record저장소에 기록 생성
사용자의 최근 활동 기록을 기반으로 AI가 주간 요약을 생성하고, 이미 생성된 요약이 있으면 재사용하는 흐름을 나타낸다.
1️⃣ 주간 요약 요청
- 사용자가 주간 요약 정보 요청
2️⃣ 기존 요약 존재 여부 확인
- Redis(UserSummaryAIService)에 저장된 요약 확인
- 있으면 → 바로 반환
- 없으면 → 활동 기록 조회 진행
3️⃣ 활동 데이터 수집
- 최근 7일 이내 Activity Record 조회
4️⃣ AI 요약 생성
- 활동 데이터를 기반으로 프롬프트 생성
- OpenAI 요청 → 요약 결과 반환
5️⃣ 결과 저장 및 반환
- 생성된 요약을 Redis에 저장(캐싱)
- 사용자에게 요약 결과 전달
Active Development
Helping users stick to their hobbies with AI recommendations and sticker rewards.
GitHub: https://github.com/HamJina Email: hamjina61@gmail.com
All rights reserved.
Last Updated: 2026-02