프로젝트명: 챗봇을 활용한 학사관리 시스템 구축
기술분야: 모바일
멘토님: 삼성SDS 근무
매주 화요일 8시로 고정하여 회의를 진행하였고, 멘토님과는 한 달에 한 번 회의를 했다.
𒊹 3월
수행계획서
활동내용
어떤 학사정보를 이용해서 챗봇을 만들 것인지 프로젝트 수행계획서를 작성이 주를 이루었다.
프로젝트를 통해 아래와 같은 성과를 얻고자 하였다.
1) IT 전공의 대학생들이 Open API, OPEN 된 SNS 등을 활용하여 챗봇을 구축하고 구축과정에서 IT 기술에 대한 지식과 구현기술을 통하여 챗봇을 구축해 나가는 과정을 실습해보고자 함.
2) 일반적인 기업에서의 구현 방법론과 필요 산출물 등을 현장 중심으로 습득하고 이를 기반으로 IT 서비스 구현에 대한 이론만이 아닌 실제 현장에서의 방법론을 체득하고자 함
3) 멘토가 제시하는 기능만이 아닌 창의성 있는 기능에 대한 추가와 여러 신기술 (인공지능, 음성인식, 이미지 인식 등)과의 융합으로 앱을 발전시키고자 함
향후계획 및 기타사항
한이음 사이트에서 서약서 확인 후 멘티들의 재학증명서 제출
수행계획서 작성후 개설 신청하여 프로젝트를 본격적으로 실행

𒊹 4월
멘토 활동내용
팀소개 및 팀원소개
- 프로젝트 수행계획서 리뷰
- 프로젝트 일정 공유 및 진행방안 협의
- 프로젝트 rule 공유
- 챗봇 - 팀소개 및 팀원소개
- 프로젝트 수행계획서 리뷰
- 프로젝트 일정 공유 및 진행방안 협의
- 프로젝트 rule공유
- 챗봇 API선정
향후계획 및 기타사항 - 분석단계 산출물 공유
- 분석단계 요구사항정의, 서비스 구성도 작성 방법 공유
- 표준 API및개발도구 선정
- 기능 추가 구성

요구사항 정의서/시스템 구성도
[멘토님과 회의]
수행계획서에 작성하였던 데이터수집이나 STT, TTS는 향후 어떤 형태로 구현할지는 함께 상의해보았고, 제작설계서에 대한 회의를 진행하여 프로젝트의 흐름을 파악하였다.
[팀원 회의]
팀원들과 요구사항 정의서와 시스템 구성도 작성에 대한 회의를 진행하였다.
향후계획 및기타사항 아키텍쳐 / 기능설계 진행
시스템구성도


𒊹5월
챗봇 설계문서
활동내용
챗봇 설계 문서
챗봇 멘토님과 구글미트를 통해 회의한 내용 검토
📞멘토님: 오늘 9시반에 하도록하죠. 얘기할건 요구사항정의서, 챗봇 관련 개발 표준 선정,설계문서 등입니다.
아키텍쳐/ 기능설계
구글 api / 구글 DialogFlow 이용
챗봇 인공지능
1. 화면 설계
2. 대화 흐름/ 화면 프로세스 처리
3. 학사 api 제공 여부
4. 캘린더 api 구축해서 가져오기 추천
5. 기능 콜 예) 출석 어플(LMS 등) call
6. 팀원 역할 분담
향후계획 및 기타사항
- 학사 API 제공 여부 및 학교 챗봇 조사
- DialogFlow 스터디 진행
- 멘티들 간의 효율적인 역할 분담
- 멘토님 회의
활동내용
요구사항 정의서 공유 및 상세 요구사항 검증
- 분석단계 산출물 및 챗봇 API 확인
- 상세기능 구현 가능여부에 대한 검토
향후계획 및 기타사항
- 설계단계 진행
- 프로그램목록, 엔티티정의 등
- 표준 API및 표준 기술 정의
- R&R정의


