Skip to content

be15-FreePath-DevPath/be15-2nd-FreePath-DevPath-BE

Repository files navigation

header

개발자를 위한 커뮤니티가 여러분을 찾아갑니다

개발 능력 업그레이드를 DevPath와 함께!



🔍 목차

1️⃣ We are FreePath
️2️⃣ Project Result
3️⃣ Our Notion Page

1️⃣ We are FreePath

✨ Team FreePath profile

김운경 김태인 이기연
@splguyjr @Taein5415 @Lee-gi-yeun
이주미 이채은 하채린
@z00m-1n @nineeko @didiha

🛠️ Dev tools

📂 Database

☁️ Infrastructure

🚀 Backend

🛠️ Tools

💬 Communication



프로젝트 목적

프로젝트 DevPath는 비전공자와 주니어 개발자들이 실전 준비 과정에서 겪는 단절을 해소하고자 합니다. 구조화된 피드백과 동료와의 협업, 성장 추적 기능을 통해 지속적인 성장을 지원합니다. 이를 통해 단편적인 정보 소비를 넘어 자기 주도적 학습과 회고가 가능한 환경을 제공합니다.

프로젝트 구조
com.freepath.devpath
├── common
│   ├── auth
│   │   ├── controller
│   │   ├── dto
│   │   ├── entity
│   │   └── service
│   ├── config
│   ├── converter
│   ├── dto
│   ├── exception
│   ├── jwt
│   └── service
│
│
├── user # Users
│   ├── command
│   ├── config
│   ├── exception
│   └── query
│
├── email # ITNews
│   ├── command
│   ├── config
│   ├── exception
│   └── query
│
├── chatting # Chatting, ChattingJoin, ChattingRoom, UserBlock
│   ├── command
│   ├── exception
│   └── query
│
├── board
│   ├── post # Board, BoardCategory, Attachment
│   │   ├── command
│   │   └── query
│   │
│   ├── comment # Comment
│   │   ├── command
│   │   └── query
│   │
│   ├── vote # Vote, VoteItem, VoteHistory
│   │   ├── command
│   │   └── query
│   │
│   └── interaction # Like, BoardBookmark
│       ├── command
│       └── query
│
├── interview # Interview, InterviewRoom
│   ├── command
│   └── query
│
├── report # Report, ReportCheck
│   ├── controller
│   ├── domain
│   ├── dto
│   ├── exception
│   ├── mapper
│   ├── repository
│   └── service
│
└── csquiz # CsQuiz, CsQuizResult, CsQuizOption
├── command
├── exception
└── query


2️⃣ Project Result


📣 요구사항 명세서

요구사항 명세서 상세보기
요구사항명세서 요구사항명세서2

📝 WBS (Work Breakdown Structure)

WBS 상세보기

📊 Gantt Chart

Gantt Chart 상세보기

📑 DDD


📋 논리/물리 ERD

논리 ERD 상세보기
논리 ERD

물리 ERD 상세보기
물리 ERD

✔️ REST API 설계 문서

REST API 설계 문서 (Swagger)
restapi1 restapi2 restapi3 restapi4 restapi5 restapi6 restapi7 restapi8 restapi9 restapi10 restapi11

📌 MSA 아키텍쳐 구조도

MSA 아키텍쳐 구조도 상세보기 MSA

🙌 Eureka Server & Client & API Gateway 구조

Eureka Server & Client & API Gateway 구조 상세보기 Eureka 구조

