Skip to content

SSAFY 8기 특화 프로젝트 우수상 '단어 학습 서비스 홍민정음'

Notifications You must be signed in to change notification settings

Hello1Robot/HMJE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

홍민정음 : 말랑하조 2조

목차


개요

프로젝트 설명

  • 단어, 문맥 학습을 통한 우리말 학습 플랫폼

프로젝트 일정

  • 2023.02.27 - 2023.04.07

주요 기술 스택

  • BE : Java, Spring Boot, JPA
  • FE : TypeScript, React, three.js, char.js
  • AI : Python, PyTorch, KoNLPy, Librosa

팀 소개

  • 팀명 : 말랑하조(SSAFY 8기 부울경 1반 E102팀)
이름 역할
김남규 BE(관리자 API, 고객센터 API), 서버 배포(CI/CD), TTS
양은진(팀장) BE(회원 관리, 학습, 학습 통계, 칭호, 도감)
최권민 BE(과거시험, 오답공책), 도감 및 과거시험 문제 출제, 오늘의 단어(크롤링, 데이터 분석), PWA
김홍민 FE(마이 페이지, 고객 센터, 칭호, 인트로 페이지, 관리자 페이지), three.js/chart.js, RTK Query
김애림 FE(메인 페이지, 단어 학습, 문맥 학습, 오답 공책, 도감, 복습), 디자인
김찬희 FE(회원 관리 페이지, 사전 페이지, 과거 시험 페이지)

기획서

프로젝트 개요

문제 정의

💬 코로나19로 인한 비대면 수업, 모바일 기기의 사용량 증가 및 독서량 감소에 따른 문해력 저하

개발 동기

기획서 사진1

기획서 사진2

기획서 사진3

  • 코로나19로 인한 비대면 수업 증가
    • 전체 교과의 ‘보통학력 이상’ 비율 감소
    • 국어의 경우 감소세가 가파른 편
    • ‘기초학력 미달’ 비율도 코로나 이전에 비해 크게 증가
  • 모바일 기기의 사용량 증가
  • 영상 매체 선호
    • 짧은 영상 매채 (Yotube Shorts, TikTok)
  • 줄어든 독서량
  • 장문 기피 현상
    • 영상 매체를 통한 요약본 선호
    • 세줄 요약

페르소나

  • 모바일 기기에 익숙한 중학생 2학년 김ㅇㅇ
    • 나이: 15세
    • 직업: 학생
    • 취미: 틱톡 챌린지(거울 닦기 챌린지 view 3천), 유튜브 쇼츠 올리기
    • 성격
      • ENFJ
    • 상황
      • 부모님 모두 맞벌이로, 비대면 기간동안 학습 관리를 받지 못함
      • 책을 읽기 싫어하여 초등학교 이후 독서량 없음
      • 교과서에 나오는 어려운 단어의 뜻을 정확히 모르고 넘어가는 경우가 잦음

차별성

  • 국어국어원 한국어교수학습샘터
    • 한국어 교원의 자질 향상을 위한 웹 서비스
    • 교원을 위한 서비스이다 보니 일반인이 이용하기 쉽지 않음
    • 한국인을 위한 서비스는 다소 부족
    • 게이미피케이션 요소가 없어 교원이 아니면 꾸준히 이용할 유인 부족
  • KOKOA - TOPIK & KOREA
    • 한국어로 말하기, 듣기, 읽기, 쓰기에 과정이 있는 모바일 서비스
    • 또한 한국인이 대상이 아닌 한국어 학습을 원하는 외국인이 대상
    • 240개로 적은 데이터

기대효과

  • 많은 단어를 알게되고, 정확한 뜻을 학습하여 문해력 저하 및 정보 판단 능력 저하를 극복
  • 게이미피케이션(등급, 호칭, 도감)을 통한 자발적 학습 의욕 증진

프로젝트 세부 사항

프로젝트명

  • 홍민정음

주제

  • 문해력 향상을 위한 단어 및 문맥 학습 서비스

주 연령층

  • 학생 및 성인

서비스 특징

  • 인공지능 음성 기능(TTS, SST)을 활용한 우리말 학습 플랫폼
  • 단어 학습을 통한 문해력 향상
  • 반응형 웹을 통한 시간과 장소에 구애받지 않는 서비스
  • 게이미피케이션을 통한 재미있는 학습 환경 제공

