Agenda
•
리포트/추천 API에서 분류체계가 사용 되는 방식
•
기존 분류체계 이슈
•
향후 진행 방안
현황
분류 체계가 쓰이는곳
AI 리포트
선생님/학생 → 과목별 리포트
선생님/학생 → 종합 리포트
선생님 → 학생 리포트
추천
홈 → 오늘의 추천 영상
학습 콘텐츠 → 문항 → 랜덤출제/AI 추천 출제
분류체계를 사용하는 방식
AI 리포트
areaId를 기준으로 report를 생성
추천
추천에 기준이 되는 CatIds (분류체계 정보를 받아서 처리)
분류체계가 바뀐다면?
•
Report API
◦
분류체계(신) 조회시 분류체계(구)에 해당하는 Report 결과가 나오지 않음
(LRS/OLAP DB에는 분류체계(구) 기준으로 쌓여있기 때문)
◦
분류체계(신)
분류체계(구) 매핑 작업 (ktds 요청 필요)
▪
eg. 64106423 → 110413
•
추천 API
◦
모든 문제/강의에 분류체계(신)이 잘 매핑되어 있다면, 큰 문제 없이 표출됨
기존 분류체계 이슈
진단 분류 체계와 평가 단위 분류 체계가 상이함
화면 표시
Request
Response
이상적인 구성
itemId | 진단평가단위ID
(eval_unit_seq) | 진단평가단위명
(eval_unit_name) |
51351 | 284 | 품사의 종류와 특성 |
51352 | 285 | 예측하며 읽기 |
현재 구조
•
itemId - 평가단위ID (vw_sc_xip_prbm_catsys / view data 제공받음)
itemId | 평가단위ID
(prbm_cat_id) | Category Type |
51351 | 64102233 | smacat |
51352 | 64102120 | larcat |
•
평가 단위 체계 (vw_sc_xip_prbm_catsys_extension / kiboko 생성)
평가단위ID
(prbm_cat_id) | 평가단위
Category Type | 하위 평가단위 ID | 하위 평가단위
Category Type |
64102254 | ingcat | 64102231 | smacat |
64102254 | ingcat | 64102232 | smacat |
64102254 | ingcat | 64102233 | smacat |
… | |||
64102120 | larcat | 64102254 | ingcat |
•
진단평가단위 - 평가단위ID (vw_ai_frmt_eval_unit_map_prbm_cat_id_extension / kiboko 생성)
진단평가단위ID(eval_unit_seq) | 평가단위ID
(prbm_cat_id) | Category Type |
284 | 64102254 | ingcat |
285 | 64102255 | ingcat |
문제가 되는 Case #1
•
itemId의 category type이 진단평가 단위보다 상위에 있는 경우, 통계에 잡을 수가 없음
•
eg. itemId - 51352
◦
itemId 51352의 Category Type은 larcat
◦
진단평가단위는 ingcat
◦
예측하며 읽기 통계(진단평가단위 ID - 285)에는 51352 item에 해당하는 통계가 누락됨
문제가 되는 Case #2
•
하위 평가단위(Sub Category)의 예외 처리
◦
kiboko 생성한 extension table
평가단위ID
(prbm_cat_id) | 평가단위
Category Type | 하위 평가단위 ID | 하위 평가단위
Category Type |
64102254 | ingcat | 64102231 | smacat |
64102254 | ingcat | 64102232 | smacat |
64102254 | ingcat | 64102233 | smacat |
… | |||
64102120 | larcat | 64102254 | ingcat |
◦
Issue가 되는 Case (하위 평가단위가 0인 Case로 인하여, Data가 정상 출력 되지 않는 경우)
평가단위ID
(prbm_cat_id) | 평가단위
Category Type | 하위 평가단위 ID | 하위 평가단위
Category Type |
64102254 | ingcat | 64102231 | smacat |
64102254 | ingcat | 64102232 | smacat |
64102254 | ingcat | 0 | smacat |
◦
1차 해결
▪
sub_prbm_cat_id <> 0 인 경우, 카테고리 목록에서 제거
•
초4, 초5, 초6 영어 과목의 평가 단위 체계의 변경으로 하위 평가단위(Sub Category)에 0이 있는 Case 발생 → Data 미노출 이슈
◦
Hard Coding으로 초4, 초5, 초6 과목('221430000','221530000','221630000')에 대하여, 예외 처리 해제
진행 방안
분류 체계가 변경된다면?
1.
[ktds] 분류체계(신)
분류체계(구) 매핑 작업 진행
2.
[kiboko] 과거 Data가 함께 집계 될 수 있도록 처리
3.
[ktds] 모든 itemId, lectureId와 분류체계(신) 매핑
4.
[kiboko] Report API Data를 신분류체계에 맞춰서 변경 (Report API 개편이 현실적일 수 있음)
참고) 과거 Data의 집계가 필요 없다면, 1번, 2번 skip 가능