이 페이지의 내용은 이전 릴리스에 관한 것입니다. 해당 영문 페이지는 최신 릴리스에서 제거되었습니다.
학습자 답안 테스트하기
학습자가 정답을 제출했는지 여부를 판단하려면 평가 테스트를 작성합니다. 테스트를 작성할 때 학습자가 흔히 범하는 오류 유형을 생각해 보고 이러한 조건에 대한 테스트를 포함하도록 하십시오. 다음 예제는 평가 테스트를 만들 때 고려해야 할 일반적인 조건 중 일부를 보여줍니다. 예제에는 테스트 실행 후 학습자에게 출력으로 제공할 메시지에 대한 제안이 포함되어 있습니다.
예제 문제
여러분이 문제를 작성하고 평가 테스트를 만드는 데 도움이 되도록 MathWorks® 직원이 작성한 예제 문제가 제공됩니다. 이러한 예제 문제는 문제를 작성하고 학습자 제출 답안의 정확성 여부를 테스트하기 위한 평가 테스트를 작성하는 모범 사례를 보여줍니다.
평가 테스트
평가 테스트를 작성하는 경우:
평가 방법을 정답/오답 또는 가중치 적용으로 설정할 수 있습니다. 평가 방법에 따라 문제에 할당된 점수가 부여되는 방식이 결정됩니다.
평가 테스트가 사전 테스트임을 표시할 수 있습니다.
테스트 유형은 다음 옵션 중 하나일 수 있습니다.
모범 답안과 비교 (스크립트 문제에만 해당, 함수 문제의 경우 평가 함수
assessVariableEqual
사용)함수 또는 키워드가 있는지 여부
함수 또는 키워드가 없는지 여부
MATLAB® 코드를 사용하여 평가 테스트 작성
MATLAB 코드를 제외한 모든 옵션을 MATLAB 코드로 변환할 수 있습니다.
이러한 유형에 대한 자세한 내용은 함수 기반 학습자 답안에 대한 평가 작성하기 및 스크립트 기반 학습자 답안에 대한 평가 작성하기 항목을 참조하십시오.
정답/오답 평가
정답/오답 방법을 선택하면 문제는 통과/실패로 처리됩니다. 정답/오답으로 정의된 평가 조건에서는 모든 테스트에 통과하면 1을 반환하고, 테스트 중 하나라도 통과하지 못하면 0을 반환합니다. 결과가 모두 정답이면 가능한 최대 점수가 부여됩니다. 결과가 오답으로 표시되면 점수가 부여되지 않습니다.
가중치 적용 평가
가중치 적용 방법을 선택하면 부분 점수를 부여할 수 있습니다. 각 평가 테스트에 가능한 총 점수의 백분율을 할당할 수 있습니다. 각 평가 테스트에 할당된 점수 값(가중치)을 변경하여 백분율을 수정할 수도 있습니다. 부여되는 점수는 정답으로 표시된 평가 결과의 백분율을 합산한 다음 가능한 최대 점수를 곱하여 결정됩니다.
예를 들어, 두 개의 평가 테스트가 있는 문제가 있다고 가정해 보겠습니다. 첫 번째 평가를 통과하면 점수의 1/3(33%)을 부여하고 두 번째 평가를 통과하면 2/3(67%)를 부여하려고 합니다. 이 경우에는 평가 테스트를 작성할 때 첫 번째 평가 테스트에 1점을 할당하고 두 번째 테스트에 2점을 할당하면 됩니다.
다음 이미지는 평가 테스트에 가중치를 적용했을 때 학습자에게 표시되는 내용을 보여줍니다.
답안을 제출하기 전에는 평가 결과가 비어 있습니다.
평가 테스트의 조건을 통과한 답안을 제출하면 평가 결과 색이 녹색으로 변경되고 제목에 "모든 테스트 통과 (100%)"라고 표시되며, 세부 정보에는 테스트 이름과 그 오른쪽에 녹색 확인 표시와 100%가 표시됩니다.
평가 테스트의 조건을 통과하지 못한 답안을 제출하면 평가 결과 색이 빨간색으로 변경되고 제목에 "테스트 1개 중 0개 통과함 (0%)"이라고 표시되며, 목록에는 0%와 통과하지 못한 이유(예: “제출 답안에는 x라는 변수가 있어야 합니다.")가 표시됩니다.
평가 테스트에 가중치가 적용되었음을 표시하려면 평가 방법으로 가중치 적용
을 선택하십시오.
여러 개의 평가 테스트를 작성할 때 각 평가 테스트에 점수를 할당하여 필요한 가중치를 할당할 수 있습니다. 다음 예는 테스트 1에 33%에 해당하는 1점이 부여되었고 테스트 2에 67%에 해당하는 2점이 부여된 것을 보여줍니다.
학습자에게 백분율을 표시할 수 있습니다. 다음 예에서는 평가 이름과 평가 테스트에 부여된 백분율이 나와 있는 학습자 보기를 볼 수 있습니다.
학습자 피드백
사용자 지정 피드백 표시하기
평가에 통과하지 못한 학습자에게 사용자 지정 피드백을 추가로 제공할 수 있습니다. 이 피드백은 서식 지정된 텍스트, 하이퍼텍스트 링크, 이미지 및 수학 방정식을 비롯한 서식 있는 텍스트 형식을 사용하여 작성할 수 있습니다.
다음 이미지는 글머리 기호, 수학 방정식, 올바른 형식의 코드 및 그림이 포함된 문제 설명을 보여줍니다.
초기 오류에 대한 피드백만 표시하기 (스크립트 기반 문제)
스크립트 기반 문제에서는 초기 오류가 후속 오류를 발생시킬 수 있습니다. 학습자가 초기 오류에 우선적으로 집중하도록 유도할 수 있습니다.
초기 오류에 대한 피드백만 표시 옵션을 선택하면 초기 오류에 대한 자세한 피드백이 표시되지만 후속 오류에 대해서는 피드백이 기본적으로 숨겨집니다. 학습자는 피드백 표시를 클릭하여 이 추가 피드백을 표시할 수 있습니다.
사전 테스트
사전 테스트는 학습자가 채점을 위해 답안을 제출하지 않고 실행할 수 있는 평가이며 다음과 같은 점에서 일반 평가와 다릅니다.
학습자가 사전 테스트를 실행해도 사전 테스트 결과는 성적표에 기록되지 않습니다.
사전 테스트 실행은 제출 횟수 제한에 포함되지 않습니다.
학습자가 사전 테스트의 평가 코드와 이 코드가 생성한 출력을 볼 수 있습니다(MATLAB 코드 테스트 유형에만 해당).
사전 테스트를 사용하면 학습자가 답안을 제출하기 전에 답안이 올바른 방향으로 가고 있는지 확인할 수 있습니다. 학습자가 답안을 제출하면 사전 테스트 역시 실행되어 일반 평가와 동일하게 처리되며 최종 성적에 반영됩니다.
사전 테스트는 올바르지만 서로 다른 접근 방식이 여러 개 있거나 제출 횟수가 제한된 문제에 도움이 될 수 있습니다. Getting Started with MATLAB Grader 문제은행의 "Calculating voltage using Kirchhoff loops"를 예로 들어 보겠습니다. 이 문제를 풀려면 학습자는 연립방정식을 작성해야 합니다. 이를 수행하는 올바른 방법은 여러 가지가 있지만 모범 답안과 일치하는 답안만 정답으로 표시됩니다. 따라서 강사는 학습자가 제출하기 전에 방정식 순서가 올바른지 확인할 수 있도록 사전 테스트를 하나 추가했습니다.
제출 시간 제한
MATLAB Grader™에서는 60초의 실행 시간 제한을 적용합니다. 시간은 학습자가 실행 또는 제출을 클릭하면 시작되고 출력 또는 평가 결과가 학습자에게 표시되면 중지됩니다. 시간 제한에 도달하면 서버가 시간 초과되었다는 오류 메시지가 표시됩니다. 총 실행 시간에 영향을 미치는 요소는 학습자가 답안을 실행 중인지 아니면 제출 중인지와 학습자가 스크립트 기반 문제를 풀고 있는지 아니면 함수 기반 문제를 풀고 있는지에 따라 달라집니다.
MATLAB 코드를 실행하는 데 사용되는 계산 환경은 MATLAB Grader에서 사용하는 환경과 매우 유사하므로 모범 답안을 실행하는 데 필요한 시간을 추정하려면 MATLAB Online™을 사용하여 모범 답안을 실행합니다.
참고
학습자가 스크립트 실행 또는 함수 실행을 클릭하여 코드 출력은 볼 수 있지만, 답안을 제출했을 때 "제출한 답안을 실행하고 평가하는 중 서버가 시간 초과되었습니다."라는 오류 메시지가 표시되는 경우도 있습니다. 이 오류는 모범 답안과 모든 평가를 실행하는 데 필요한 추가 실행 시간으로 인해 발생합니다.
스크립트 기반 문제 답안의 실행 시간
스크립트 기반 문제는 다음 순서로 실행됩니다.
스크립트 실행 | 제출 |
---|---|
학습자 답안을 한 번 실행 |
|
다음 예제를 살펴보겠습니다.
예제 #1: 실행 시간 제한을 초과할 확률이 낮음
실행할 코드 | 실행 시간 |
---|---|
모범 답안 | 약 20초 |
일반적인 학습자 답안 | 약 20초 |
3개의 평가 | 각 약 1초(총 약 3초) |
일반적인 총 실행 시간: 약 45초(네트워크 오버헤드 포함)
이 시나리오에서 시간 초과 오류는 학습자 답안에 오류가 있거나, 코드가 비효율적이거나, 화면에 표시하는 출력이 지나치게 많을 경우 발생할 수 있습니다.
예제 #2: 실행 시간 제한을 초과할 확률이 높음
실행할 코드 | 실행 시간 |
---|---|
모범 답안 | 약 25초 |
일반적인 학습자 답안 | 약 25초 |
3개의 평가 | 각 약 1초(총 약 3초) |
일반적인 총 실행 시간: 약 65초(네트워크 오버헤드 포함)
이 시나리오에서 학습자는 답안을 실행할 수 있지만 제출 시 실행 시간 제한을 초과할 가능성이 높습니다. 이 문제를 재설계하거나 제거해야 할 수 있습니다.
함수 기반 문제 답안의 실행 시간
함수 기반 문제 답안은 다음 순서로 실행됩니다.
함수 실행 | 제출 |
---|---|
함수를 호출할 코드의 코드를 실행합니다. | 모든 평가를 순차적으로 실행합니다. |
함수를 테스트하려면 함수를 호출해야 합니다. 학습자가 함수 기반 문제에 대한 답안을 제출하면 평가만 실행됩니다. 일반적으로 각 평가는 동일한 입력으로 참조 함수와 학습자 함수를 호출하고 결과 출력을 비교하여 정확성을 확인합니다. 이는 단일 함수 유형 문제가 참조 함수와 학습자 함수를 여러 번 실행할 수 있음을 의미합니다.
다음 예제를 살펴보겠습니다.
예제 #1: 실행 시간 제한을 초과할 확률이 낮음
이 예제에서 각 평가는 서로 다른 입력을 사용하여 학습자의 함수를 평가합니다. 참조 함수와 일반적인 학습자 답안은 모두 실행하는 데 약 5초씩 걸립니다.
실행할 코드 | 실행 시간 |
---|---|
3개의 평가 | 각 약 10초(총 약 30초) |
일반적인 총 실행 시간: 약 32초(네트워크 오버헤드 포함)
이 시나리오에서 시간 초과 오류는 학습자 답안에 오류가 있거나, 코드가 비효율적이거나, 화면에 표시하는 출력이 지나치게 많을 경우 발생할 수 있습니다.
예제 #2: 실행 시간 제한을 초과할 확률이 높음
이 예제에서 각 평가는 서로 다른 입력을 사용하여 학습자의 함수를 평가합니다. 참조 함수와 일반적인 학습자 답안은 모두 실행하는 데 약 10초씩 걸립니다.
실행할 코드 | 실행 시간 |
---|---|
3개의 평가 | 각 약 20초(총 약 60초) |
일반적인 총 실행 시간: 약 62초(네트워크 오버헤드 포함)
이 시나리오에서 학습자는 답안을 실행할 수 있지만 제출 시 실행 시간 제한을 초과할 가능성이 높습니다. 이 문제를 재설계하거나 제거해야 할 수 있습니다.