/B-IT

2018-2 KNU 소프트웨어설계 5조 프로젝트 (try try try) - IT5호관 강의실 예약 시스템

Primary LanguageCSS

B-IT : Classroom Bookings for KNU students

경북대학교 학생을 위한 강의실 대여 서비스:

  • 2018-2 소프트웨어설계 5조 프로젝트
  • IT융복합공학관 시범 서비스

B-IT는:

  1. 신청도 쉽게 관리도 쉽게, 모두에게 편리한 강의실 대여 시스템입니다.
  2. 기존의 원시적인 절차에서 벗어나 누구나 어디서도 접속 가능한 웹 서비스입니다.

시연 영상

Youtube

서비스 소개

‘강의실 대여 서비스 B-IT’는 말 그대로 빈 강의실을 사용자가 대여할 수 있는 기능을 제공하는 웹 서비스이다.

수업 시간이나 행사 시간 이외의 시간에 빈 강의실을 사용자에게 제공하고자 하는 목적을 가지고 설계되었다.

우선적으로 IT5호관(융복합관)을 시범 서비스하고, 이후 필요한 모든 건물에 서비스를 확대할 예정이다.

서비스의 사용자인 학생들은 시스템을 이용하기 위해 가입 시 본인의 간단한 인적사항을 기입해야한다.

이후 경북대학교 통합정보시스템과 연동하여 경북대학교 학생만 가입할 수 있도록 한다.

물건의 파손신고나 잦은 신청 취소 및 변경과 같은 문제가 생길 경우, 관리자는 블랙리스트 기능으로 제제를 가할 수 있다.

사용자들은 원하는 강의실을 대여하기 위해 순차적인 과정을 따른다.

  1. 먼저 로그인 및 회원가입을 통해 웹페이지에 접속한다.

  2. 대여는 강의실, 대여 시작 시간, 대여 종료 시간, 사용 인원, 간단한 설명 등을 기재하여 신청한다.

  3. 관리자(서버)에게 신청 요청이 전달된다.

  4. 대여가 승인되면, 사용자에게 알림이 전송되고 신청 강의실에 해당 강의실이 업데이트 된 것을 확인할 수 있다.

  5. 대여를 변경하고 취소하는 기능 역시 이와 유사하게 진행된다.

이후 추가될 기능으로 건물 구조도 UI를 통해 사용자에게 화장실, 정수기, 과사무실 등의 위치를 제공할 수 있다.

요구사항 (User stories)

기능적 요구사항 (Functional requirements)

  1. 회원제로 운영된다.

  2. 관리자는 강의실 시간대를 변경할 수 있는 사람으로서 특정 행사의 정보를 공지한 후 사용자에게 알람을 보낸다.

  3. 사용자는 웹사이트에 접속하여 원하는 조건을 선택, 조회하고 빈 강의실을 대여할 수 있다.

  4. 사용자는 대여 후 취소 혹은 변경을 요청할 수 있다.

  5. 회원가입이 된 사용자는 타 사용자의 부적절한 행동을 신고할 수 있다.

비기능적 요구사항 (Nonfunctional requirements)

  1. 우선 강의실 대여 서비스는 융복합관(IT5호관)으로 제한된다. (프로토타입)

  2. 강의실을 대여한 사용자의 정보는 시스템에서만 알 수 있다.

  3. 부적절한 행동(쓰레기 투기, 전력낭비)를 경고한다.

개발환경

Amazon Web Service Cloud9

간편한 웹 개발 환경을 제공하는 아마존 웹 서비스

Language

Ruby

객체 지향 스크립트 언어이며, 형 선언이 없어 간결하고 유연한 프로그램이 특징

HTML

웹 문서를 만들기 위하여 사용하는 기본적인 웹 언어의 한 종류

CSS

웹 문서의 전반적인 스타일을 미리 저장해 둔 스타일시트

Javascript

객체 지향 스크립트 언어로 웹 페이지의 동작을 담당

Ruby On Rails

MVC 모델의 웹 개발 프레임워크인 루비온레일즈를 사용하여 빠르고 쉬운 개발

github

프로그램 소스를 공유하고 협업하여 개발할 수 있는 버전 관리 시스템 팀원들 간의 원활한 의사소통과 협력을 위해 사용

외부 라이브러리

devise

회원가입과 로그인 등 사용자 인증 시스템을 구축하기 위해 사용했다.

rails_db

데이터베이스 시각화와 편리한 관리를 위해 사용했다.

chartkick

관리자 페이지에서 예약 상태를 실시간 도넛 차트로 보여주기 위해 사용했다.

simple_calendar

관리자 페이지에서 그 달의 예약 현황을 캘린더로 보여주기 위해 사용했다.