주요 기능

  • 단어, 문맥 학습을 음성(STT) 또는 타이핑을 통해 학습
  • 학습을 통해 맞추거나 틀린 단어를 TTS를 통해 듣기
  • 오답노트를 활용한 복습 기능
  • 문맥 도감을 통한 단어 카드 수집 기능
  • 오늘의 추천 단어 : 뉴스 키워드 추출 후 형태소 분석
  • 매달 마지막 주 주말(토,일) 과거 시험을 통해 메인페이지 랭킹 등록
  • 참여도를 게임화 시킨(칭호, 등급) 기능 제공

기능 구체화

1. 학습

학습1. 단어 학습, 오답 공책

study1

  • 단어 학습

    • 단어의 의미를 보여주고 알맞은 단어 찾기

    • 말, 타자로 답안 작성 (STT)

    • 문제 10개씩 구성 (o3 Δ4 x3)

      • 맞은거, 틀린거만 DB에 표시
      • 세모는 그냥 지나감
      • 오답공책에서 두 개 가져와서 사용
    • 문제 1개 당 30초로 구성

    • 도움받기 누르면 초성 힌트 제공

    • 건너뛰기, 그만하기 버튼으로 학습 끝낼 수 있음

    • 결과창 : O, Δ, X 로 보여주기

    • 문제는 난이도에 따라 다른 점수 부여

      • 초급 : 10exp
      • 중급 : 15exp
      • 고급 : 20exp
      • 전체 : 10exp
      • 귀뜸 사용 : 5exp
    • 정답/오답 모달에서 TTS를 통해 단어와 뜻 음성 제공

  • 오답 공책

    • 단어 구분 : 정답⭕/오답 ❌

      완전히 틀린 X만 오답노트로 저장

      뜻만 보이게, 단어만 보이게 가능

      연습

      • ✔ 버튼 누르면 학습1이 실행됨
      • 오답노트안의 모든 단어에서 랜덤으로 추출되며, [중단하기] 버튼을 누르면 끝남

      복습 (단어 detail 카드)

      • 단어를 누르면 넘기는 카드형식으로 보여주고 TTS 사용 가능

      • 단어 클릭시 detail card 보임

학습2. 문맥 학습, 문맥 도감

context

  • 문맥 학습

    • 의미가 다른 다의어가 포함되는 문장 3개 제시
    • 동시에 들어갈 단어를 선택하는 방식
    • 문제 5개 1세트
    • 문제 1개 당 30초로 구성
    • 틀렸을 경우 단어는 알려주지 않고 뜻3개만 제시
    • 건너뛰기, 그만하기 버튼으로 학습 끝낼 수 있음
    • 맞은 문제는 문맥 도감에서 획득
    • DB에 단어 + 뜻 3개 + 문장 3개로 구성되어 있음
    • 한 세트(5문제) 끝나고 DB에 요청
    • 문맥학습은 한 문제당 경험지 30exp
  • 문맥 도감

    • 매일 무제한 획득 가능

      • 레어카드 6장 (레어 카드의 확률은 일반 카드보다 낮음)
        • 권민 : 27 금색
        • 은진: 73은색
        • 애림: 37핑크색
        • 남규: 83짙은파랑색
        • 홍민: 97보라색
        • 찬희: 53초록색
    • 매번 랜덤 5문제 출제

학습3. 과거시험

pasttest

  • 마지막 주 주말마다 과거시험 진행
  • MAIN 페이지에서 과거시험 클릭 시 시험쳤는지 확인
  • 확인 후 응시를 안했으면 “시작하기" 버튼, 이미 응시를 했으면 “응시불가” 버튼
  • 시작하기 버튼을 누르면 -10점을 보내 중간에 나가더라도 응시를 불가하도록 막음.
  • 과거시험 10문제
    • 오지선다
    • 한문제당 30초
  • 결과 페이지에서 경험치와 점수를 보여줌
  • 80점 이상인 사람 ⇒ 장원급제 ⇒ 칭호(뱃지) 획득
  • 시험이 끝나면 (시험기간이 끝) MAIN페이지와 공지사항에서 장원급제한 사람 볼 수 있음.
  • MAIN 페이지에서 시험 공고와 시험 결과 공고를 띄어줌.

