- 재봉틀
- 주제: 재난 피해 지역 봉사 인원 모집 플랫폼
재난 피해 정보를 활용한 재난 피해 지역 봉사 인원 모집한다.
- 신속한 재난 대응 지원
- 재난 발생 시 신속하게 재난 정보 제공
- 재난 피해 현황을 집계하여 정보 제공
- 이를 통해 적절한 봉사 인원 모집과 지원을 가능하게 함
- 효율적인 봉사자 모집 및 관리
- 피해 지역별로 필요한 봉사 인원을 효율적으로 모집
- 봉사 활동을 체계적으로 관리하여 재난 피해 복구에 기여
- 봉사 활동 내역을 기록하고 추적하여 효율적인 자원 관리
- 커뮤니티 활성화
- 봉사자들이 소통하고 경험을 공유할 수 있는 플랫폼 제공
- 봉사 활동의 지속 가능성을 높임
- 사용자 중심의 서비스 제공
- 사용자 친화적인 인터페이스와 맞춤형 알림 시스템 제공(고도화 내용)
- 사용자 만족도를 향상시키고, 참여를 독려
- 데이터 기반 의사 결정 지원
- 재난 피해 데이터를 분석하고 시각화(고도화 내용)하여 정확한 상황 파악 지원
- 통계 데이터를 제공하여 재난 관리 및 대응 전략 수립 지원(고도화 내용)
- 효율적인 의사 결정을 도모
- 안정적이고 확장 가능한 인프라 제공
- 안정적인 서버 운영과 효율적인 자원 관리
- 필요 시 확장 가능한 인프라 구축
- CI/CD 파이프라인 및 컨테이너 관리 시스템 도입으로 배포 및 운영 효율성 증대
- 로그인/회원가입
- 소셜 로그인 기능 (OAuth 사용: Google, Naver, Kakao 등)
- 사용자 프로필 생성 및 관리 (봉사자 및 관리자 역할 구분 포함)
- 사용자 활동 내역 조회 (참여한 봉사활동 및 지원한 봉사활동 내역 조회)
- 프로필 관리
- 사용자 프로필 편집 (이름, 연락처, 프로필 사진 등)
- 로그인 이메일 변경 및 추가 (새 이메일로 인증 메일 발송 및 인증 절차 완료) (고도화)
- 자원봉사 참여도에 따른 등급 (고도화)
- 알림 설정 (고도화)
- 중요한 재난 정보나 봉사 활동 관련 알림 (메일, 문자)
- 2단계 인증(2FA) 설정 및 관리
- 재난 피해 정보 조회
- 재난안전데이터공유플랫폼 오픈 API 연동
- 재난으로 인한 피해 정보 조회 기능
- 피해 지역별 상세 정보 제공
- 사용자 검색 및 필터링 기능 제공
- 재난 정보 업데이트 주기 설정 및 자동화
- 간단한 통계를 사용자에게 제공 (예: 피해 규모, 피해 복구 상태 등)
- 실시간 재난 정보 제공
- 행정안전부 긴급재난문자 오픈 API 연동
- 새로운 재난 발생 및 피해 정보 제공 (소켓 또는 Firebase 사용)
- 재난 정보 실시간 지도 표시 기능 (고도화)
- 봉사 활동 모집 공고
- 피해 지역별 봉사 활동 모집 공고 게시 기능
- 봉사자 모집 현황 조회 기능
- 필터링 검색 기능
- 봉사 활동 지원
- 봉사 활동 신청서 작성 및 제출 기능
- 봉사 활동 지원 및 관리 기능
- 관심 목록 관리
- 관심 봉사 활동 목록 담기 기능
- 게시판 기능
- 봉사자 간의 소통을 위한 게시판 기능
- 활동 후기 및 경험 공유 기능
- 커뮤니티 규칙 설정 및 관리 기능
- 사용자 피드백 수집 및 반영 기능
- 서버 모니터링
- 서버 상태 모니터링 및 로그 관리
- Jenkins를 이용한 CI/CD 파이프라인 구축
- Kubernetes를 이용한 도커 컨테이너 관리
-
서비스 시나리오
- 이름: 김민수
- 나이: 40
- 직업: 중소기업 사장
- 거주: 부산 가족과 거주
- 캐릭터:
- "재난 발생 시 지역 사회에 도움을 주고 싶어 함."
- "재난 상황에서 신속하게 정보를 얻고 봉사 활동에 참여할 수 있는 서비스를 찾고 있음."
- 회원 가입
- OAuth 인증을 통해 회원 가입 처리 (카카오, 구글 등)
- OAuth를 통해 인증된 사용자만이 계정을 생성할 수 있음
- 로그인
- OAuth 인증을 통해 로그인
- 로그인 성공 시 JWT 토큰 발행
- 로그인 성공 이후 각 계정에 부여된 권한(admin, user)에 따라 기능을 분리
- 로그아웃
- 로그아웃 시 JWT 토큰 제거
- 회원 CRUD 기능
- 생성: OAuth를 통해 인증된 사용자만 계정 생성 가능
- 조회:
- 사용자는 마이페이지에서 자신의 정보를 조회할 수 있음
- 사용자 프로필 정보, 활동 내역, 지원한 봉사 활동 내역 등 조회 가능
- 수정:
- 사용자는 마이페이지에서 자신의 정보를 수정할 수 있음
- 프로필 사진 추가 가능
- 닉네임 중복 허용, 비밀번호와 닉네임 수정 가능
- 삭제:
- 사용자는 관리자에게 요청하거나 직접 계정을 탈퇴할 수 있음
- 탈퇴 유저 정보를 2주간 보유하여 복구 가능
- 관리자 기능
- 관리자 계정:
- 별도의 관리자 계정 존재
- 관리자만 접근 가능한 페이지 운용
- 관리자 페이지 기능:
- 재난 정보 추가, 수정, 삭제
- 회원 탈퇴 처리
- 봉사 활동 모집 글 작성, 수정, 삭제
- 카테고리 관리
- 관리자 계정:
- 재난안전데이터공유플랫폼 오픈 API 연동
- 자연재난-사유시설피해정보 오픈 API 연동
- API 호출 및 데이터 수집 주기 설정
- 수집된 데이터의 정상 여부 확인 및 에러 처리
- 데이터베이스(MySQL)에 저장된 데이터 관리
- 재난 피해 정보 조회 기능
- 사용자가 재난 피해 정보를 조회할 수 있는 페이지 구현
- 조회된 정보는 최신 순으로 정렬
- 재난 유형, 피해 규모, 발생 시간 등의 정보 제공
- 피해 지역별 상세 정보 제공 기능
- 지도 기반으로 피해 지역을 표시 (고도화 기능과 연계)
- 피해 지역별 상세 정보 제공 (주소, 피해 유형, 피해 규모 등)
- 사용자 정의 필터링 옵션 제공 (예: 지역별, 피해 유형별)
- 피해 정보 검색 및 필터링 기능
- 사용자가 재난 피해 정보를 검색할 수 있는 검색 창 구현
- 재난 유형, 피해 규모, 발생 시간 등의 필터링 옵션 제공
- 필터링 된 결과를 리스트 형식으로 제공
- 간단한 통계 제공
- 간단한 통계 정보를 사용자에게 제공 (예: 피해 규모, 피해 복구 상태 등)
- 통계 페이지 구현
- 주요 통계 정보 시각화 (예: 전체 피해 규모, 지역별 피해 현황 등) - 고도화 내용
- 재난 정보 업데이트 주기 설정 및 자동화
- 데이터 업데이트 주기 설정 (오픈 API 갱신 주기가 1일이므로 매일 업데이트)
- 자동 업데이트 스케줄러 구현
- 데이터 업데이트 시 사용자에게 알림 제공 (알림 기능과 연계 가능)
- 실시간 재난 정보 제공
- 행정안전부 긴급재난문자 오픈 API 연동
- 새로운 재난 발생 및 피해 정보를 실시간으로 제공 (소켓 또는 Firebase 사용)
- 재난 정보를 실시간 지도에 표시 (고도화)
- 사용자 기능
- 봉사 활동 모집 공고글 조회
- 여러 필터링 기준에 따른 공고글 조회 가능
- 게시글 상태(모집 중, 모집 완료 등) 조회 가능
- 봉사 활동 신청
- 원하는 공고글에 대해 봉사 활동 신청서 작성 및 제출 가능
- 모집 중인 공고에 대해 신청 취소 가능
- 자신이 신청한 봉사 활동 목록 조회 가능
- 관심 목록 관리
- 관심 있는 공고글을 관심 목록에 담기 가능
- 자신의 관심 목록을 한 페이지에서 조회 가능
- 봉사 활동 모집 공고글 조회
- 카테고리 관리
- 사용자
- 카테고리별로 봉사 활동 조회 가능
- 관리자
- 카테고리 생성, 수정, 삭제 가능
- 사용자
- 봉사 활동 공고 게시글 관리
- 사용자
- 게시글 조회 가능
- 원하는 조건으로 필터링 검색 가능
- 봉사자 모집 현황 조회 가능
- 관리자
- 게시글 생성, 수정, 삭제 가능
- 게시글 상태 관리 (모집 중, 모집 완료 등)
- 사용자
- 봉사 활동 신청서 관리
- 사용자
- 등록되어 있는 신청서에 체크 표시로 동의 후 봉사 활동 신청 가능
- 관리자
- 공고글 등록 시 기본 신청서를 수정 가능
- 또는 고정된 신청서 제공
- 사용자
- 사용자 기능
- 게시글 생성
- 사용자가 게시글 생성 가능
- 입력 정보: 제목, 설명, 카테고리
- 게시글 조회
- 사용자가 게시글 조회 가능
- 카테고리별로 게시글 조회 가능
- 게시글 수정 및 삭제
- 작성자가 게시글 수정 가능
- 작성자가 게시글 삭제 가능
- 게시글 검색(고도화)
- 사용자가 특정 키워드가 포함된 게시물을 조회 가능
- 게시글 생성
- 카테고리 관리
- 사용자
- 게시글 생성 시 카테고리를 선택 가능
- 선택 사항: 소통, 후기, 경험 공유
- 게시글 조회 시 카테고리별로 조회 가능
- 게시글 생성 시 카테고리를 선택 가능
- 관리자
- 카테고리 추가 가능
- 카테고리 삭제 가능
- 사용자
- 댓글 기능
- 사용자
- 게시글에 댓글 작성 가능
- 댓글에 대댓글 작성 가능
- 비밀 댓글 작성 가능
- 자신이 작성한 댓글 수정 가능
- 자신이 작성한 댓글 삭제 가능
- 사용자
- 관리자 계정 관리
- 관리자 계정 존재, 일반 사용자와 구분
- 봉사 활동 모집 공고 관리
- 회원 관리
- 커뮤니티 관리
- 배너 관리
- 카테고리 관리
- 재난 정보 업데이트 관리
- 서버 모니터링
- 서버 상태 모니터링 및 로그 관리
- Jenkins를 이용한 CI/CD 파이프라인 구축(고도화)
- Kubernetes를 이용한 도커 컨테이너 관리(고도화)
- 프론트엔드 : 리액트, Redux, SCSS
- 백엔드: SpringBoot, SpringSecurity, JPA ,MySQL, Postman
- 배포 : 도커, Nginx, GCP
- 프론트엔드 디자인 및 구조 : 임호준
- 회원 도메인 : 노주현
- 봉사 활동 도메인 : 장윤정
- 재난 피해 정보 도메인 : 신지섭
- 실시간 재난 현황 데이터 & api 활용 : 공예지
- 커뮤니티 도메인 및 서버 관리 : 신종신