🎖️ 테스트 결과 보고서

  • 회원 테스트
  • 회원 가입 1. 일반 회원가입
    user1
    : 일반 회원가입 시 인증 이메일 발송

    user2
    : 인증번호 확인

    user3
    : 인증번호 확인

    2. 구글 회원가입
    user4
    : 구글 회원가입 or 로그인 화면

    user5
    : 구글 인증 후 닉네임, it 기사 구독 여부 입력

    user6
    : 구글 회원가입 완료
    로그인 1. 일반 로그인
    user7
    : 일반 로그인 완료

    2. 구글 로그인
    user8
    : 구글 로그인 화면

    user9
    : 구글 로그인 시 토큰 확인 가능

    로그아웃 1. 로그아웃
    user11

    리프레시 토큰 발급 1. 리프레시 토큰 발급
    user10

    회원 탈퇴 1. 이메일 발송
    user11
    : 회원 탈퇴 시 본인 확인을 위한 이메일 발송

    2. 인증 번호
    user12
    : 인증 번호 확인

    3. 회원 탈퇴
    user13
    : 회원 탈퇴 완료

    로그인 아이디 찾기 1. 이메일 발송
    user14
    : 로그인 아이디 찾기를 위한 인증용 이메일 발송

    2. 인증 번호
    user15
    : 인증 번호 인증 완료

    3. 로그인 찾기 완료
    user16
    : 회원의 아이디 반환

    비밀번호 재설정 1. 이메일 발송
    user17
    : 비밀번호를 잃어버렸을 때 재설정하는 기능을 사용하기 위해 인증용 이메일 발송

    2. 인증 번호
    user18
    : 인증 번호 인증 완료

    3. 비밀번호 재설정 오류
    user19
    : 비밀번호에 특수문자를 넣지 않으면 안 됨

    4. 비밀번호 재설정 완료
    user20
    : 특수문자 넣고 다시 시도하면 성공함

    비밀번호 변경 1. 이메일 발송
    user21
    : 비밀번호를 변경 시 인증용 이메일 발송

    2. 인증 번호
    user22
    : 인증 번호 인증 완료

    3. 비밀번호 변경 완료
    user23
    : 비밀번호가 성공적으로 변경됨

    회원 정보 수정 1. 닉네임, it 기사 구독 여부 수정
    user24
    : 중복되는 닉네임은 변경이 불가능

    개발자 성향 테스트 저장 1. 개발자 성향 테스트 저장
    user25
    : 프론트에서 주는 값을 회원의 개발자 성향 테스트 결과로 저장함

    마이페이지 내의 회원 정보 조회 1. 회원 정보 조회
    user26
    : 이메일, 닉네임, it 뉴스 구독 여부, 개발자 성향 테스트 등을 조회할 수 있다.


  • 게시글 테스트
  • 게시글 업로드 1. 게시글 업로드
    게시글 업로드 예시
    각 필드에 대한 입력 유효성 검사와 파일 첨부 기능 등이 포함됩니다.
    게시글 수정 1. 게시글 수정
    게시글 수정 예시
    수정 시 변경된 내용이 정상적으로 반영되는지와 편집 전후 데이터 비교 기능 등을 확인합니다.
    게시글 삭제 1. 게시글 삭제
    게시글 삭제 예시
    삭제 전 확인 메시지와 실제 데이터베이스에서 삭제 처리가 되는지를 테스트합니다.
    하위 카테고리 목록 조회 1. 하위 카테고리 목록 조회
    하위 카테고리 목록 조회 예시
    계층 구조가 제대로 표시되고, 클릭 시 해당 카테고리로 이동되는지 확인합니다.
    게시글 상세 조회 1. 게시글 상세 조회
    게시글 상세 조회 예시
    게시글 내용, 작성자 정보, 작성일, 댓글 및 추천 수 등의 정보가 올바르게 표시되는지 확인합니다.
    게시글 검색 (작성일, 작성자, 제목) 1. 게시글 검색 (작성일, 작성자, 제목)
    게시글 검색 (필터) 예시
    조건에 맞는 게시글이 올바르게 필터링되어 나타나는지 확인합니다.
    게시글 검색 (게시글 내용 필터) 1. 게시글 내용 필터
    게시글 내용 필터 예시
    검색 결과에 불필요한 게시글이 노출되지 않고, 정확하게 필터링되는지 확인합니다.
    회원이 작성한 게시글 목록 조회 1. 회원이 작성한 게시글 목록 조회
    회원이 작성한 게시글 목록 조회 예시
    회원 정보와 연동되어, 로그인 상태에서 자신의 게시글만 확인 가능하게 처리되어 있는지 테스트합니다.
    자신의 신고된 게시물 목록 확인 1. 신고된 게시물 목록 확인
    신고된 게시물 목록 확인 예시
    신고 처리 현황과 해당 게시글의 상태가 정확하게 표시되는지 확인합니다.

  • 댓글 테스트
  • 게시글 내 댓글 조회 기능 1. 게시글 내 댓글 조회 기능
    게시글 내 댓글, 대댓글 조회
    : 게시글 내 댓글 및 대댓글을 조회할 수 있다.
    댓글 작성 2. 댓글 작성
    댓글작성
    사용자는 게시글ID와 댓글을 전송하여여 댓글을 작성할 수 있다.
    대댓글 작성 3. 대댓글 작성
    대댓글 작성
    사용자는 게시글ID와 댓글을 전송하여여 대댓글을 작성할 수 있다.
    댓글 삭제 4. 댓글 삭제
    댓글 삭제
    사용자는 특정 댓글의 id를 이용하여 댓글을 삭제할 수 있다.
    댓글,대댓글 수정 5. 댓글,대댓글 수정
    댓글, 대댓글 수정
    사용자는 특정 댓글의 id를 이용하여 댓글을 수정할 수 있다.
    내가 쓴 댓글, 대댓글 조회 6.내가 쓴 댓글, 대댓글 조회
    내가 쓴 댓글, 대댓글 조회
    사용자는 자신이 작성한 댓글 및 대댓글을 조회할 수 있다.
    신고 된 내 댓글 조회 7. 신고 된 내 댓글 조회
    신고 된 내 댓글 조회
    사용자는 신고된 자신의 댓글을 조회할 수 있다.

  • 투표 테스트
  • 투표 참여 1. 투표 참여(일반)
    투표 참여(일반)
    투표가 있는 게시글에 투표 참여

    2. 투표 참여(중복)
    투표 참여(중복)
    투표가 있는 게시글에 중복 투표 참여시 예외처리
    투표 종료 1. 투표 종료(일반)
    투표 종료(일반)
    투표를 종료

    2. 투표 종료(권한 X)
    투표 종료(권한 X)
    투표 종료 시 게시글 작성자인지 검증 후 예외처리
    투표 조회 1. 투표 조회(투표 존재 여부, 투표 여부, 종료 여부)
    투표 조회(투표 존재 여부, 투표 여부, 종료 여부)
    투표 조회 시 투표 존재 여부, 투표 여부, 종료 여부를 확인

  • 게시판 상호작용 테스트
  • 게시글 북마크 1. 게시글 북마크
    intr1
    : 사용자는 게시글 북마크를 할 수 있다.

    2. 게시글 북마크 모아보기
    intr2
    : 사용자는 마이페이지에서 북마크 목록을 조회할 수 있다.

    3. 게시글 북마크 삭제
    intr3
    : 사용자는 북마크를 취소할 수 있다.

    4. 게시글 북마크 실패
    intr4
    : 게시글 북마크 실패 예외 처리

    5. 게시글 북마크 삭제 실패
    intr5
    : 북마크 삭제 실패 예외 처리

    게시글 좋아요 1. 게시글 좋아요
    intr6
    : 사용자는 게시글에 좋아요를 누를 수 있다.

    2. 게시글 좋아요 모아보기
    intr7
    : 사용자는 마이페이지에서 좋아요 한 게시글을 조회할 수 있다.

    3. 게시글 좋아요 총 개수
    intr8
    : 사용자는 게시글의 좋아요 총 개수를 조회할 수 있다.

    4. 게시글 좋아요 삭제
    intr9
    : 사용자는 게시글의 좋아요를 취소할 수 있다.

    5. 게시글 좋아요 실패
    intr10
    : 게시글의 좋아요 실패 예외 처리

    6. 게시글 좋아요 삭제 실패
    intr11
    : 게시글의 좋아요 삭제 실패 예외 처리

    게시글 조회 시 북마크 여부 1. 북마크 되어있을 때
    intr12
    : 사용자가 특정 게시글 조회 시 북마크가 되어있을 때

    2. 북마크 안 되어있을 때
    intr13
    : 사용자가 특정 게시글 조회 시 북마크가 안 되어있을 때

    게시글 조회 시 좋아요 여부 1. 좋아요 되어있을 때
    intr14
    : 사용자가 특정 게시글 조회 시 좋아요가 되어있을 때

    2. 좋아요 안 되어있을 때
    intr15
    : 사용자가 특정 게시글 조회 시 좋아요가 안 되어있을 때

    댓글 좋아요 1. 댓글 좋아요
    intr16
    : 사용자는 댓글에 좋아요를 할 수 있다.

    2. 댓글 좋아요 총 개수
    intr17
    : 사용자는 댓글의 좋아요 총 개수를 조회할 수 있다.

    3. 댓글 좋아요 삭제
    intr18
    : 사용자는 댓글의 좋아요를 취소할 수 있다.

    4. 댓글 좋아요 실패
    intr19
    : 댓글의 좋아요 실패 예외 처리

    5. 댓글 좋아요 삭제 실패
    intr20
    : 댓글의 좋아요 삭제 실패 예외 처리
    댓글 조회 시 좋아요 여부 1. 좋아요 되어있을 때
    intr21
    : 사용자가 특정 댓글에 좋아요를 했을 때

    2. 좋아요 안 되어있을 때
    intr22
    : 사용자가 특정 댓글에 좋아요를 안 했을 때


  • CS 퀴즈 테스트
  • CS 퀴즈 등록 1. 등록
    csquiz1
    : 관리자가 CS 퀴즈를 등록함

    CS 퀴즈 버전 갱신 1. 버전 갱신(수동)
    csquiz2
    : 관리자가 CS 퀴즈 버전 갱신을 수동으로 진행함

    CS 퀴즈 조회 1. 상세 조회
    csquiz3
    : CS 퀴즈를 상세 조회함

    2. 목록 조회
    csquiz4
    : CS 퀴즈의 전체 목록 조회함

    3. 주간 조회
    csquiz5
    : 주간 CS 퀴즈 조회함

    CS 퀴즈 수정 1. 수정
    csquiz6
    : 관리자가 CS 퀴즈 내용을 수정함

    사용자 답변 등록 1. 답변 등록
    csquiz7
    : 사용자가 퀴즈에 대해 답변을 등록함

    사용자 CS 퀴즈 결과 조회 1. 결과 조회
    csquiz8
    : 사용자는 퀴즈 결과를 조회할 수 있음

    사용자 주간 CS 퀴즈 정답 개수 조회 1. 정답 개수 조회
    csquiz9
    : 사용자는 주간 CS 퀴즈의 정답 개수를 조회할 수 있음


  • 채팅 테스트
  • 채팅방 기능 1. 채팅방 생성
    채팅방 생성성
    : 사용자 토큰을 이용하여 채팅방 생성

    2. 그룹채팅방 생성
    그룹채팅방 생성성
    : 게시글ID와 사용자 토큰을 이용해 그룹채팅방 생성

    3. 채팅방 나가기
    채팅방 나가기기
    : 채팅방Id와 토큰을 이용해 채팅방을 나감

    4. 채팅방 삭제
    채팅방 나가기
    : 그룹채팅방의 OWNER인 사용자만이 채팅방 삭제 가능

    5. 채팅방 조회
    채팅방 조회회
    : 참여중인 채팅방을 조회한다.

    6. 채팅방 조회
    채팅 내역 조회
    : 채팅방의 채팅 내역을 조회한다.

    7. 채팅방 제목 변경
    채팅방 제목 변경경
    : 그룹채팅방의 OWNER가 채팅방의 제목을 수정한다.

    8. 채팅방 참여자 목록 조회
    채팅 참여자 목록 조회회
    : 특정 채팅방의 참여자 목록을 조회할 수 있다.

    차단 기능 1. 회원 차단 기능
    회원 차단 기능
    : 특정 사용자를 차단할 수 있다.

    2. 회원 차단 취소 기능
    회원 차단 취소 기능
    : 특정 사용자 차단을 취소할 수 있다.

    3. 회원 차단 목록 조회
    회원 차단 목록 조회
    : 사용자가 차단한 다른 사용자들을 조회할 수 있다.

    그룹채팅방 기능 1. 그룹채팅방 참여 요청
    그룹채팅방 참여요청
    : 일반 사용자는 그룹채팅방 참여 요청을 보낸다.

    2. 그룹채팅방 대기방 조회
    그룹채팅방 대기방 조회
    : 그룹채팅방의 OWNER는 대기방을 조회할 수 있다.

    3. 그룹채팅방 요청 수락락
    그룹채팅방 참여요청 수락락
    : 그룹채팅방의 OWNER는 그룹채팅방 참여 요청을 수락할 수 있다.

    3. 그룹채팅방 요청 수락
    그룹채팅방 참여요청 거절절
    : 그룹채팅방의 OWNER는 그룹채팅방 참여 요청을 거절할 수도 있다.

    채팅 연결 테스트 채팅 연결 테스트
    : stomp를 이용하여 connect, subscribe, send시 사용자의 토큰을 확인하여 채팅방에 참여중인 사용자인지 확인한다.

  • 모의 면접 테스트
  • 관리자 - 조회 1. 관리자 모의 면접방 전체 목록 조회
    interview1
    : 관리자는 사용자가 만든 모의 면접방 전체 목록을 조회할 수 있음

    2. 관리자 모의 면접방 필터링 조회
    interview2
    : 관리자는 사용자가 만든 모의 면접방을 필터링 해서 조회할 수 있음

    사용자 - 조회 1. 사용자 모의 면접방 목록 조회
    interview3
    : 사용자는 본인이 만든 모의 면접방 목록을 조회할 수 있음

    2. 사용자 모의 면접방 상세 조회
    interview4 interview5 interview6
    : 사용자는 본인의 모의 면접방 상세 조회를 할 수 있음

    4. 사용자 모의 면접방 총평 조회
    interview7
    : 사용자는 본인이 만든 모의 면접방의 총평을 조회할 수 있음

    모의 면접방 생성 1. 생성
    interview8
    : 사용자는 모의 면접방을 생성할 수 있음

    모의 면접방 제목, 메모 수정 1. 수정
    interview9
    : 사용자는 모의 면접방의 제목 및 메모를 수정할 수 있음

    모의 면접방 사용 1. 대화
    interview10 interview11 interview12
    : 사용자는 모의 면접방의 제목 및 메모를 수정할 수 있음

    모의 면접방 재실행 1. 대화
    interview13
    : 사용자는 모의 면접방을 재실행 할 수 있음


  • IT 뉴스 테스트
  • IT 뉴스 저장 1. 저장
    itnews1
    : 관리자는 IT 뉴스를 저장할 수 있다.

    IT 뉴스 수정 1. 수정
    itnews2
    : 관리자는 IT 뉴스를 수정할 수 있다.

    IT 뉴스 조회 1. 목록 조회
    itnews3
    : 관리자는 IT 뉴스 목록을 조회할 수 있다.

    2. 상세 조회
    itnews4
    : 관리자는 IT 뉴스 상세 조회할 수 있다.

    IT 뉴스 전송 1. 전송(수동)
    itnews5
    : 관리자는 IT 뉴스를 구독한 사용자들에게 전송할 수 있다.
    itnews6
    : 사용자가 받은 이메일

    IT 뉴스 삭제 1. 삭제
    itnews7
    : 관리자는 IT 뉴스를 삭제할 수 있다.


  • 신고 테스트
  • 게시글 신고 1. 게시글 신고(일반)
    게시글 신고(일반)
    2. 게시글 신고(중복)
    게시글 신고(중복)
    게시글 신고 시 중복 예외 처리
    댓글 신고 1. 댓글 신고(일반)
    댓글 신고(일반)

    2. 댓글 신고(중복)
    댓글 신고(중복)
    댓글 신고 시 중복 예외 처리
    관리자 신고 검토 리스트 조회 1. 관리자 신고 검토 리스트 조회
    관리자 신고 검토 리스트 조회
    관리자가 신고 검토 요청 리스트를 조회
    관리자 신고 검토 처리 1. 관리자 신고 검토 처리
    관리자 신고 검토 처리
    관리자가 신고 검토 요청을 처리
    2. 관리자 신고 검토 처리(중복)
    관리자 신고 검토 리스트 조회
    관리자가 신고 검토 요청 처리 시 중복 예외 처리


    3️⃣ Our Notion Page

    | 📓 Notion Page Link |

    About

    개발자 취준 커뮤니티

    Resources

    Stars

    Watchers

    Forks

    Releases

    No releases published

    Packages

    No packages published

    Contributors 6