제공된 예에서는 다양한 사용 사례를 충족하는 학기 데이터 피드의 구성을 보여줍니다. 이러한 예에서는 사용 사례를 충족하는 데 필요한 가장 간단한 데이터 피드를 사용합니다. 멤버십 기록을 생성하는 데 사용할 수 있는 학기 피드 헤더는 더 있습니다. 교육기관의 정보 시스템과 학적 담당자의 요구 사항 및 계획을 분석하면 데이터 및 학기(및 연결된 코스/조직)의 수명 주기 목표를 충족하며 Learn을 적절히 채우는 데 필요한 데이터의 상세 수준을 결정하는 데 도움이 됩니다.
해당 예는 통합 구성 UI에 표시되는 기본 Learn 설정을 기반으로 합니다. 이러한 구성 요소를 변경하면 해당 예의 결과가 변경됩니다. 이러한 설정에 대한 설명은 학생 정보 시스템 프레임워크 개요에서 확인할 수 있습니다. 또한 달리 언급된 내용이 없는 한, 통합은 모든 수신 데이터에 동일한 데이터 소스를 사용하도록 구성되어 있다고 가정합니다.
학기 객체에 대하여
학기 객체는 코스 및 조직에 대한 접근을 조직화 및 제어하는 또 다른 유용한 수단을 제공합니다. 학기 객체를 사용하여 코스에 대한 접근을 제어하는 경우에는 학기에서 지정한 설정이 코스 데이터에 대해 달리 제공된 설정을 재정의합니다. 즉, 코스 수준에서 시작 날짜 또는 종료 날짜와 기간을 지정하는 경우 해당 설정은 연결된 학기에 지정된 설정으로 대체됩니다.
이 주제에서는 스냅숏 플랫 파일을 사용하여 학기 객체를 생성하고 관리하는 방법을 설명하며, 코스 데이터 피드에서 학기 객체를 사용하는 한 가지 예를 보여 줍니다.
스냅숏 플랫 파일의 데이터 관리
학생 정보 시스템 프레임워크에서는 Learn 시스템에서 제공하는 URL 집합 및 UI 피드 업로드를 통해 스냅숏 플랫 파일의 데이터 피드 업로드를 지원합니다.
학생 정보 시스템 통합 UI의 시스템 관리자 데이터 통합에서 사용할 수 있는 통합 메뉴를 통해 HTTP 정보에 접근하고 피드 파일을 업로드하십시오.
두 경우 모두 데이터 작업의 동작은 선택한 작업 유형 및 통합 구성에 따라 진행됩니다. 피드의 데이터가 '해석'되는 방식은 선택한 데이터 작업 유형에 따라 결정되며, 각 URL에서는 원하는 통합 목표를 충족하기 위해 서로 다른 결과를 제공합니다.
이 예에서는 스냅숏 프레임워크의 UI인 피드 파일 업로드 기능을 사용합니다. 명령줄/프로그래밍 작업을 자동화하거나 달리 사용하는 방법을 알아보려면 스냅숏 플랫 파일 자동화를 참조하십시오.
작업
데이터는 Learn에 제공한 이후 업데이트, 제거 또는 수정할 수 있으므로 관리자는 가장 간단한 데이터 집합으로 시작한 뒤 교육기관의 데이터 요구 사항이 변경됨에 따라 데이터를 확대할 수 있습니다.
다음과 같은 작업은 UI 및 HTTP를 통해 사용할 수 있습니다.
작업 | 설명 |
---|---|
저장 | 통합 구성에 따라 제공된 기록을 저장 또는 업데이트합니다. 이 작업 유형을 사용하면 피드 파일에 포함된 데이터가 통합에서 소유하는 모든 데이터 소스에서 저장 또는 업데이트됩니다(구성 설정에 따라). 데이터 '소유권'에 대해 자세히 알아보려면 학생 정보 시스템 프레임워크 개요를 참조하십시오. 데이터 소스 키에 대해 자세히 알아보려면 데이터 소스 키 개요를 참조하십시오. |
새로 고침 | 피드 및 Learn에서 제공된 기록을 저장, 업데이트 또는 비활성화합니다. 이 작업을 수행하면 데이터 피드에 포함된 데이터가 저장 또는 업데이트되는 동시에, 통합과 연결된 데이터 피드에 포함되어 있지 않은 데이터가 모든 데이터 소스에서 비활성화됩니다. |
삭제 | 제공된 기록을 비활성화합니다. 이 작업을 수행하면 통합과 연결된 데이터 피드에 포함된 기록이 통합 설정에 따라 모든 데이터 소스에서 비활성화됩니다. |
학기 작업과 연결된 객체는 다음과 같습니다.
학기 | 저장, 새로 고침 완료, 삭제, 데이터 소스 기준 새로 고침 완료 |
제공된 예에서는 스냅숏 프레임워크의 UI인 피드 파일 업로드 기능을 사용합니다. 명령줄/프로그래밍 작업을 자동화하거나 달리 활용하는 방법을 알아보려면 스냅숏 플랫 파일 자동화를 참조하십시오.
데이터 소스 키에 대한 미리 알림
모든 데이터 객체는 해당 데이터 집합을 그룹화하기 위해 데이터 소스 키를 변경하는 기능을 지원하며, 연결된 데이터 소스를 변경하는 데 사용될 수 있습니다. 참고: 이는 프레임워크 기반 데이터 피드에서 필수 필드가 아니며, 달리 언급된 내용이 없는 한 제공된 예에서는 통합이 단일 데이터 소스를 사용하도록 구성되었다고 가정합니다. 데이터 소스 키 개요를 참조하십시오.
필드 매핑에 대한 참고 사항
필드 매핑을 사용하면 Learn에 저장되기 전에 수신 데이터를 변경할 수 있습니다. 이 기능을 사용하면 저장된 데이터를 제어할 수 있으며, 제공된 학생 정보 시스템 데이터가 충분하지 않은 경우 Learn용 규칙을 충족할 수 있습니다(예: 데이터 피드에서 비밀번호가 제공되지 않아 사용자 비밀번호를 생성하는 경우).
학기 객체 필드에 적용되면 연결된 스크립트가 객체별로 실행되어 Learn에 저장되기 전에 데이터를 변경하거나 제공합니다. 필드 매핑에 대한 자세한 설명은 스냅숏 플랫 파일의 사용자 지정 필드 매핑에 나와 있습니다.
학기 예시
상위 수준에서 모든 학기 데이터 작업에 적용될 수 있는 세 가지 학생 정보 시스템 통합의 데이터 피드 패턴을 확인할 수 있으며, 어떤 패턴을 선택할지는 제공할 수 있는 데이터에 따라 달라집니다.
- 단일 피드 파일을 사용하여 기록을 비활성화(삭제)하는 것과는 별개인 프로세스를 활용하여 기록을 저장 및 업데이트(저장)할 수 있습니다.
- 단일 피드 파일을 사용하여 기록을 저장, 업데이트 및 비활성화(새로 고침)할 수 있습니다.
- 파일 조합을 사용하여 하나의 조합으로 저장하고, 또 다른 조합으로 비활성화할 수 있습니다.
마지막으로, 학생 정보 시스템 피드 패턴은 아니지만 알아두면 유용한 사항은 UI에서 사용할 수 있는 데이터 소스 관리 도구를 활용하면 DSK만을 기반으로 하여 비활성화 및 제거할 수도 있다는 점입니다. 이러한 방식으로 학생 정보 시스템에서 제공한 데이터를 관리할 때는 매우 신중해야 합니다. 이는 학생 정보 시스템을 통해 제공된 적이 없거나 더 이상 제공되지 않는 데이터 또는 테스트 작업의 결과인 데이터를 제거할 때 매우 유용합니다.
기본 사항: 학기
모든 학기 객체에는 설정을 위한 기본 정보 집합이 필요합니다. 이 정보 집합은 스냅숏 플랫 파일의 데이터 형식 및 스냅숏 플랫 파일의 헤더 설명에 자세히 설명되어 있습니다.
데이터 요약
Learn에서 멤버십 계정을 생성하는 데 필요한 최소 데이터 집합 또는 헤더는 다음과 같이 구성됩니다.
- EXTERNAL_TERM_KEY - 이 학기 기록의 고유 식별자입니다.
- DATA_SOURCE_KEY - 이 기록의 데이터 집합에 대한 고유 식별자입니다. 참고: 이는 피드에서 또는 통합 구성을 통해 제공됩니다.
- NAME - 학기와 연결된 이름입니다. 이는 학기 기록을 검색할 때 검색되는 항목이므로 시간이 지남에 따라 학기를 더 쉽게 구별할 수 있게 해주는 명명 규칙을 사용하는 것이 좋습니다. 예: '가을' 대신 '인문과학, 2013년 가을'을 사용합니다.
통합 구성에 따라 학생 정보 시스템 프레임워크에서는 필수가 아닌 필드에 기본값을 제공하거나 그러한 필드를 무시합니다. 학기 피드에 대해 필수 항목이 아닌 세 가지 유용한 데이터 요소는 DESCRIPTION, AVAILABLE_IND, ROW_STATUS이며, 이러한 요소는 다른 Learn 객체와 동일한 방식으로 작동합니다. 또한 학기 객체를 사용하여 코스에 대한 접근을 제어하려면 START_DATE 및 END_DATE 데이터 요소를 사용하십시오. 이와 관련된 내용은 아래의 사용 사례에서 다룰 예정입니다.
이러한 헤더는 각각 스냅숏 플랫 파일의 헤더 설명에 자세히 설명되어 있습니다.
학기 객체 추가하기
학기 객체를 사용하여 코스 사용 가능성을 제어하려면 먼저 학기 객체를 생성해야 합니다.
학기 정보를 추가하는 사례로는 두 가지가 있습니다. 첫 번째는 멤버십 정보를 추가적으로 저장하여 데이터 피드에 표시되는 바와 같이 기록이 추가 또는 업데이트되도록 하는 것입니다. 두 번째는 Learn에 이미 표시되어 있는 학기 정보를 새로 고쳐서 데이터 파일에 표시되는 바와 같이 기록이 생성되거나 기존 기록이 업데이트되는 동시에 학기 데이터 파일에 표시되어 있지 않은 기존의 Learn 기록이 비활성화되도록 하는 것입니다.
저장 작업 예시
예 1: 학기 생성하기
기존 기록에 영향을 주지 않고 2013~2014학년도의 학기를 Learn에 추가하고자 합니다. 의과 대학 및 인문과학 대학에는 서로 다른 학기가 필요합니다.
통합은 모든 수신 데이터에 동일한 데이터 소스를 사용하도록 구성되어 있습니다.
전제 조건
없음
최소 데이터 피드 요구 사항
EXTERNAL_TERM_KEY
NAME
해결책
시스템에 추가하려는 학기별 필수 헤더 및 연결된 데이터가 포함된 terms.txt 데이터 파일을 생성하십시오. 예:
EXTERNAL_TERM_KEY|NAME
AS_FA.2013|Arts and Sciences Fall 2013
AS_WI.2014|Arts and Sciences Winter 2014
AS_SP.2014|Arts and Sciences Spring 2014
AS_SU.2014|Arts and Sciences Summer 2014
MED_T1.2013|School of Medicine Term 1 2013
MED_T2.2014|School of Medicine Term 2 2013
MED_T3.2014|School of Medicine Term 3 2013
저장 작업을 사용하여 학기 데이터 유형을 통해 UI로 위 내용이 포함된 파일을 업로드하십시오. 학기 기록이 생성되고 시스템 관리자의 학기 도구를 통해 해당 기록을 검색할 수 있습니다.
사후 조건
학기 객체가 인문과학 대학의 경우 4개, 의과 대학의 경우 3개로 두 학교에 대해 모두 생성됩니다.
예 2: 학기 업데이트하기
기존 기록에 영향을 주지 않고 2013~2014학년도의 학기를 추가 및 업데이트하고자 합니다. 또한 학기 기록의 활성화된 상태 및 사용 가능성을 명시적으로 제어하고자 합니다. 인문과학 대학은 학기별로 시작 날짜와 종료 날짜가 다르기 때문에 연결된 코스의 표시 여부를 제어하기 위해 각 학교의 학기 시작 날짜와 종료 날짜를 설정하고자 합니다.
통합은 모든 수신 데이터에 동일한 데이터 소스를 사용하도록 구성되어 있습니다.
전제 조건
없음
최소 데이터 피드 요구 사항
EXTERNAL_TERM_KEY
NAME
AVAILABILITY_IND
DURATION
END_DATE
ROW_STATUS
START_DATE
해결책
시스템에 추가하거나 업데이트하려는 학기별 필수 헤더 및 연결된 데이터가 포함된 terms.txt 데이터 파일을 생성하십시오.
START_DATE 및 END_DATE를 적절히 활용하려면 DURATION도 지정해야 합니다(RANGE). 예를 들면 다음과 같습니다.
EXTERNAL_TERM_KEY|NAME|START_DATE|END_DATE|DURATION|AVAILABLE_IND|ROW_STATUS
AS_FA.2013|Arts and Sciences Fall 2013|20130915|20131205|RANGE|Y|ENABLED
AS_WI.2014|Arts and Sciences Winter 2014|20140103|20140418|RANGE|Y|ENABLED
AS_SP.2014|Arts and Sciences Spring 2014|20140420|20140520|RANGE|Y|ENABLED
AS_SU.2014|Arts and Sciences Summer 2014|20140608|20140820|RANGE|Y|ENABLED
MED_T1.2013|School of Medicine Term 1 2013|20130801|20131215|RANGE|Y|ENABLED
MED_T2.2014|School of Medicine Term 2 2014|20140110|20140602|RANGE|Y|ENABLED
MED_T3.2014|School of Medicine Term 3 2014|20140603|20140818|RANGE|Y|ENABLED
사후 조건
학기 객체가 생성되거나 업데이트되어 학기 기록의 사용 가능성과 각 학기의 시작과 끝을 명시적으로 설정합니다. 코스와 연결된 경우에는 연결된 학기에 따라 코스의 표시 여부가 제어됩니다.
새로 고침 작업 예시
예: 학기 생성 또는 비활성화하기
더 이상 필요하지 않은 기록은 비활성화하면서 2013~2014학년도에 대한 학기를 추가하고 업데이트하고자 합니다. 또한 학기 기록의 활성화된 상태 및 사용 가능성을 명시적으로 제어하고자 합니다. 인문과학 대학은 학기별로 학기 시작 날짜와 종료 날짜가 다르기 때문에 연결된 코스의 표시 여부를 제어하기 위해 각 학교의 학기 시작 날짜와 종료 날짜를 설정하고자 합니다.
통합은 모든 수신 데이터에 동일한 데이터 소스를 사용하도록 구성되어 있습니다.
전제 조건
없음
최소 데이터 피드 요구 사항
EXTERNAL_TERM_KEY
NAME
AVAILABILITY_IND
DURATION
END_DATE
ROW_STATUS
START_DATE
해결책
시스템에 추가하거나 업데이트하려는 학기별 필수 헤더 및 연결된 데이터가 포함된 terms.txt 데이터 파일을 생성하십시오.
START_DATE 및 END_DATE를 적절히 활용하려면 DURATION도 지정해야 합니다(RANGE). 예:
EXTERNAL_TERM_KEY|NAME|START_DATE|END_DATE|DURATION|AVAILABLE_IND|ROW_STATUS
AS_FA.2013|Arts and Sciences Fall 2013|20130915|20131205|RANGE|Y|ENABLED
AS_WI.2014|Arts and Sciences Winter 2014|20140103|20140418|RANGE|Y|ENABLED
AS_SP.2014|Arts and Sciences Spring 2014|20140420|20140520|RANGE|Y|ENABLED
AS_SU.2014|Arts and Sciences Summer 2014|20140608|20140820|RANGE|Y|ENABLED
MED_T1.2013|School of Medicine Term 1 2013|20130801|20131215|RANGE|Y|ENABLED
MED_T2.2014|School of Medicine Term 2 2014|20140110|20140602|RANGE|Y|ENABLED
MED_T3.2014|School of Medicine Term 3 2014|20140603|20140818|RANGE|Y|ENABLED
사후 조건
COMPLETE_REFRESH
데이터 파일에 포함된 학기 기록이 생성 또는 업데이트되어 명시적으로 학기 기록의 사용 가능성을 설정하고 해당 학기와 연결된 코스를 언제부터(start_date) 언제까지(start_date) 사용할 수 있는지를 제공합니다. 모든 COMPLETE_REFRESH 작업과 마찬가지로 제출된 데이터 집합에 포함되지 않은 모든 기록은 비활성화됩니다(데이터 피드: ROW_STATUS=DISABLED, 데이터베이스: ROWSTATUS=0).
COMPLETE_REFRESH_BY_DATA_SOURCE
데이터 파일에 포함된 학기 기록이 학기 기록의 사용 가능성을 설정하고 해당 학기와 연결된 코스를 사용할 수 있으며(start_date) 언제 이 코스를 사용할 수 없는지(end_date)에 대한 범위가 지정된 사용 가능성을 제공하면서 명시적으로 생성 또는 업데이트됩니다. 모든 COMPLETE_REFRESH_BY_DATA_SOURCE 작업과 마찬가지로 제출된 데이터에 포함되어 있지 않으며 통합의 구성된 데이터 소스와 일치하는 데이터 소스 키를 지닌 모든 기록이 비활성화됩니다(데이터 피드: ROW_STATUS=DISABLED, 데이터베이스: ROWSTATUS=0). 통합이 구성된 데이터 소스와 연결되지 않은 학기 기록은 영향을 받지 않습니다.
코스 피드에서 학기 사용하기
조직과 코스에서는 학기 관리를 위해 동일한 패턴을 공유합니다. 제공된 예에서는 계속 코스의 학기 객체 사용을 집중적으로 살펴봅니다.
학기 객체를 사용하면 코스의 사용 가능성, 기간, 날짜, 사용 가능성 및 행 상태를 제어할 수 있고, 학기 객체와 연결된 코스 그룹에 동일한 설정을 적용할 수 있습니다. 학기는 코스 피드에서 선택적 데이터 요소입니다.
선택한 작업에 따라 정상적인 작업 결과로 Learn에 데이터가 전송될 것입니다.
예: 사용 가능성 관리하기
이 예에서는 인문과학 대학의 2014년 각 학기에 대해 학기 객체를 생성했는데, 이제 의과 대학에서 해당 학기 객체를 사용하여 각 학교의 일부 코스의 사용 가능성을 관리하고자 합니다.
전제 조건
코스와 연결하려는 학기 객체를 생성했습니다. 전제 조건은 없습니다. 코스가 생성되고 제공된 학기와 연결되거나 TERM의 DURATION 유형에 명시된 대로 학기 연결을 사용하여 업데이트됩니다.
최소 데이터 피드 요구 사항
EXTERNAL_COURSE_KEY
COURSE_ID
COURSE_NAME
DURATION
TERM_KEY
해결책
시스템에 추가하거나 업데이트하려는 코스별 필수 헤더 및 연결된 데이터가 포함된 termmanagedcourses.txt 데이터 파일을 생성하십시오.
START_DATE 및 END_DATE를 적절히 활용하려면 DURATION도 지정해야 합니다(RANGE). 예:
EXTERNAL_COURSE_KEY|COURSE_ID|COURSE_NAME|DURATION|TERM_KEY
AHIST.101-01.03.FA2013|AHIST.101-01.03.FA2013|Art History 101|TERM|AS_FA.2013
AHIST.101-01.03.WI2013|AHIST.101-01.03.WI2013|Art History 101|TERM|AS_WI.2014
AHIST.101-01.03.SP2013|AHIST.101-01.03.SP2013|Art History 101|TERM|AS_SP.2014
AHIST.101-01.03.SU2013|AHIST.101-01.03.SU2013|Art History 101|TERM|AS_SU.2014
ANAT.100-01.T1|ANAT.100-01.T1|Basic Anatomy|TERM|MED_T1.2013
ANAT.100-01.T2|ANAT.200-01.T2|Intermediate Anatomy|TERM|MED_T2.2014
ANAT.100-01.T3|ANAT.300-01.T3|Advanced Anatomy|TERM|MED_T3.2014
사후 조건
데이터 피드의 코스가 생성 또는 업데이트되고 각 코스와 연결된 학기의 매개변수에 따라 지정된 대로 사용자에게 표시됩니다. 다른 시스템 데이터가 받는 영향은 다음과 같이 데이터를 Learn에 로드하는 데 사용하는 작업에 따라 달라집니다.
저장
저장 작업을 사용하는 경우에는 영향을 받는 다른 데이터가 없으며, 데이터 피드 파일에 포함된 데이터만 추가 또는 업데이트됩니다.
새로 고침 완료
새로 고침 완료 작업을 사용하면 파일에 포함된 데이터가 추가 또는 업데이트됩니다. 즉, 이 데이터 소스에 의해 관리되는 다른 모든 데이터는 데이터 소스와 관계없이 데이터 파일에 없다는 이유로 비활성화됩니다.
데이터 소스 기준 새로 고침 완료
데이터 소스 기준 새로 고침 완료 작업을 사용하면 파일에 포함된 데이터가 추가 또는 업데이트됩니다. 즉, 이 데이터 소스에 의해 관리되며 이 통합의 구성된 데이터 소스와 연결된 다른 모든 데이터는 비활성화됩니다. 피드 파일에 포함되지 않고 통합 데이터 소스와 연결되지 않은 데이터는 영향을 받지 않습니다.