0410 | 5주차도 끝 (D-123)

Hyeryung Choi·2026년 4월 10일

PM 부트캠프

목록 보기
23/29
post-thumbnail

Day 25 (5주차)

시간학습내용소요시간메모
아침아티클 카타
점심 전3강 숙제
Arvo3강 숙제
과제 구두 피드백15분허들로 진행
+ 피드백 후기 with 열정즈사담이 길어져 시간이 지체됨...약 1시간 30분..?
Evening서비스 기획 숙련 [5-1]~[5-2]chapter 5 TIL과 숙제는 완강 후 월요일 작성 예정


아티클 카타

쿠키와 세션, 그리고 캐시 (발행일 2025.01.07)


1. 쿠키

  • 로그인 정보, 장바구니 저장을 위한 기능
  • 페이지 이동할 때 마다 정보가 날라가지 않도록 사용자 단말기에 이름/값/도메인/만료날짜 와같은 정보를 저장

쿠키로 인한 프라이버시 침해 문제

  • 서드파티 쿠키가 여러 사이트에 걸쳐 사용자의 행동을 추적할 수 있게 됨.
    e.g. A웹사이트 방문 → 페이지 안에 구글 애즈 스크립트가 포함 됨 → 브라우저는 A웹사이트와 구글 서버 에 모두 쿠키 요청을 보냄 → 구글 쿠키를 심음 (이 사용자는 id 123임)
    → 그러면 구글 애즈 스크립트가 포함된 다른 사이트에 갔을 때 내가 같은 사용자로 읽힘.
  • 한 사이트 내부 기록이 아니라 인터넷 사용 로그가 되어버림.
  • 근데 사용자는 어디서 어떻게 수집돼서 어느 기업이 갖고 있는지 모름.
  • 사용자의 위치, 정치성향과 같이 민감한 정보까지 포함

프라이버시 문제로 쿠키사용이 축소되면,

1. 퍼스트파티 데이터가 중요해짐

  • 회원가입 유도, 로그인 기반 서비스, 지속적이고 통합된 고객 데이터베이스 구축
    • 예) 아마존의 루퍼스

2. 관심사 타겟팅 -> 컨텍스트 타겟팅

  • 유저가 누구인지 보다 이 사람이 지금 무엇을 보고 있는지

2. 세션

  • 쿠키는 브라우저에 저장되는 데이터 단위
  • 세션은 서버에 저장
  • 세션ID는 쿠키에 담겨져서 세션을 열람하는 키
브라우저 - 요청하고, 받는 쪽
서버 - 응답하는 쪽
Like 손님과 주방..
  • 세션아이디를 해킹하면 다른 pc에서 로그인 가능.
    → 개인정보 수정 페이지나 비밀전호 수정 시 현재 비밀번호를 입력해야하는 인풋 박스가 필요한 이유.
  • 정책 만들 때:
    세션 유지 기간 고려 (보안 중요한 금융 서비스- 10분/ sns 길게는 3개월)


서비스 기획 숙련

Chapter 3 숙제
Chapter 5 -네카라쿠배 현황


📖가상으로 내가 만드는 서비스의 회원 가입 or 회원 탈퇴 정책서를 작성 해 보세요. [3-3]

필터커피 커뮤니티 '드립핑' 웹의 회원가입 페이지 (레퍼런스 : 언스페셜티 커뮤니티)

  • 회원가입 방법
  1. 이메일 회원가입: 이메일 주소를 이용하여 회원가입합니다.
  2. 사용자 가입 시 최소 정보 요구사항: (이메일, 닉네임, 생년월일, 비밀번호)
  3. 비밀번호 생성 정책: 비밀번호는 8자 이상 16자 이하, 영문과 숫자가 1자 이상을 포함시키는 조건을 따릅니다.
  4. 닉네임 생성 규정: 닉네임은 10자 이내의 한글 혹은 영어를 사용합니다. 사용자는 닉네임을 생성할 때 욕설, 비하적 표현, 성적 표현 등 다른 사용자에게 불쾌감을 유발하는 단어를 사용할 수 없습니다.
  • 서비스 이용 자격
  1. 사용자는 연령과 지역 제한 없이 서비스를 이용할 수 있습니다.
  2. 사용자는 회원가입 과정에서 invitation qr code를 스캔해야 합니다.
  • 개인정보 처리 규정
  1. 사용자의 이메일과 생년월일은 본인 확인, 프로모션 (뉴스레터 발행, 생일 쿠폰 지급), 서비스 이용에 대한 통계에 이용됩니다.
  2. 사용자의 이메일과 생년월일은 회원 탈퇴 또는 이용목적 달성 시 파기합니다.

GPT의 피드백 💬

