Skip to content
Junsu Kim

Posts

국제표준은 시스템 사이의 계약이다

국제표준은 좋은 제품 이름이 아니라, 서로 다른 시스템이 같은 데이터를 같은 뜻으로 주고받기 위한 공개 계약이다.

학교의 학적 시스템, 학습 화면, 분석 화면이 같은 사람과 같은 수업을 다르게 적으면 데이터는 움직여도 의미는 움직이지 않는다. 국제표준은 이 문제를 줄이기 위한 공개 계약이다. 이 글의 범위는 교육 데이터 표준을 읽기 전에 알아야 하는 층위 구분이다.

여기서 말하는 표준은 제품명이 아니다. 특정 회사가 만든 화면도 아니다. 서로 다른 시스템이 데이터를 주고받을 때, 어떤 대상을 어떤 이름과 구조로 표현할지 합의한 문서다.

이 글의 정의

표준: 여러 시스템이 같은 데이터를 같은 뜻으로 교환하기 위해 공개적으로 합의한 데이터 모델, 용어, 전송 방식이다.

범위: 이 글은 표준, 프로파일, 인증, 제품 구현을 구분한다. 각 표준의 모든 필드는 설명하지 않는다.

제외 대상: 특정 제품의 기능 우열, 영업 자료, 도입 절차는 이 글의 범위가 아니다.

먼저 나눌 층위

표준을 이해할 때 가장 흔한 실수는 서로 다른 층위를 한 단어로 부르는 것이다. “OneRoster를 한다”라는 말 안에는 표준 문서를 읽는 일, CSV 파일을 만드는 일, REST API를 구현하는 일, 시험을 통과하는 일이 같이 섞일 수 있다.

같은 말로 불리는 네 층위를 짚어서 구분한다

현장 데이터 · 시스템마다 이름과 단위가 다르다표준프로파일인증제품 구현

도해의 지점을 짚거나 Tab으로 옮겨 보십시오

표준

어떤 데이터를 어떤 구조와 칸 이름으로 주고받을지 정한 공개 문서다. 제품 기능이 아니라 교환 계약이다.

프로파일

표준을 다시 만드는 일이 아니다. 특정 국가나 학교급에 맞게 필드와 규칙의 범위를 좁힌다.

인증

문서를 이해했는지가 아니라 구현물이 요구사항을 통과했는지 시험하는 절차다.

제품 구현

실제 서비스가 표준을 읽고 쓰는 코드와 화면과 운영 절차다. 인증을 받았더라도 운영 범위와 데이터 책임은 따로 설명해야 한다.

네 층위는 위에서 아래로 이어지지만 같은 말이 아니다. 표준을 안다고 해서 제품이 바로 연동되지는 않는다. 제품이 일부 필드를 지원한다고 해서 인증을 받은 것도 아니다. 인증을 받았다고 해서 모든 국가의 요구사항을 자동으로 만족하는 것도 아니다.

왜 필요한가

교육 현장에서는 같은 대상이 여러 시스템에 흩어진다. 학교 행정 시스템은 사람과 반을 관리한다. 학습 화면은 수업 활동을 기록한다. 분석 화면은 나중에 완료율과 참여율을 계산한다. 이때 시스템마다 사람, 반, 수업, 활동의 단위가 다르면 숫자가 맞지 않는다.

표준은 이 차이를 없애는 만능 장치가 아니다. 표준은 먼저 “무엇을 같은 것으로 볼지”를 정하는 출발점이다.

데이터 이동

  1. 원천 시스템 학적 시스템이 사람, 반, 수업, 수강 정보를 관리한다.
  2. 표준 payload OneRoster 같은 규약이 그 정보를 정해진 칸 이름으로 표현한다.
  3. 소비 시스템 학습 화면이나 콘텐츠 서비스가 같은 반과 같은 사람을 읽는다.

학습 기록도 같은 방식으로 볼 수 있다. 학습 화면이 어떤 활동을 기록하면, xAPI는 그 활동을 라는 구조로 표현한다. 핵심은 누가, 어떤 행동을, 어떤 대상에 했는지다. 이 기록을 저장하고 조회하는 자리가 다.

학습 기록 예시

  1. 학습 화면 김준수가 4과를 완료했다는 사건이 생긴다.
  2. xAPI Statement Actor, Verb, Object 같은 칸으로 사건을 표현한다.
  3. LRS 나중에 조회할 수 있도록 Statement를 저장한다.

아닌 것

표준은 학습 효과를 증명하지 않는다. 표준은 데이터가 같은 뜻으로 이동하도록 돕는다. 표준을 쓴 뒤에도 어떤 지표를 만들지, 어떤 화면을 보여 줄지, 어떤 운영 판단을 할지는 별도로 정해야 한다.

표준은 인증과도 다르다. 인증은 구현물이 요구사항을 충족했는지 확인하는 절차다. 따라서 글에서 “표준”, “프로파일”, “인증”, “구현”을 섞어 쓰면 독자는 무엇이 문서의 요구사항이고 무엇이 제품의 선택인지 알 수 없다.

다음에 읽을 글

명단 데이터는 OneRoster는 누가 그 반인지를 넘긴다에서 다룬다. 학습 활동 기록은 학습 기록은 한 줄이 한 건이다에서 다룬다. 숫자와 지표를 쓰기 전에 단위를 정하는 원칙은 숫자보다 정의를 먼저 쓴다에 둔다. 이 층위 위에서 데이터의 뜻을 기계가 읽게 만드는 작업은 온톨로지는 세 번 만들어봐야 안다에서 시작한다.