CliKit
미리보기
배경
대학교 생활관 관리측에서 여러 시스템이 필요하다 우리과에게 요구하였고,
우리 팀은 이를 놓치지 않고 붙잡아 학교 내 시설물 예약시스템을 맡게 되었다.
- 코로나의 영향으로 운영할 수 없던 시설물들을 사용할 수 있게 되면서 생활관에 있는 시설물들의 무분별한 사용을 막고자 한다.
- 시설물 사용 현황을 확인하려면 직접 방문해야 하는 불편함이 있었다.
- 시설물 사용자가 기록되지 않기 때문에 시설을 훼손하면 누구인지 추적하기 힘들다.
이것이 생활관 관리자들의 문제점이였고 우리팀은 미팅을 통하여 스토리보드를 제작하고
피드백과 수정을 반복하여 프로젝트를 시작하였다
요구 기능
- 공간별, 구획 별 제한 인원 변경
- 공간별, 구획 별 지정(예약 가능) 자리 변경
- 공간 운영시간 변경
- 이용 안내 및 수칙 위반 사항 변경(공간별 설정)
예약 시 수칙 사항 서약 완료 시에만 예약 가능
- 수칙 위반자 예약 불가 기간 설정
- 사용 당일 자가 온도 체크 기재 부분
- 예약자 관련 모든 사항이 관리자 모드에서 한눈에 확인 및 다운로드
제작의의
프로젝트를 하면서 많은 경험을 얻었다.
관리자와의 미팅을 하면서 요구사항을 듣고 인터뷰를 녹음 하여 요구사항들을 정리하고 요구사항을 토대로 프로젝트를 시작하니 다음 미팅에는 조금 더 좋은 질문을 하게 되고 좋은 경험을 얻은 것 같았다.
미팅이 함께 진행되면서 요구사항이 너무 많아진 감이 없잖아 있다. 이번 프로젝트는 React를 기반으로 웹제작을 하였고, Node.js를 기반으로 서버를 구축하였는데 처음 하는 거라 시작은 많이 버벅되며 시작했지만, 할수록 손에 익어 틀을 갖추고 난 뒤부터는 수월하게 진행이 되었던 것 같다.
그리고 이번 프로젝트는 기존에 하던 방식은 java가 아닌 JavaScript로 진행하다 보니 다양한 기능을 사용하며 통신 라이브러리인 axios, 엑셀을 이용할 exceljs, 쿠키를 처리할 cookie.js 등 여러 라이브러리를 활용하여 구현 하였다.
React를 활용한 프로젝트는 이번이 처음이라 많은 어려움이 있었다. 모르는 것이 한두가지가 아니였으며 Node.js를 이용한 서버 통신은 해본적이 없어 공부하는데 많은 시간을 할애하였던거 같다. 많은 어려움이 있었지만 배우면서 하나씩 해내고 있다는 것이 성취감을 주어 끝까지 도달할 수 있었다고 생각한다.
매 발표마다 교수님께서 피드백을 해주셔서 추가 한 기능들이 한두가지가 아니였는데, 아직 부족한 것이 많다는 것을 느꼈다. 최종에는 중간 발표까지의 모든 피드백을 수용하여 해결 하였지만 최종발표 때에도 피드백을 많이 받았었는데 조금 더 잘 할 수 있었다는 생각을 하니 아쉬웠다.
그래도 이번 프로젝트를 진행하면서 다양한 라이브러리와 기능 프레임워크 통신 방법들을 배워 좋았고 어떻게 하면 더 좋은 방식으로 코드를 짤 수 있는지, 실무처럼 요구사항을 받아 진행하는 프로젝트는 어떤식으로 진행되는 지 등 많은 경험을 얻은 뜻깊은 좋은 프로젝트가 된 것 같다.
사용 기술
- 개발 언어 : javaScript
- 라이브러리 : React, Axios
- 사용 프레임워크 : React, Express
- DBMS : MySQL
산출물
- 주제 제안서
- 요구명세서
- 설계명세서
- 최종보고서
- 회의록