요청사항
정책 항목이 정책이 실행되는 단계와 범위에 맞게 카테고리화 되어있는지, 사용자 친화적으로 용어가 정리되어있는지 위주로 피드백해줘.

피드백 내용
1. 정책 항목을 회원가입 절차에 맞춰 분류하면 더 명확해짐.

기존개선
1. 회원가입 방법1. 가입 방식 및 절차
2. 서비스 이용자격2. 가입 시 입력 정보 정책
3. 개인정보 처리규정3. 계정 생성 규칙
4. 이용 자격 및 제한
5. 개인정보 수집 및 이용

(입력하는 내용/ 만족해야하는 조건/ 가입 진행 순서 —를 분리하면 더 명확해짐)

  1. 용어&표현을 사용자 친화적으로 개선. 모호한 표현 최소화
    e.g. "통계에 이용됩니다", "이용목적 달성 시 파기" ❌

개선 Ver.

회원가입 정책서

1. 가입 방식 및 절차

  • 이메일을 통해 회원가입을 진행합니다.
  • 회원가입 시 초대 QR 코드 인증이 필요합니다.

2. 가입 시 입력 정보 정책

  • 필수 입력 정보
    • 이메일
    • 닉네임
    • 생년월일
    • 비밀번호

3. 계정 생성 규칙

3.1 비밀번호 정책

  • 8자 이상 16자 이하
  • 영문과 숫자를 각각 1자 이상 포함

3.2 닉네임 정책

  • 10자 이내 (한글/영문/숫자)
  • 욕설, 비하 표현, 성적 표현 사용 불가
  • 닉네임은 중복 사용 불가

4. 이용 자격 및 제한

  • 연령 및 지역 제한 없이 가입 가능

5. 개인정보 수집 및 이용

  • 이메일, 생년월일은 다음 목적에 활용됩니다:
    • 본인 확인
    • 프로모션 (뉴스레터, 생일 쿠폰)
    • 서비스 이용 통계 분석
  • 회원 탈퇴 시 개인정보는 파기됩니다.

📖 회원가입 시에 발생할 수 있는 서비스 에러 케이스를 작성해보세요. [3-4]

에러 케이스에러 발생 조건에러 메세지에러코드
회원가입 시 이메일 형식 오류사용자가 입력한 이메일이 유효하지 않는 경우.올바른 이메일 주소를 입력해주세요.AUTH_VALIDATION_EMAIL_INVALID
회원가입 시 이메일 중복 오류사용자가 입력한 이메일이 이미 회원가입에 사용 된 경우.이미 사용 중인 이메일 주소입니다.AUTH_DUPLICATE_EMAIL
비밀번호 조건 불일치 오류사용자가 설정한 비밀번호가 비밀번호 생성 정책을 따르지 않는 경우비밀번호는 다음 조건을 만족해야 합니다 —8자 이상 16자 이하/ 영문과 숫자를 각각 1자 이상 포함자AUTH_VALIDATION_PASSWORD_RULE
비밀번호 확인 불일치비밀번호와 재입력 값이 다른 경우비밀번호가 일치하지 않습니다.AUTH_VALIDATION_PASSWORD_MISMATCH
닉네임 중복 오류사용자가 입력한 닉네임이 이미 사용 중인 닉네임인 경우.이미 사용 중인 닉네임 입니다.AUTH_DUPLICATE_NICKNAME
닉네임 길이 초과 오류사용자가 입력한 닉네임이 10자 이상인 경우.닉네임은 10자 이내로 입력해주세요.AUTH_VALIDATION_NICKNAME_LENGTH
닉네임 문자셋 오류사용자가 입력한 닉네임에 한글/영어/숫자 이외의 문자가 포함 된 경우사용할 수 없는 특수문자가 포함되어있습니다. 한글, 영어, 숫자만 입력해주세요.AUTH_VALIDATION_NICKNAME_FORMAT
닉네임 금칙어 포함 오류사용자가 입력한 닉네임에 금칙어가 포함된 경우부적절한 단어가 포함되어 있습니다. 다른 닉네임을 사용해주세요.AUTH_VALIDATION_NICKNAME_PROFANITY
카메라 접근 권한 오류사용자가 단말기의 카메라 접근 권한을 허용하지 않은 경우QR스캔을 위해 카메라 접근 권한을 허용해주세요.AUTH_PERMISSION_CAMERA_DENIED
QR코드 스캔 오류유효하지 않은 QR을 스캔한 경우유효하지 않은 QR입니다.AUTH_QR_INVALID
필수 정보 입력 누락 오류사용자가 회원가입 시 필요한 정보를 누락하고 다음 단계로 진행하려는 경우필수 입력 사항을 모두 확인해주세요.AUTH_VALIDATION_REQUIRED_FIELD

📖앞서 작성한 서비스의 회원 가입 or 회원 탈퇴 정책서를 가지고 해당 기획안을 작성해 보세요. [3-5]