𒊹 6월
화면설계/대화흐름/ 프로세스
활동내용
Dialogflow 스터디 진행
[화면설계 / 대화흐름 / 프로세스]
화면설계, 대화흐름, 프로세스 세가지 부분이 시간 많이 걸리고 중요해 보이기에 화면설계, 대화흐름, 프로세스는 각자 정리해온 후에 회의하면서 정하는게 나을 것 같다는 판단을 했다.
[역할분배]
챗봇대화흐름(지영, 혜연) / 프로세스(주리, 고은)
[서비스 호출]
🔎학사정보 api와 관련하여 학과 교수님께 여쭈어보았고 돌아오는 답변은 It지원팀에게 문의해라였다.
(모바일 과목 교수님 답변) 쪽지 잘 받았습니다.학교 학사 관련 정보에 오픈API는 없는 것으로 알고 있습니다.정확한 사항은 학교 IT 지원센터로 문의해보기 바랍니다. 대신 웹크로울링 등으로 정보를 획득하는 방법을 고려해볼 수 있을 겁니다. 관련사항이 궁금하면 내게 문의하세요.그럼 수고해요.
🔎에브리타임: 크롤링 기법
🔎캘린더: 구글 API
Dialogflow 스터디 중 Fulfiment를 진행하면서 결제가 필요하다는 사실을 깨달았다.
(6/24 기준) 클라우드 지원이 5월 중 지원 예정되어있던 구글 클라우드는 8월로 연기됨을 알려드립니다.
7월 1차 실습장비 지원을 통해 받는게 좋을 것 같다. Dialogflow를 사용하려고 문의해봤지만 위와같이 안된다는 답변을 받았다.

𒊹 7월
중간평가
중간평가를 대비해야할 것 같다. 중간평가 기한은 6.23(목)~ 7.12(화) 17시까지이다.
활동내용
[중간평가]
중간평가에 필요한 것들을 준비했다. 중간평가 기한은 6.23(목)~ 7.12(화) 17시까지이다.
꼭 들어가야하는 것
- 요구사항 정의서, 서비스 구성도, 메뉴 구성도, 화면 설계서, 엔티티 관계도, 기능 처리도, 프로그램 목록, 테이블 정의서, 핵심 소스코드
두명씩 아래처럼 나눠서 진행
- 엔티티 관계도, 테이블정의서 (erwin 사용)
- 프로그램 기능처리도
향후계획 및 기타사항
- erwin으로 chaobot을 엔티티관계도+테이블 정의서를 구성하였다.
- 중간 평가 정리
맨 처음 표
- 특장점
1-3. 국내외 기술 현황
1-4. 개발목표 및 내용
- 주요 개발내용 (기능중심)
- 기존 기술 활용 여부 및 차별성
2-2. 주요기능
- 전체 기능 목록
- S/W 주요 기능
2-4. 예상 결과물
3-1. 프로젝트 수행 일정
3-2. 프로젝틑 수행 과정에서의 문제점 및 애로사항
4. Git 활용 내용
5-2. 개선사항

𒊹 8월
데이터
활동내용
학사일정 챗봇 데이터에 대한 회의를 진행하였다.
데이터를 어떤 방식으로 사용할 것인가, 사용자는 어떤 데이터가 필요로 하고 있는가, 해당 데이터에 접근 할 수 있는 방법에 대해 이야기 해보았다.
데이터는 파싱하여 JSON형태로 변환할 수 있는 형식으로 제공되도록하였다. 학교 홈페이지에 데이터 수집 후 엑셀 파일에 정리해 JSON으로 변환해 챗봇 데이터를 사용하기로 하였다. 해당 날짜에 학사일정이 없을 경우 빈 데이터로 반환한다.
향후계획 및 기타사항
클라우드 연동 및 신청

𒊹 9월
AWS서버
활동내용
아마존의 aws 서버 사용 최종 결정
- aws - 카카오톡 연계와 aws - DB 연동에 대한 정보 수집
- 챗봇 주요 항목(학사 일정 / 강의시간표)에 따른 역할 분배
- 추후 오프라인 모임을 위한 일정 정리
- aws 서버 지원 신청
향후계획 및 기타사항
- 카카오톡 채널 생성 및 카카오 오픈 빌더 봇 기본 설정
참고 블로그 조사
𒊹 10월
활동내용
- AWS Lambda를 이용해서 서버리스 백엔드를 구축하기로 결정하였다.
- 본격적인 테스트 이전에 카카오i 오픈빌더 채널을 개설하고 kakao i develpoers OBT 계정을 신청하였다.
향후계획 및 기타사항
- 챗봇 개발 역할을 구체화하였고 스터디 분량을 정하여 다음 회의까지 시나리오에 따른 entity를 구상하고 엔트리를 구현하기로 하였다.
더불어 이에 따른 응답도 봇테스트를 통해 테스트하여 패턴 매칭을 해보기로 하였다.

