Dev/Architecture

[Architecture] xAPI란? + LRS

헝그리둘기 2025. 11. 7. 09:08

xAPI (https://xapi.com/learning-record-store/)

 

- 개념

Experience API 로써, 학사관리시스템(LMS)안팎에서 발생한 학습 경험에 대한 기록을 저장하고 추적하기 위한 표준 설계 모델이다.

레거시 시스템에서 주로 활용되던 SCORM 모델보다 활동 기록 범위가 넓고 데이터의 저장소가 다르다.

 

- 구조

xAPI 데이터는 항상 다음과 같은 세 가지 필수 요소로 구성된 JSON 문장 형식으로 기록된다.

Actor (누가) + Verb (무엇을 했는지) + Object (무엇에 대해)

즉, 주어+동사+목적어이다.

예) 김둘기가 비둘기밥의 이해 과목에 대해 수강신청했다.

{
  "actor": {
    "name": "DulgiKim"
  },
  "verb": {
    "id": "http://example.com/xapi/verb/apply",
  },
  "object": {
    "id": "http://example.com/xapi/object/SUBJ01",
    "objectType": "Activity",
    "definition": {
      "name": {"ko-KR": "비둘기밥의 이해"}
    }
  }
}

 


LRS

 

- 개념

Learing Record Store로써, xAPI 규격의 데이터를 저장하고 조회하는 일종의 xAPI구현체이다.

 

- 프로세스

1. 클라이언트에서 학습 데이터를 xAPI표준에 맞추어 xAPI서버로 post요청을 전송

-> xAPI서버에서 데이터를 받아 함께 설치된 DB에 저장

2. 클라이언트에서 xAPI서버에 get요청을 전송

-> xAPI서버에서 데이터를 응답

 

- 종류

오픈소스 LRS의 종류는 Yet Analytics LRSQL (PostgreSQL같은 RDBMS 기반), Learning Locker (MongoDB같은 noSQL기반) 등이 있음

 

 

 

정정, 참고 댓글 환영합니다.