1. 기능개요


  • 프로젝트 개요 : '드립핑 커뮤니티' 웹의 회원가입 페이지 개발
  • 기대 효과 및 목표 : 드립핑의 원두를 구매한 고객을 드립핑 커뮤니티의 회원으로 전환 할 수 있음.

2. 서비스 흐름(User Flow)


3.상세 기능 명세


[회원가입 상세 기능 명세서]

1. 회원가입 (Sign Up)

1.1 이메일 입력 및 검증

  • 이메일
    • 타입: string
    • 형식: RFC 표준 이메일 형식 (예: user@example.com)
    • 필수 여부: 필수
  • 검증 조건
    • 이메일 형식이 유효해야 함
    • 기존 가입된 이메일과 중복 불가
  • 에러
    • AUTH_VALIDATION_EMAIL_INVALID
    • AUTH_DUPLICATE_EMAIL

1.2 QR 인증

  • QR 코드
    • 입력 방식: 카메라 스캔
    • 타입: string (QR 데이터)
  • 처리 로직
    • 카메라 권한 허용 여부 확인
    • QR 데이터 유효성 검증
  • 검증 조건
    • 카메라 접근 권한이 허용되어야 함
    • QR 코드가 유효한 값이어야 함
  • 에러
    • AUTH_PERMISSION_CAMERA_DENIED
    • AUTH_QR_INVALID

1.3 사용자 정보 입력

닉네임 (Nickname)

  • 타입: string
  • 길이: 최대 10자
  • 허용 문자: 한글, 영어, 숫자
  • 필수 여부: 필수
  • 검증 조건
    • 10자 이내
    • 허용된 문자셋만 사용
    • 금칙어 포함 불가
    • 기존 닉네임과 중복 불가
  • 에러
    • AUTH_VALIDATION_NICKNAME_LENGTH
    • AUTH_VALIDATION_NICKNAME_FORMAT
    • AUTH_VALIDATION_NICKNAME_PROFANITY
    • AUTH_DUPLICATE_NICKNAME

생년월일 (Birth Date)

  • 타입: string (YYYY-MM-DD)
  • 필수 여부: 필수
  • 검증 조건
    • 날짜 형식 유효성 검증 (YYYY-MM-DD)
    • 미래 날짜 입력 불가
  • 에러
    • AUTH_VALIDATION_REQUIRED_FIELD
    • (추가 가능) AUTH_VALIDATION_BIRTHDATE_INVALID

비밀번호 (Password)

  • 타입: string
  • 길이: 8자 이상 16자 이하
  • 필수 여부: 필수
  • 검증 조건
    • 8~16자 길이
    • 영문 + 숫자 각각 최소 1자 포함
  • 에러
    • AUTH_VALIDATION_PASSWORD_RULE

비밀번호 확인 (Password Confirmation)

  • 타입: string
  • 필수 여부: 필수
  • 검증 조건
    • 비밀번호와 동일해야 함
  • 에러
    • AUTH_VALIDATION_PASSWORD_MISMATCH

1.4 필수값 검증 (공통)

  • 대상 필드
    • 이메일
    • 닉네임
    • 생년월일
    • 비밀번호
    • 비밀번호 확인
  • 검증 조건
    • 모든 필수 필드 값이 존재해야 함
  • 에러
    • AUTH_VALIDATION_REQUIRED_FIELD

1.5 회원가입 완료 처리

  • 처리 로직
    • 모든 validation 통과 시 계정 생성
    • 사용자 정보 DB 저장
  • 저장 데이터
    • 이메일
    • 닉네임
    • 생년월일
    • 비밀번호 (암호화 저장)
  • 후처리
    • 회원가입 완료 응답 반환
    • 서비스 메인 화면으로 이동

2. 공통 에러 응답 구조

{
  "success": false,
  "code": "AUTH_VALIDATION_EMAIL_INVALID",
  "message": "올바른 이메일 주소를 입력해주세요."
}

오늘 하루를 회고하며...

즐겁다 즐거워


부트캠프가 너무 재밌다!
일단 이번주는 TIL을 밀리지 않고 작성해서 뿌듯하다.

사람들이랑 과제 피드백이 모두 끝난 뒤 후기를 나눴다.
1. 모든 텍스트에는 목적과 핵심이 명확하게 드러나야한다.
2. 가독성은 분량의 문제가 아님.
3. 해결방안은 설득과 납득의 영역

추가로 옌님 아티클 카타 멘토링 받은 이야기를 들으며 퀄리티 있는 질문을 하는 게 얼마나 중요하고 어려운 일인지 다시금 깨달았다.
좋은 질문은 거시적 관점으로 주어진 자료와 상대방의 주장을 비판적으로 해석하는 것.

0개의 댓글