질문의 유형

완전학습 모듈에서 쓰이는 질문의 형태는 다음과 같은 것들이 있다.

  1. 선다형

    기본 문제 유형이다. 선다형 문제 유형은 여러개의 답안 중에서 하나의 옳은 답을 선택하도록 하는 보편적인 질문 유형이다. 학생들이 정답을 맞췄을 경우에는 진도를 계속 나가고 못 맞췄을 경우에는 그렇지 않다. 오답은 간혹 "distractors"라고 부르며, 이러한 질문의 분산 도구는 종종 정답이나 질문 그 자체보다도 분산능력의 질에 더 좌우된다.

    개개의 답안은 대체로 반응을 가지고 있다. 만일 답안에 대해 아무런 반응도 입력되지 않으면 기본값인 "맞았습니다." 혹은 "틀렸습니다." 라는 메시지가 학생들에게 보여진다.

    선다형 문제에 정답이 하나 이상 있게 하는 것도 가능하다. 개개의 정답에 각기 다른 반응을 주고 학습과정의 다른 쪽으로 건너뛸 수도 있으나 학생들의 점수는 변하지 않는다.(즉 적어도 성적의 관점에서는 한 정답이 다른 정답보다 더 정확하다는 것은 아니다는 것이다.) 또 모든 답안이 정답이 될 수도 있어서 학생들이 한 답에 따라 각기 학습의 다른 부분으로 이동할 수도 있다.

    선다형 질문의 변종에는 소위 "다답형" 질문이 있다. 이것은 학생들로 하여금 답안에서 맞는 답을 모두 선택하게 한다. 질문을 통하여 정답이 몇 개나 되는지를 알려줄 수도 있고 알려 주지 않을 수도 있다. 예를 들어 "다음 중 미국의 대통령은?" 이라고 묻거나 "다음에서 미국 대통령 두명을 골라라." 와 같이 질문할 수 있다. 실제 정답은 하나부터 답안 전부일 수도 있다. (다답형 문항에서의 정답 하나의 의미는 선다형 문항과는 차이가 있는데, 선다형 문항에서는 실제로 답을 하나만 고를 수 있게 되어 있지만, 다답형의 경우에는 하나 이상을 선택할 수 있게 되어있다.)

    다시 정답은 진도를 계속 나갈 수 있게 표시되지만, 오답을 한 경우에는 제자리에 머물거나 뒤로 이동하게 된다. 정답이 하나 이상인 경우에 건너뜀은 오답을 했을 경우와 마찬가지로 모두 제자리에 있도록 해야한다. 만약 그렇게 하지 않을 경우 교사의 관점에서 보면 경고가 뜨게 된다. 반응을 할 경우에는 정답에 대한 반응은 첫번째 정답 반응난에 기재하여야 하며, 오답에 대한 반응도 첫번째 오답 반응난에 기재하여야만 한다. 다른 답안에 대한 반응은 무시된다(경고없음).

  2. 단답형

    학생들이 짧은 문장을 입력하여 답하게 한다. 입력한 답안은 하나 혹는 다수의 답안과 비교 검토한 후 맞고 틀리고가 결정된다. 각 답안들은 반응을 가질 수 있다. 만일 아무런 반응도 입력되지 않았으면 기본값인 "맞았습니다." 혹은 "틀렸습니다." 라는 메시지가 학생들에게 보여진다. 만일 학생들이 입력한 답을 답안과 비교하여 일치하는 것이 없으면 틀림으로 판정하고 오답 반응이 학생들에게 보여준다.

    단답형의 답을 확인하는 방법에는 두가지 다른 검색 시스템을 사용할 수 있다. 기본적으로는 단순 검색 시스템이 쓰인다. 만일 "정규 표현식 사용" 옵션 박스에 기표하면 "정규 표현" 시스템이 사용된다.

    • 단순 분석

      이 (기본)분석에서는 문서의 대소문자를 가리지 않는다. 별표(*)는 답에 있어 "임의 대치문자"로 해석된다. 이는 어떤 수의 문자(공백을 포함하여)로도 대치될 수 있다. 예를 들어 답을 "Long*" 처럼 주게되면 "longer", "longest" 및 "long" 도 정답으로 해석한다. 만일 답을 "*" (하나의 별표)로 입력해 놓으면, 어떠한 입력내용도 정답으로 처리하게 되며, 이는 대체로 마지막 "catch-all" 답안으로 사용한다. 검색 과정은 화면에 표시된 순서대로 답안을 비교한다. 일단 일치하는 내용을 발견하면 검색을 멈추고 해당하는 반응(입력해 놓았다면)을 보여준다. 따라서 위의 예에서 답을 (순서대로)Longest, Long* 그리고 * 로 입력해 두었다면, 학생이 입력한 "longer" 는 두번째와 일치할 것이고, 이 경우 비록 세번째의 답과 일치한다 할지라도 무시된다.

      만약 실제로 답에 별표가 필요하다면 반드시 \* 처럼 백슬래쉬 뒤에 별표를 적어야 한다.

    • 정규 표현식 분석

      이 시스템은 학생들의 답안을 분석함에 있어 좀 더 강력하기는 하나 다소 난해한 설정이 필요하다. 정규 표현식에 대한 완벽한 안내를 보조 싶으면 정규 표현식 지침서rezeau.org를 접속하여 알아보기 바란다.

      정규 표현식을 이용한 정답 추출

      여기에서 방대한 정규표현식의 예제를 다루는 것은 불가능하므로 몇 가지 사례만 보여주기로 한다.

      예제 1. 여러분의 질문이 다음과 같다고 하자. "What are the colors of the French flag?". 답란에 다음처럼 정규 표현식으로 입력하면 "it’s blue, white(,| and) red/i" 아래와 같은 답은 모두 정답처리된다.

      • it’s blue, white, red
      • it’s blue, white and red
      • It’s blue, white, red
      • It’s blue, white and red

      정규표현식의 경우 기본적으로 대소문자를 달리 처리한다는 사실을 염두에 두기 바랍니다. 만일 대소문자를 구별하지 않고 처리하고자 할 경우에는 표현식의 마지막에 반드시 /i 파라메타를 덧붙여야 합니다.

      예제 2. Question: "What is blue, or red, or yellow?". Answer: "(|it's )a colou?r". 이 경우 다음은 정답 처리된다.

      • a colour
      • a color
      • it's a colour
      • it's a color

      참고 - 정규 표현식의 앞 "(|it's )" 은 이를 생략하거나 "it's "("it's" 뒤에 빈칸)과 일치하게 된다. 물음표(?)는 앞의 글자가 생략되어도 관계없다는 것을 의미한다. 여기에서는 영국식 표현과 미국식 표현을 다 맞게하기 위해 사용되었다.

      예제 3. Question: "Name an animal whose name is made of 3 letters and the middle letter is the vowel a". Anwer: "[bcr]at". This will match: bat, cat and rat.

      필요한 단어나 문자열이 빠진 것을 검출

      정규표현식 그 자체로는 문자열이 빠진 것을 검출해 내지 못한다. 따라서 이를 다루기 위해서는 답지에 약간의 코드를 넣어야만 한다. 예제 4와 같이 이중 하이픈을 넣어 답을 작성해 놓으면 이를 근거로 학생들의 답에서 그 문자열이 있는지 없는지를 검색한다. 만일 발견되면 그 다음 질문으로 진행한다. 만약 그 문자열이 발견되지 않으면 분석을 그만두고 그에 따른 반응을 학생에게 보여준다.

      예제 4.

      • Answer 2: --.*blue.*/i
      • student answer: "it's red and white"
      • Response 2: The color of the sky is missing!
      • Jump 2: this page

      위에서, .(마침표)은 “임의 문자” 그리고 *(별표)는 “임의 문자열” 을 의미한다. 답2의 정규표현식의 의미는 다음과 같다: 앞 뒤에 어떤 단어가 오든지 막론하고, 학생들의 답에서 문자열 "blue"를 검색하여 이 문자열이 없으면 반응을 출력하라. 정규표현식에서 쓰는 별표의 의미는 단순 검색시스템에서 쓰이는 별표의 의미와 차이가 있다는 사실을 염두에 두길 바란다.

      예제 5. Question: "Name an animal whose name is made of 3 letters and the middle letter is the vowel a". Teacher Answer: "--[b|c|r]". Response: "Your answer should start with one of these letters: b, c or r"

      원하지 않는(혹은 부정확한) 단어나 문자열 검출

      학생의 답안에서 있어서는 안 될(바르지 않기 때문에) 단어들을 검출해 내고자 하거나 특별한 반응을 위해 단어를 추출해 내고 싶을 때가 있다. 이 때는 두개의 더하기 기호(++)를 사용하면 된다.

      예제 6.

      • Answer 3: ++(yellow|black|orange|green|black|pink)/i
      • student answer: "it's blue, orange and white"
      • Response 3: One or more colors are wrong!
      • Jump 3: this page

      만일 학생들의 답안에서 바르지 않은 색을 검출하면, 잘못했을 때의 반응(반응 3)을 보여주고 잘못된 문자열은 붉은 색(혹은 현재 쓰고있는 테마의 CSS 스타일쉬트의 .incorrect 에서 정의한 색깔)으로 표시해 준다.

      예제 7. Question: "Name an animal whose name is made of 3 letters and the middle letter is the vowel a". Teacher Answer: "++hat". Response: "You might wear one made of an animal's skin, but a hat can't be considered as an animal."

      특수 문자 표현

      만일 정규표현식에서 사용되는 특수 문자를 사용해야 할 필요가 있으면, 특별한 표현 방법(예를 들면 그 문자앞에 백슬러시를 붙인다)을 이용하여 작성해야 한다. 즉 만일 "My computer cost 1000$"을 정답으로 인정하려면 정규표현식으로는 "My computer cost 1000\$"를 입력해야 한다. 여기에서 특수 문자란 .^$*()[]+?| 를 말한다.

  3. 진위형 이러한 질문의 답안은 단지 맞음(O), 틀림(X)의 두 개만 존재한다. 학생들은 두 답안 중 하나를 선택하면 된다. 이 유형은 본질적으로 선다형 문제에서 답안이 두개인 경우와 같다.

  4. 일치형(관계형) 이는 매우 강력하고 유연성있는 질문 형태다. 이것들은 서로 관련이 있는 명칭이나 진술들로 구성되어 있어서 일치하는 명칭 혹은 진술을 짝을 짓도록 요구하는 것이다. 예를 들면 "국가와 수도를 짝짓기"라는 질문을 주고 각 목록에 한국, 일본, 카나다 또 한 목록에는 도쿄, 오타와, 서울 을 제시한다. 한편 목록에 반복해서 내용을 제시할 수는 있지만, 목록이 일치할 수 있도록 유의하여야 한다. 다음은 그 예시를 보인다. "다음의 내용을 속성이 같은 것끼리 짝 지어라" (참새, 소, 개미, 개)(새, 동물, 곤충, 동물)

    이런 유형의 문제를 만들 때는 첫번째 목록의 항목들은 답안난에 넣고 두번째 목록의 항목들은 반응난에 적어 넣는다. 일단 만들어지면 좀 더 의미있는 표제난이 나타난다. 학생들이 성공적으로 항목들을 연결시키면 첫번째 답의 건너뜀이 사용된다. 만일 실패하게 되면 두번째 답의 건너뜀으로 가게 된다. 이 유형의 질문은 일반적 반응을 지원하지 않고, 학생들이 몇 개나 일치시켰는지 또는 다 맞았는지를 알려준다.

    답안을 무작위로 제시할 수 있는 선다형 문제와는 다르게 첫번제 항목의 목록은 뒤섞이지 않고 처음 입력한 순서대로 보여준다. 이는 순서로 나열할 수 있는 질문을 만들 수 있게 해 준다. 첫째 목록에 1., 2., 3., 4.를 넣고 두번째 목록에 Longfellow, Lawrence, Lowell, Larkin 을 넣은 후 다음과 같이 질문을 한다고 하자. " Put the following into the order they were born, the earliest first" 물론 두번째 목록은 학생들에게 제시되기 전에 섞일 것이다.

  5. 수치형 이 질문의 유형은 답으로 숫자를 입력받는다. 가장 간단한 형태에서는 단 하나의 답만 지정된다. 즉 "What is 2 plus 2?" 과 같은 형태로 4를 입력받으면 다음 단계로 진행한다. 하지만 범위를 지정해 주는 것이 좋은데, 내부적으로 수치값을 반올림하는 것은 단일 숫자 비교가 적중율이 높기 때문이다. 따라서 만일 질문이 "10 나누기 3은?" 이라면 답은 "Minimum:Maximum"형태로 해서 두 값을 콜론(:)으로 분리해 적는다. 만일 답을 3.33:3.34 로 입력하면 학생들이 제출한 3.33, 3.333, 3.3333... 등은 모두 정답으로 처리하게 된다. 하지만 3.3(최소값보다 작음) 과 3.4(최대값보다 큼)은 오답으로 처리된다.

    하나 이상의 정답도 허용되는데 이 역시 하나의 값이나 한 쌍의 값들로 입력될 수 있다. 즉 답 1, 답 2... 처럼 여러 답을 쓸 수는 있지만 이 경우 원하는 결과를 얻기 위해서는 답을 제시하는 순서에 상당한 주의가 요망된다. 예를들어 질문이 "When was Larkin born?"라고 할 때 정확한 답은 하나의 값으로 1922 이지만 정확하지는 않지만 20년대란 의미로서 1920:1929 처럼 한 쌍으로 답을 입력할 수도 있다. 이 때 교사가 답을 입력하는 순서가 중요한데 물론 1922 다음에 1920:1929 를 넣는게 좋다. 그리고 첫 답에 대한 반응을 "정확하게 맞췄습니다."로 하고 두번째 답에 대한 반응은 "답에 근접했습니다. 동일 시대입니다."로 쓸 수 있다.

    실제로 그 범위에 따라 오답도 제시할 수가 있는데, 정답의 뒤에 둔다는 것에 유의하여야 한다. 예를 들어 "10 나누기 3은?"이라는 질문에 대한 오답에 3:4 를 입력하려고 하면 정답인 3.33:3.34 뒤에 넣어야 한다는 것이다. 따라서 답을 입력하려면 3.33:3.34 ("맞는" 답) 그리고 3:4 ("틀린" 답, 대체로 틀린 값이다!)의 순서로 해야 한다.

도움말 파일 색인