Skip to content

Yooonjeong/Jaebongteul

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 

Repository files navigation

배포 URL

http://34.64.163.106:3000/


기획서

서비스 명

  • 재봉틀
  • 주제: 재난 피해 지역 봉사 인원 모집 플랫폼

서비스 목적

재난 피해 정보를 활용한 재난 피해 지역 봉사 인원 모집한다.

서비스 목표

  • 신속한 재난 대응 지원
    • 재난 발생 시 신속하게 재난 정보 제공
    • 재난 피해 현황을 집계하여 정보 제공
    • 이를 통해 적절한 봉사 인원 모집과 지원을 가능하게 함
  • 효율적인 봉사자 모집 및 관리
    • 피해 지역별로 필요한 봉사 인원을 효율적으로 모집
    • 봉사 활동을 체계적으로 관리하여 재난 피해 복구에 기여
    • 봉사 활동 내역을 기록하고 추적하여 효율적인 자원 관리
  • 커뮤니티 활성화
    • 봉사자들이 소통하고 경험을 공유할 수 있는 플랫폼 제공
    • 봉사 활동의 지속 가능성을 높임
  • 사용자 중심의 서비스 제공
    • 사용자 친화적인 인터페이스와 맞춤형 알림 시스템 제공(고도화 내용)
    • 사용자 만족도를 향상시키고, 참여를 독려
  • 데이터 기반 의사 결정 지원
    • 재난 피해 데이터를 분석하고 시각화(고도화 내용)하여 정확한 상황 파악 지원
    • 통계 데이터를 제공하여 재난 관리 및 대응 전략 수립 지원(고도화 내용)
    • 효율적인 의사 결정을 도모
  • 안정적이고 확장 가능한 인프라 제공
    • 안정적인 서버 운영과 효율적인 자원 관리
    • 필요 시 확장 가능한 인프라 구축
    • CI/CD 파이프라인 및 컨테이너 관리 시스템 도입으로 배포 및 운영 효율성 증대

서비스 기능 명세

1. 사용자 기능

  • 로그인/회원가입
    • 소셜 로그인 기능 (OAuth 사용: Google, Naver, Kakao 등)
    • 사용자 프로필 생성 및 관리 (봉사자 및 관리자 역할 구분 포함)
    • 사용자 활동 내역 조회 (참여한 봉사활동 및 지원한 봉사활동 내역 조회)
  • 프로필 관리
    • 사용자 프로필 편집 (이름, 연락처, 프로필 사진 등)
    • 로그인 이메일 변경 및 추가 (새 이메일로 인증 메일 발송 및 인증 절차 완료) (고도화)
    • 자원봉사 참여도에 따른 등급 (고도화)
  • 알림 설정 (고도화)
    • 중요한 재난 정보나 봉사 활동 관련 알림 (메일, 문자)
    • 2단계 인증(2FA) 설정 및 관리

2. 재난 피해 정보 제공

  • 재난 피해 정보 조회
    • 재난안전데이터공유플랫폼 오픈 API 연동
    • 재난으로 인한 피해 정보 조회 기능
    • 피해 지역별 상세 정보 제공
    • 사용자 검색 및 필터링 기능 제공
    • 재난 정보 업데이트 주기 설정 및 자동화
    • 간단한 통계를 사용자에게 제공 (예: 피해 규모, 피해 복구 상태 등)

3. 실시간 재난 현황 정보 제공

  • 실시간 재난 정보 제공
    • 행정안전부 긴급재난문자 오픈 API 연동
    • 새로운 재난 발생 및 피해 정보 제공 (소켓 또는 Firebase 사용)
    • 재난 정보 실시간 지도 표시 기능 (고도화)

4. 봉사 인원 모집

  • 봉사 활동 모집 공고
    • 피해 지역별 봉사 활동 모집 공고 게시 기능
    • 봉사자 모집 현황 조회 기능
    • 필터링 검색 기능
  • 봉사 활동 지원
    • 봉사 활동 신청서 작성 및 제출 기능
    • 봉사 활동 지원 및 관리 기능
  • 관심 목록 관리
    • 관심 봉사 활동 목록 담기 기능

5. 커뮤니티 기능

  • 게시판 기능
    • 봉사자 간의 소통을 위한 게시판 기능
    • 활동 후기 및 경험 공유 기능
    • 커뮤니티 규칙 설정 및 관리 기능
    • 사용자 피드백 수집 및 반영 기능

