Overview
개요
4차 산업혁명의 큰 축을 담당하고 있는 IoT(Internet of Things) 서비스를 구현하여 디바이스, 웹, 서비스 세가지 모두를 하나로 묶어 사용자가 직접 사물로 얻은 정보를 바탕으로 원하는 서비스를 이용할 수 있게끔 할 수 있는 프로젝트. 비회원, 회원, 관리자 세 파트로 나눠 각각의 위치에 맞게 기능을 구현하고 센서 정보 뿐만 아니라 이를 통해 개인 디바이스(휴대폰 어플리케이션)를 통해 확인할 수 있게끔 하는 것이 최종 목표
Team Members
팀원
- 임재경(팀장) : 총 디렉터, 디바이스 모델링 및 센서 구현(아두이노), 예약시스템, 결제API 적용
- 문병길(부팀장) : 웹 서버 모델링, 결제 페이지
- 김기현 : DB 모델링, 공지사항(게시판), FAQ 페이지
- 박혜은 : DB / 웹서버 모델링, 예약시스템 설계, 결제 게시판, QnA 게시판
- 신다혜 : 웹 디자인 총괄, 상품 서비스 모델링, 개인정보 관련 페이지, 지도 API
- 신한국 : DB 모델링, 공지사항(게시판), 개인정보 관련 페이지
- 이희재 : DB 모델링, 상품 서비스 모델링, FAQ 페이지
- 김예찬 : 웹서버 모델링, 웹 디자인, 개인정보 관련 페이지
- 이은수 : DB 모델링, 웹 디자인, QnA 게시판, 예약시스템
Function Implementation
구현 기능
- 회원가입 : 우편번호 API, 구글 Recaptcha(자동 가입 방지)
- 로그인 & 로그아웃
- 지도 API : 학원 위치에 프로젝트 팀 마커로 표시
- 결제 API : 원하는 상품에 대한 선택, 결제 구현
- 비밀 게시판 : 자신이 쓴 글 외에는 비밀번호 입력해야만 접근가능, 관리자 계정일 경우 접근 가능
- 공지사항 / 이벤트 : 관리자만 글 쓸 수 있게끔 설정, 그림파일 업로드 시 썸네일로 미리 확인 가능, 게시판에서 직접 첨부파일에 대한 썸네일로 확인 가능
- 예약 시스템 : 원하는 날짜 / 시간 선택 가능, 중복 시 알림 메시지, 사용자 기본 정보는 회원 가입시 정보(수정 가능)
- 개인정보 조회 : 개인정보 수정(구글 Recaptcha), 회원 탈퇴, 결제 정보 조회/취소, 예약 정보 조회/취소
- 개인 IoT 서비스 조회 : 가입한 IoT 서비스 확인
- 관리자 페이지 : 공지사항 게시판, 유저 전체정보 조회, IoT 서비스 가입 조회
- IoT 서비스 키값 부여 : IoT 서비스에 대한 키 값을 가입한 회원에게 직접 부여(부여하지 않을 시 이용불가)
Design Point
설계 주안점
- 프로젝트 주제 선정 후 팀원들을 3명씩 나눠서 업무의 효율성을 늘렸음.
- 매주 정해진 기한까지 구현해야 하는 기능 및 페이지를 만들어와 소스를 통합하고 바로 디버깅을 실시해 오류를 최대한 잡으면서 진행
- 인원수가 많은 것을 활용해 많은 기능을 구현하고자 하였고, 다른 프로젝트와는 달리 배우지 않은 소스(아두이노, 자동 가입 방지 등)를 적용하는 데에 애로사항이 있었으나 오류가 나지 않게끔 확실히 적용하여 추가 확장성에 차질이 없게끔 설계함
Technique & Environment
사용 기술 및 개발환경
- DB : Oracle DB
- 웹 서버 : Apache Tomcat v9.0
- IDE 도구 : eclipse
- 언어 : Java/JavaScript/HTML5/CSS3/jQuery/C
- 라이브러리 : jQuery, JSON, Google Recaptcha, Bootstrap, logback, slf4j
- Framework : Spring