
KH IEI PROJECT
(디지털컨버전스)공공데이터 융합 자바개발자 양성과정A30(29) 1회차
전일규 강사 / 이은정 취업담임
2025. 06. 13 (D)
1 팀
KiHiBooks
| 팀장/팀원 |
박**(팀장), 엄**, 오**
|
| 개요 |
웹소설 콘텐츠 플랫폼 |
| 구현기능 |
웹소설 콘텐츠 플랫폼 (리디북스 클론 기반) |
| 설계의 주안점 |
- 외부 API 및 실시간 연동 기능의 통합 최적화 - 권한 기반 사용자 역할 분리 - 협업 효율성과 유지보수성 확보 |
2 팀
TABLE UP
| 팀장/팀원 |
유**(팀장), 최**, 표**
|
| 개요 |
사용자와 매장 관리자 간의 원활한 식당 예약 및 관리 서비스를 제공하는 웹 기반 플랫폼. 고객은 원하는 매장을 검색, 조회, 예약하고, 리뷰 및 찜 기능을 통해 피드백을 남길 수 있으며 매장 관리자는 직접 매장 정보를 등록하고 예약 내역을 관리할 수 있음. |
| 구현기능 |
- 회원 기능 - 소셜 로그인 (카카오, 네이버 등) - 찜하기 기능 - 리뷰 작성 - 매장 관리 (점주) - 매장 등록 및 정보 수정 - 운영시간, 편의시설, 예약 설정 등 세부 관리 - 예약 시스템 - 실시간 예약 기능 - 날짜 및 시간 선택 - 예약 내역 확인 - 매장 검색 및 조회 - 카테고리 및 키워드 기반 검색 - 정렬(별점순, 예약순 등) - 상세 정보 조회 (사진, 메뉴, 리뷰) |
| 설계의 주안점 |
1. 역할 기반 권한 분리 - 일반 사용자 vs 점주로 기능 분리 - 점주는 예약 및 매장 관리 권한 보유
2. 리뷰 및 찜 시스템 - 고객 경험 반영 - 사용자 간 소통 활성화 유도
3. 검색 최적화 - 다양한 필터 및 정렬 기능 제공 - 사용자 편의성 극대화 |
3 팀
허한정신
| 팀장/팀원 |
허**(팀장), 신**, 정**, 한**
|
| 개요 |
국내 여행을 위한 호텔, 펜션, 모텔 등의 숙소 예약 기능과 장거리 여행을 위한 렌트카 예약 기능을 구현하여 실제 사용자가 자신이 가고픈 여행지와 그 곳으로 이동하기 위한 차량을 골라 예약할 수 있고, 결제 시스템을 통해 실제 예약까지 가능 하도록 구현 |
| 구현기능 |
- 로그인 및 회원가입 ( 웹 회원가입, 로그인, 유효성 검사, 카카오, 네이버, 구글 api 활용) - 아이디 찾기(전화번호 인증, 문자 인증 api) - 비밀번호 변경(전화번호 인증, 문자 인증 api) - 자동 로그인 기능 - 메인페이지 / 헤더 / 푸터 - 지역별 숙소 조회 - 날짜 기간에 따른 숙소 조회(캘린더 활용) - 예약 인원 수에 따른 숙소 조회 - 리뷰, 예약 수에 따른 숙소 조회 - 날짜 기간에 따른 렌트카 조회(캘린더 활용) - 예약 인원 수에 따른 렌트카 조회 - 리뷰, 예약 수에 따른 렌트카 조회 - 마이페이지 구현 - 내 정보 수정(전화번호, 닉네임, 생년월일, 성별) - 웹, api 로그인 상태 확인 가능 - 사용자의 최신 예약 내역 확인(오늘 날짜 포함, 이후의 모든 예약 완료된 내역 조회 가능) - 예약 취소 기능 - 사용자의 전체 예약 내역 확인 - 사용자가 작성한 리뷰 확인 가능(분류에 따른 조회) - 메인화면 이미지 스와이프 - 검색기능(각 분류에 따른 값 산출 가능, 호텔 성급, 평점, 유형, 가격 등) - 렌트카 검색 기능 - 숙소 상세페이지, 렌트카 상세페이지 - 카카오맵 api를 이용한 지도 출력 - 지도 api를 활용한 지하철역, 관광명소, 전기차 충전소 위치 확인 - 리뷰 작성 시 평점에 따른 각 숙소, 업체의 평점 평균 계산 - 결제 api 기능(카카오, 토스) - 업체주인 권한 기능 - 숙소 및 렌트카 업체와 차량 등록 가능 - 전체 페이지 모바일 반응형 적용 |
| 설계의 주안점 |
1. 사용자 중심의 정보 설계 - 사용자 경험(UX)을 최우선으로 고려하여, 숙소 및 렌트카 검색 조건(날짜, 지역, 인원 수 등)에 따른 정보 탐색이 용이하도록 정보 구조와 UI 설계. - 반응형 웹 디자인을 적용해 PC, 모바일 등 다양한 디바이스에서도 일관된 사용자 경험을 제공하고, 메인화면 이미지 스와이프 및 직관적인 검색 필터로 접근성과 편의성 향상.
2. 외부 API 및 실시간 연동 기능의 통합 최적화 - 로그인(OAuth2 기반 카카오/네이버/구글), 결제(KakaoPay, Toss), 지도(Kakao Map), 문자 인증(SOLAPI) 등 다양한 외부 API를 안정적으로 연동하여 사용자의 실제 사용성을 강화하였습니다. - 지도 API를 통해 숙소 주변 정보(지하철역, 관광명소, 전기차 충전소 등)를 시각적으로 제공함으로써 정보 탐색의 효율성과 서비스 신뢰도를 높였습니다.
3. 데이터베이스 구조 및 보안성 고려 - 회원 정보, 예약, 리뷰, 업체 등록 등은 MySQL 기반의 정규화된 관계형 데이터베이스로 구성하여 안정적인 데이터 저장과 조회 성능 확보. - 비밀번호는 Bcrypt 알고리즘으로 암호화하였고, SQL Injection 및 XSS 공격을 방지하기 위한 필터링 처리와 예외처리 로직을 전반적으로 적용.
4. 권한 기반 사용자 역할 분리 - 사용자 유형(NORMAL, KAKAO, NAVER, GOOGLE) 및 권한(ADMIN, OWNER, USER)에 따른 접근 제어를 적용하여, 관리자/업체주인/일반사용자 각각의 기능을 명확히 분리. - OWNER 권한 사용자는 직접 숙소 및 차량 정보를 등록할 수 있도록 하였고, 사용자는 마이페이지를 통해 본인의 예약·리뷰 데이터를 편리하게 조회/관리할 수 있도록 구성.
5. 협업 효율성과 유지보수성 확보 - 프론트/백 단위의 명확한 기능 분담과 Git을 활용한 버전 관리를 통해 협업 효율을 극대화하였고, 공통 모듈(헤더, 푸터, 캘린더 등)의 컴포넌트화로 코드 재사용성과 유지보수성을 고려한 구조로 설계. - 향후 확장성(예: 리뷰 필터, 이벤트 페이지, 관리자 통계 기능)을 고려하여 서비스 계층(Service Layer)와 데이터 계층(DAO)을 분리하여 설계하였으며, Spring MVC 구조의 명확한 역할 분담을 기반으로 전체 시스템을 구성. |