Serverless란?
서버리스란 개발자가 서버를 관리할 필요 없이 애플리케이션을 빌드하고 실행할 수 있도록 하는 클라우드 네이티브 개발 모델이다.
즉, 클라우드 제공업체가 서버 인프라에 대한 프로비저닝, 유지 관리 등을 처리해주기 때문에 개발자는 조금 더 비즈니스 로직 작성에만 집중할 수 있게 된다.
AWS Lambda란?
Lambda는 서버를 프로비저닝하거나 관리하지 않고도 코드를 실행할 수 있게 해주는 컴퓨팅 서비스입니다. Lambda는 고가용성 컴퓨팅 인프라에서 코드를 실행하고 서버와 운영 체제 유지 관리, 용량 프로비저닝 및 자동 조정, 코드 및 보안 패치 배포, 코드 모니터링 및 로깅 등 모든 컴퓨팅 리소스 관리를 수행합니다. Lambda를 사용하면 거의 모든 유형의 애플리케이션 또는 백엔드 서비스에 대한 코드를 실행할 수 있습니다. Lambda가 지원하는 언어 중 하나로 코드를 공급하기만 하면 됩니다.
𒊹 11월
카카오 응답
사용한 기술 스택: Python3.7, AWS Lambda, AWS API Gateway, 카카오 i 오픈빌더.
시나리오 / 엔티티 / 사용자 발화 / 엔티티 매핑 / 파라미터 설정
- 클라우드 지원 문제
GCP를 쓰고 싶었지만 지원문제 때문에 제일 시장이 큰 AWS를 택하였다.
한이음에서 지원이 되는 서비스인 aws로 방향을 틀었다.
- 챗봇 카톡 연계 OR 자체 앱 제작
클라우드가 변경됨에 따라 그동안 챗봇스터디를 처음부터 다시 시작해야했기에 기존 자체 앱 제작을 하면 개인일정을 정리할 수 있다는 장점이 존재하지만 앱을 제작하기에는 개발소요시간을 생각했을때 개발질이 떨어질 수 있을 거라는 문제점이 생겼다.
클라우드 지원이 되는 8월 전에 화면설계/데이터를 준비하고 바로 챗봇을 구성하거나 다른 클라우드로 변경을 해야했다. 하지만 8월에 지원이 미뤄질 수 있는 가능성을 생각하여 챗봇을 카톡 연계로 바꾸어 STT/TTS에 더 집중하여 개발하기로 하였다. - 학사 API에 대한 문제
API가 없음에 따라 어떻게 진행되어야할지에 대한 고민에 빠졌다.
- -크롤링 기법
- DB에 데이터 활용
- XML형식으로 문서를 작성해 연계
- 링크 연결이 나왔다.
카카오
카카오 채널 개설 완료,오픈빌더 신청 -> 승인 허가
데이터
챗봇 시나리오/학사일정/공지사항/강의시간표/사용자캘린더/시간표 (클롤링)
데이터생성
- 학사일정 (엑셀->json/년-일-월-일정)1학기
- 강의 시간표 (크롤링)
- 공지사항 (링크)
-DynamoDB
데이터가 있어야 정확한 응답 가능 응답 디비에 넣는 방법

현재
-DynamoDB는 AWS의 관리형 NoSQL 데이터베이스 서비스로 응답 처리 예정
문제점
-응답 미리보기에서는 나오는데 봇테스트에서는 안나온다

응답이랑 스킬이랑 같이 못있나봄 일정도 디비 연결하고 출력
-봇테스트


-웰컴 블록
일정조회 눌렀을때 저 멘트가 뜨는데 저 답으로 내가 일정을 검색하세요! 이걸 코드로 구현해뒀는데 안돌아감챗봇의 웰컴메세지의 경우 최초 1회 방문자에게만 보여지게 됩니다. 방문이력이 없는 휴대폰을 가지고 테스트하시면 웰컴메세지가 보여질거에요.

misc.xml - 자바버전, 프로젝트 유형과 같은 프로젝트 정보가 들어있음. 사용자별로 다를수있다
'cs > dev' 카테고리의 다른 글
| [CS]프로세스, 스레드, 멀티태스킹, 멀티스레딩, 멀티프로세싱, 멀티프로그래밍까지 (0) | 2025.09.27 |
|---|---|
| 2022년 한이음 ICT 멘토링 후기 [공공데이터를 이용한 마이데이터 서비스 개발] (0) | 2025.09.26 |
| [CS]인터페이스와 추상클래스? (0) | 2025.09.17 |
| [CS]클래스와 객체, 인스턴스의 차이가 뭔가요? (0) | 2025.09.16 |
| [CS]OOP의 4가지 특징 (0) | 2025.09.16 |