2. 오늘의 추천 단어, 장원급제, 오늘의 단어왕

main

  • 오늘의 추천 단어

    • 뉴스 크롤링으로 키워드 추출
    • 워드 클라우드 형태로 제공.
    • 단어 클릭 시 뜻, 예제 제공
  • 과거 시험

    • 과거 시험을 80점 이상으로 통과한 유저 목록
  • 오늘의 단어왕

    • 금일의 단어 학습 데이터를 기반으로 순위 나열

3. 사전

dict

  • 읽어주기
  • 검색 가능
  • 모음별 분류

4. 사용자

mypage

  • 하루 총합 맞은단어, 틀린단어, 세모는 자동으로 초기화

5. 알림 공간

notice

등급[정9] / 경험치

등급

  • 품으로 9단계로 구성 (종품 제외)
  • 등급이 올라가기 위한 경험치 2배씩 커짐 100 200 400 800 1600 … 25600

칭호(뱃지)

: 획득한 것만 보여주기 [ 그림, 날짜, 이름, 방법, 장착하기 버튼 ]

  • 새내기 : 처음 입문시 획득

  • 출석 누적

    • 서당개 : 10일 누적 출석
    • 유생 : 30일 누적 출석
    • 선비 : 90일 누적 출석
    • 승지 : 365일 누적 출석
  • 연속 출석

    • 집현전 막내 : 10일 연속 출석
    • 집현전 학자 : 30일 연속 출석
    • 세종대왕님께 눈도장 : 90일 연속 출석
    • 세종대왕님의 애제자 : 365일 연속 출석
  • 학습 시간

    • 석봉이는 붓잡는 중 : 1시간 학습
    • 석봉이는 글쓰는 중 : 24시간 학습
    • 석봉이는 책 내는 중 : 72시간 학습
    • 석봉이는 떡도 써는 중 : 360시간 학습
  • 도감

    • 문맥 훈장님 : 도감전체 획득
    • 문맥 수집가 : 레어 카드 전체 획득
  • 과거 시험

    • 장원급제 : 제 1회 과거시험 우수자(80점 이상)
  • 이스터에그

    • 한글을 사랑하는 자 : 한글날 접속 시
    • 세종대왕을 사랑하는 자 : 세종대왕님 생신 5/15
    • 말랑말랑 희귀 소지품 : 특정 상호작용 시 얻을 수 있는 칭호 존재(캐릭터 100번 클릭 - 말랑말랑)
    • 일찍 일어나는 새 : 2023.03.27 ~ 04.02 첫 일주일간 이벤트

학습시간

  • 오늘 학습시간 / 총 학습시간
  • 오늘 학습 단어 / 총 학습 단어
  • 오늘 획득한 도감 / 총 획득한 도감
  • 오늘 나의 맞은 단어 / 틀린 단어 / 세모
  • 한달 나의 공부시간 평균
  • 오늘 학습한 사용자의 평균 시간과 비교

학습 통계

학습 통계

  • 학습시간, 학습 단어개수 한달치 그래프로 보여주기
  • 다른 사용자들의 통계와 비교
  • ‘오늘 공부한 사용자’들의 학습시간 평균
  • ‘이번달 나의 학습시간 평균(일일 학습량)
  • ‘오늘 나의 학습시간’

7. TTS

  • Glow-TTS + HiFi-GAN 으로 TTS 구현.
  • KSS 데이터를 이용하여 학습.
  • 학습, 오답공책, 사전 등의 페이지에서 단어를 읽어주는 역할

기능 명세서

1_page-0001

1_page-0002

1_page-0003

1_page-0004

1_page-0005

API 명세서

api1

api2

api3

api4

api5

api6

api7

api8

ERD

erd

시퀀스 다이어그램

시퀀스다이어그램1

시퀀스다이어그램2

시퀀스다이어그램3

시퀀스다이어그램5

시퀀스다이어그램4

시퀀스다이어그램6

시퀀스다이어그램7

아키텍처

back-front-server

python-ai

About

SSAFY 8기 특화 프로젝트 우수상 '단어 학습 서비스 홍민정음'

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published