티스토리 뷰

728x90

 안녕하세요! 지금까지 아주 조금 배운 웹 개발 지식을 활용해서 출석체크 자동화 프로그램을 제작해보려합니다. 지금까지 팀으로 프로젝트를 진행했었는데 이번은 혼자서 처음으로 해보는 것이고, 이런 개발 기록이 처음이라서 서투를 수 있습니다. 


1. 개발 계기

    저는 2023년 8월 말에 예정되어있는 교환학생을 가기 위해서 이번 년도 2월 말부터 아르바이트를 시작했습니다. 근로장학생은 아니고 인천대학교 외국어교육센터에서 주 5일 (10:00~18:00) 아르바이트로 근무하며 학생들의 출결관리, 어학 상담, 프로그램 홍보 및 진행을 맡고있습니다. 신입생들을 대상으로 하는 STEP-UP 프로그램에는 2~300명정도 학생들이 있습니다. 이 학생들을 관리할때 제일 중요한 부분은 출석입니다. 출석에 따라서 장학금이 지급되기 때문입니다. 

 

    현재 시스템 상으로 학생들이 자신들의 출석을 확인하고 싶다면 직접 전화하거나 방문해서 직원인 저에게 물어봐야합니다. 학생 입장에서 출석 하나 확인하려고 전화, 방문하는 것도 힘든 일이고, 제 입장에서도 2~300명 정도 되는 학생들이 매일 출석 문의가 오는게 힘든 일이었습니다. 이런 불편함을 없애고자 이번 프로그램을 개발하게 되었습니다.


2. 개발 목표 설정

  • 얻고자 하는 주요 목표 : 출석 확인 자동화 프로그램
  • 서비스 대상 : 출석 관리자, 출석하는 학생들
  • 사용할 기술  
    • FrontEnd
      • 언어 : HTML, CSS, JS 
      • 모듈 및 프레임워크 : bootstrap
    • BackEnd 
      • 언어 : NodeJS
      • 모듈 및 프레임워크 : Express, googleapis, passport, twilio
    • DataBase
      • 구글 스프레드시트

 

    현재 출석기록이 구글 스프레드시트에 저장되어있기때문에 데이터베이스를 구글스프레드시트로 정했습니다. 스프레드 시트는 시트가  기초, 기초중급, 중급, 실전으로 총 4개로 구성되어있습니다. 각 시트에 학생 이름, 전화번호, 학과, 출석률이 모두 포함되어있습니다.

 

    백엔드는 NodeJS에서 구글스프레드시트 정보를 불러오는 모듈인 googleapis, 로그인 모듈 passport, 전화 및 문자 인증 모듈 twilio, 서버 구현 모듈 express를 사용할 예정입니다. 

 

    프론트엔드는 아직 리액트는 할 줄 모르기 때문에 최대한 간단하고 쉽게 만들 수 있도록 부트스트랩을 사용할 예정입니다. 

 


3. 기능 정리

    나중에 개발이 산으로 가는 일이 없도록 구현할 기능을 정리해보겠습니다.

 

<BackEnd>

  1. 로그인/회원가입 구현 
    • 학생
  2. 구글 스프레드에 있는 학생만이 회원가입을 할 수 있도록 인증 기능 구현 
    • 구글 스프레드 시트에 있는 전화번호를 활용해서 twilio 모듈로 인증시스템 만들기
  3. 학생 - 출석 확인하기
    • 전체 출석률 확인하는 기능
    • 각 주차 출석 확인하는 기능

 

<FrontEnd>

  1. 로그인/회원가입 화면
  2. 학생 메인화면
    1. 전체 출석률 확인하는 화면
    2. 각 주차 출석 확인하는 화면

    사실 봄학기 영어 프로그램은 6월 2일에 끝납니다. 그래서 전 반드시 그 전에 개발을 완료해야합니다. 예전부터 이 프로젝트를 해야겠다고 생각했지만 그 당시에는 NodeJS에 대한 지식이 많이 없었고, 3월 내내 주 7일 아르바이트하느라 시작하기 어려웠습니다. 지금도 많이 부족한 실력이지만 직접 하면서 느는게 개발이니까 열심히 해보겠습니다!

    그리고 혼자서 하는 첫 프로젝트라 규모를 많이 작게 잡은 느낌이 있긴합니다만,,,, 막상 개발하면 또 어려움이 반드시 있을거라서 처음부터 무리하지 않고 이정도 규모로 진행하는 것도 좋을거라 생각합니다. 일단 제 손으로 제 일을 자동화해보는 경험이 중요하기때문에 열심히 해보겠습니다! 파이팅~! 

    이 프로젝트 관련 다음 포스팅부터는 개발 일지 형식으로 작성하겠습니다. 읽어주셔서 감사합니다!

728x90
250x250
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함