6. 서버 관리

  • 서버 모니터링
    • 서버 상태 모니터링 및 로그 관리
    • Jenkins를 이용한 CI/CD 파이프라인 구축
    • Kubernetes를 이용한 도커 컨테이너 관리

  • 서비스 시나리오

    페르소나

    • 이름: 김민수
    • 나이: 40
    • 직업: 중소기업 사장
    • 거주: 부산 가족과 거주
    • 캐릭터:
      • "재난 발생 시 지역 사회에 도움을 주고 싶어 함."
      • "재난 상황에서 신속하게 정보를 얻고 봉사 활동에 참여할 수 있는 서비스를 찾고 있음."

    상세기능

    1. 회원 관리

    • 회원 가입
      • OAuth 인증을 통해 회원 가입 처리 (카카오, 구글 등)
      • OAuth를 통해 인증된 사용자만이 계정을 생성할 수 있음
    • 로그인
      • OAuth 인증을 통해 로그인
      • 로그인 성공 시 JWT 토큰 발행
      • 로그인 성공 이후 각 계정에 부여된 권한(admin, user)에 따라 기능을 분리
    • 로그아웃
      • 로그아웃 시 JWT 토큰 제거
    • 회원 CRUD 기능
      • 생성: OAuth를 통해 인증된 사용자만 계정 생성 가능
      • 조회:
        • 사용자는 마이페이지에서 자신의 정보를 조회할 수 있음
        • 사용자 프로필 정보, 활동 내역, 지원한 봉사 활동 내역 등 조회 가능
      • 수정:
        • 사용자는 마이페이지에서 자신의 정보를 수정할 수 있음
        • 프로필 사진 추가 가능
        • 닉네임 중복 허용, 비밀번호와 닉네임 수정 가능
      • 삭제:
        • 사용자는 관리자에게 요청하거나 직접 계정을 탈퇴할 수 있음
        • 탈퇴 유저 정보를 2주간 보유하여 복구 가능
    • 관리자 기능
      • 관리자 계정:
        • 별도의 관리자 계정 존재
        • 관리자만 접근 가능한 페이지 운용
      • 관리자 페이지 기능:
        • 재난 정보 추가, 수정, 삭제
        • 회원 탈퇴 처리
        • 봉사 활동 모집 글 작성, 수정, 삭제
        • 카테고리 관리

    2. 재난 피해 정보 관리

    • 재난안전데이터공유플랫폼 오픈 API 연동
      • 자연재난-사유시설피해정보 오픈 API 연동
      • API 호출 및 데이터 수집 주기 설정
      • 수집된 데이터의 정상 여부 확인 및 에러 처리
      • 데이터베이스(MySQL)에 저장된 데이터 관리
    • 재난 피해 정보 조회 기능
      • 사용자가 재난 피해 정보를 조회할 수 있는 페이지 구현
      • 조회된 정보는 최신 순으로 정렬
      • 재난 유형, 피해 규모, 발생 시간 등의 정보 제공
    • 피해 지역별 상세 정보 제공 기능
      • 지도 기반으로 피해 지역을 표시 (고도화 기능과 연계)
      • 피해 지역별 상세 정보 제공 (주소, 피해 유형, 피해 규모 등)
      • 사용자 정의 필터링 옵션 제공 (예: 지역별, 피해 유형별)
    • 피해 정보 검색 및 필터링 기능
      • 사용자가 재난 피해 정보를 검색할 수 있는 검색 창 구현
      • 재난 유형, 피해 규모, 발생 시간 등의 필터링 옵션 제공
      • 필터링 된 결과를 리스트 형식으로 제공
    • 간단한 통계 제공
      • 간단한 통계 정보를 사용자에게 제공 (예: 피해 규모, 피해 복구 상태 등)
      • 통계 페이지 구현
      • 주요 통계 정보 시각화 (예: 전체 피해 규모, 지역별 피해 현황 등) - 고도화 내용
    • 재난 정보 업데이트 주기 설정 및 자동화
      • 데이터 업데이트 주기 설정 (오픈 API 갱신 주기가 1일이므로 매일 업데이트)
      • 자동 업데이트 스케줄러 구현
      • 데이터 업데이트 시 사용자에게 알림 제공 (알림 기능과 연계 가능)

    3. 실시간 재난 현황 정보 제공

    • 실시간 재난 정보 제공
      • 행정안전부 긴급재난문자 오픈 API 연동
      • 새로운 재난 발생 및 피해 정보를 실시간으로 제공 (소켓 또는 Firebase 사용)
      • 재난 정보를 실시간 지도에 표시 (고도화)

    4. 봉사 활동 모집

    • 사용자 기능
      • 봉사 활동 모집 공고글 조회
        • 여러 필터링 기준에 따른 공고글 조회 가능
        • 게시글 상태(모집 중, 모집 완료 등) 조회 가능
      • 봉사 활동 신청
        • 원하는 공고글에 대해 봉사 활동 신청서 작성 및 제출 가능
        • 모집 중인 공고에 대해 신청 취소 가능
        • 자신이 신청한 봉사 활동 목록 조회 가능
      • 관심 목록 관리
        • 관심 있는 공고글을 관심 목록에 담기 가능
        • 자신의 관심 목록을 한 페이지에서 조회 가능
    • 카테고리 관리
      • 사용자
        • 카테고리별로 봉사 활동 조회 가능
      • 관리자
        • 카테고리 생성, 수정, 삭제 가능
    • 봉사 활동 공고 게시글 관리
      • 사용자
        • 게시글 조회 가능
        • 원하는 조건으로 필터링 검색 가능
        • 봉사자 모집 현황 조회 가능
      • 관리자
        • 게시글 생성, 수정, 삭제 가능
        • 게시글 상태 관리 (모집 중, 모집 완료 등)
    • 봉사 활동 신청서 관리
      • 사용자
        • 등록되어 있는 신청서에 체크 표시로 동의 후 봉사 활동 신청 가능
      • 관리자
        • 공고글 등록 시 기본 신청서를 수정 가능
        • 또는 고정된 신청서 제공

    5. 커뮤니티

    • 사용자 기능
      • 게시글 생성
        • 사용자가 게시글 생성 가능
        • 입력 정보: 제목, 설명, 카테고리
      • 게시글 조회
        • 사용자가 게시글 조회 가능
        • 카테고리별로 게시글 조회 가능
      • 게시글 수정 및 삭제
        • 작성자가 게시글 수정 가능
        • 작성자가 게시글 삭제 가능
      • 게시글 검색(고도화)
        • 사용자가 특정 키워드가 포함된 게시물을 조회 가능
    • 카테고리 관리
      • 사용자
        • 게시글 생성 시 카테고리를 선택 가능
          • 선택 사항: 소통, 후기, 경험 공유
        • 게시글 조회 시 카테고리별로 조회 가능
      • 관리자
        • 카테고리 추가 가능
        • 카테고리 삭제 가능
    • 댓글 기능
      • 사용자
        • 게시글에 댓글 작성 가능
        • 댓글에 대댓글 작성 가능
        • 비밀 댓글 작성 가능
        • 자신이 작성한 댓글 수정 가능
        • 자신이 작성한 댓글 삭제 가능

    6. 서비스 관리자 기능

    • 관리자 계정 관리
      • 관리자 계정 존재, 일반 사용자와 구분
      • 봉사 활동 모집 공고 관리
      • 회원 관리
      • 커뮤니티 관리
      • 배너 관리
      • 카테고리 관리
      • 재난 정보 업데이트 관리

    7. 서버 관리

    • 서버 모니터링
      • 서버 상태 모니터링 및 로그 관리
      • Jenkins를 이용한 CI/CD 파이프라인 구축(고도화)
      • Kubernetes를 이용한 도커 컨테이너 관리(고도화)

기술스택

  • 프론트엔드 : 리액트, Redux, SCSS
  • 백엔드: SpringBoot, SpringSecurity, JPA ,MySQL, Postman
  • 배포 : 도커, Nginx, GCP

역할분담

  • 프론트엔드 디자인 및 구조 : 임호준
  • 회원 도메인 : 노주현
  • 봉사 활동 도메인 : 장윤정
  • 재난 피해 정보 도메인 : 신지섭
  • 실시간 재난 현황 데이터 & api 활용 : 공예지
  • 커뮤니티 도메인 및 서버 관리 : 신종신

ERD

image (1)

피그마

image (2)

ARCHITECTURE

image

플로우차트

image

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published