이어하기
모든 코드가 컴퓨터에 들어 있는 것은 아니에요. 레고® 모델을 조립하는 방법을 알려주는 유사 코드를 만들어보세요!
개요
- 이 수업은 레고® 에듀케이션 개인 학습 키트 프라임을 이용해 수행합니다.
- 이번 수업은 학생들이 각자 레고 모델을 하나씩 조립하고, 그 조립 방법을 설명하기 위한 유사 코드를 만들고, 파트너와 유사 코드를 공유하는 방식으로 진행됩니다.
이번 수업의 특징:
- 킥스타트 비지니스 학습단원의 첫 출발을 위한 입문 목적의 수업으로 적합합니다.
- 주문하기 또는 고장 수업에 전후하여 유사 코드를 만드는 방법을 소개하거나 보강할 수 있습니다.
- 자동화해요! 수업에 앞서 개방형 프로젝트의 기초를 다질 수 있습니다.
- 학습단원이 끝날 무렵에 학생들의 학습 확장을 위해 활용할 수 있습니다.
- 개인 학습 키트(PLK)는 가정내 학습용입니다. 학교의 배포 정책에 따라 사용하세요.
- 시각적 수업 프레젠테이션 자료가 본 수업 계획의 추가 리소스 섹션을 통해 제공됩니다. 이 프레젠테이션을 이용해 수업 진행 속도를 조절하고 5E의 각 요소를 학생들에게 설명해주세요.
코딩 개념
- 알고리즘: 과제 수행을 위한 단계별 지침의 집합입니다.
- 버그: 코딩 오류를 의미합니다. 오류를 해결하는 프 로세스는 디버깅이라고 합니다.
- 분해: 코드를 더 작은 부분 또는 더 작은 문제로 분해하는 것을 의미합니다.
- 유사 코드: 컴퓨터에 코딩하기 전에 알고리즘의 단계를 설명하기 위한 서면 계획을 의미합니다. 유사 코드는 프로그래머가 문제(버그)를 식별 내지 예측하고 코딩 단계의 세분화(분해)를 위한 계획을 세우는 데 도움이 됩니다.
착수
(10분)
코딩에 대한 학생들의 배경 지식을 타진하는 차원에서 간략히 토의를 진행하세요.
- 이러한 토의는 교사와 학생이 함께 코드와 코딩의 정의를 내리고 개념을 공유하는 데 도움이 됩니다.
질문 예시:
- 코드가 뭔가요? (샘플 응답: 과제를 어떻게 수행할 것인지를 기계나 로봇에게 알려주기 위해 사용하는 모종의 수단 또는 컴퓨터를 이용해 게임을 프로그래밍하는 등의 재미있고 창의적인 활동을 위한 수단)
- 코드를 지칭하는 다른 단어를 들어본 적이 있나요? (코딩에 익숙한 학생들에게서 “알고리즘, 유사 코드, 버그” 등의 단어가 언급될 수 있습니다. 이러한 개념을 인지하고 있는 학생들에게 자신이 알고 있는 바를 공유하게 하세요.)
- 코드가 어떤 모습으로 눈에 보이나요? (샘플 응답: 블록, 텍스트, 숫자)
명확한 지침의 목적에 대한 토의가 이루어지도록 대화를 이끌어가되, 다음과 같은 요지에 초점을 맞추세요.
- 코드는 한마디로 지침의 집합이에요. 우리의 아침 일과를 코드로 만들어볼까요! 코드의 모양이 어떻게 보일까요? 아침에 일어나자마자 가장 먼저 뭘 하나요? (샘플 응답: 알람 끄기, 침대에서 일어나기, 옷입기, 아침 식사, 양치질 등)
- 이상적인 지침 집합의 특징이 무엇일까요? (샘플 응답: 명확함, 체계적임, 올바른 순서)
수업 프레젠테이션의 첫 번째 착수 페이지를 화면에 띄우세요.
- 신발 끈 매기를 위한 시각적 지침이 이 페이지에 표시되어 있습니다.
다음과 같은 질문을 이용해 토의를 이어가세요.
- 이 코드가 어떤가요? (샘플 응답: 무엇을 해야 할지를 알려주며, 일종의 지침 집합에 해당합니다.)
- 이러한 지침이 어떻게 도움이 되나요? (샘플 응답: 어떠한 순서에 따라 무엇을 해야 할지를 숫자를 통해 알려줍니다.)
- 이상적인 지침 집합의 특징이 무엇일까요? (샘플 응답: 명확함, 체계적임, 올바른 순서)
수업 프레젠테이션의 두 번째 착수 페이지를 화면에 띄우세요.
- 레고 에듀케이션 스파이크™ 프라임 주문하기 수업(킥스타트 비지니스 학습단원의 일부)에 사용되는 코드의 예가 이 페이지에 제시되어 있습니다. 이 프로그래밍 스택은 “품질 검사” 로봇을 제어하는 기능을 합니다.
다음과 같은 요지를 중심으로 토의를 이어가세요.
- 이 프로그래밍 스택은 “품질 검사” 로봇의 제어를 위해 사용됩니다. 이 프로그램의 기능은 로봇을 “켜는” 것입니다.
- 이 코드가 로봇에게 무얼 하라고 알려주나요? (단계별 지침이 아래에 유사 코드로 쓰여 있습니다.)
- 학생들이 방금 자신의 언어로 코드를 설명한 것이 다름아니라 알고리즘을 만드는 연습에 해당하며, 아울러 유사 코드를 작성할 준비를 마친 것임을 알려주세요.
- 프로그램이 시작됩니다.
- 모터 A와 F의 속도를 50%로 설정합니다.
- 모터 A와 F가 가장 짧은 경로를 따라 350도만큼 이동합니다.
- 모터가 정해진 위치로 이동하는 대로 “Connect” 사운드가 재생됩니다.
- 거리 센서에 불이 켜집니다.
- 라이트 매트릭스가 하트 박동 모양을 10번 점멸합니다.
- 라이트 매트릭스가 하트 이미지를 영구히 표시합니다.
하이브리드 학습 팁 - 착수 단계
동기식
- 예정된 수업 시간 중에 학급 전체가 참여하는 가상 토의를 진행하세요. 교사가 말하는 시간을 최소한도로 줄이고, 학생들에게 스스로 대답하거나 질문을 할 것을 장려하세요. 온라인 투표 도구 또는 채팅 기능을 활용하여 모두가 참여할 수 있는 환경을 조성하세요.
비동기식
- 수업 프레젠테이션의 착수 페이지를 화면에 띄우고, 학생들에게 개인적으로 직접 답을 하게 할 것인지 아니면 학급 토의 게시판을 통해 집단적으로 답을 하게 할 것인지를 정하세요. 온라인 토의 게시판은 모든 학생의 동시 참석이 불가한 상황에서도 급우간 참여를 장려할 수 있다는 점에서 꽤 유용한 도구가 될 수 있습니다.
탐구
(15분)
- 학생들에게 개인 학습 키트를 열고 브릭을 살펴보라고 하세요.
- 조립 가이드는 주어지지 않습니다. 학생들에게 다섯 개의 브릭을 골라 동물 모델을 조립하되, 이 레고 오리 모델을 참조하여 각자 아이디어를 구상하게 하세요.
학생들에게 수업 프레젠테이션의 탐구 페이지를 과제 수행의 길잡이로 활용하게 하세요.
과제 진행 방법:
조립: 다른 사람이 조립할 레고 동물을 디자인하세요. 브릭을 5개까지 사용할 수 있어요.
코드: 학생들에게 자신의 모델을 조립하기 위해 필요한 단계를 글로 쓰게 하고, 이것이 바로 유사 코드라는 점을 설명해주세요.
프로그램: 학생들에게 둘씩 짝을 이루게 하세요. 파트너 1에게 자신의 유사 코드를 파트너 2와 공유하게 하세요. 이어 파트너 2에게 자신이 들은 그대로 파트너 1의 유사 코드에 따라 조립을 하게 하세요. 그 다음, 서로 역할을 바꾸세요.
이 활동은 학급 단위의 역할 놀이 형식으로도 수행할 수 있습니다. 모든 학생에게 각자 레고 모델의 조립을 위한 유사 코드를 만들게 한 다음, 한 명씩 번갈아 유사 코드를 공유하는 가운데 나머지 학생들에게는 주어진 지침에 따라 모델을 조립하게 하세요.
하이브리드 학습 팁 - 탐구 단계
이번 시간을 일종의 사회활동 삼아 학생들이 공동 조립의 즐거움을 느끼도록 해주세요.
동기식
- 학생들이 온라인으로 참석하는 경우, 모두가 하나의 방에 모여 함께 조립을 하는 가운데 한 명의 학생이 학급 전체에 유사 코드를 공유하는 방법을 사용할 수 있습니다. 아니면 학생들에게 과제방에서 소규모 그룹 단위로 조립을 하고 각각의 소규모 그룹별로 유사 코드를 공유하게 하세요.
비동기식
- 학생들에게 가족의 도움을 얻어 가정내 활동을 위한 지정 공간을 마련하게 하세요. 조립과 테스트를 수행해야 하므로, 조명이 밝고 어수선한 잡동사니가 없으며 평평한 곳이 적당하겠죠. 학생마다 가정내 상황이 다를 것이라는 점을 유념하세요.
설명
(10분)
- 학생들이 조립과 코딩 과제를 완료하는 대로 자신의 경험을 파트너와 공유하게 하세요.
- 수업 프레젠테이션의 설명 페이지에 학생들의 피드백 주고받기에 도움이 될 만한 대화 문구가 예시되어 있습니다.
- 학생들에게 피드백을 함에 있어 눈 맞춤과 부드러운 어조에 주의하고 구체적인 예제에 초점을 맞춰야 한다는 것을 상기시켜주세요. 아울러 학생들에게 피드백에 기초하여 발명품을 개선할 방법을 검토해볼 것을 장려하세요.
아래에 제시된 피드백 주기 문구 예시를 참조하세요.
- ...에 대해 정말 감명을 받았다
- ...에 대해 더 알고 싶다
- 나도 ...와 같은 생각이다
- 내 생각은 ...와 좀 다르다
- ...을 제안하고 싶다
아래에 제시된 피드백 받기 문구 예시를 참조하세요.
- 어느 지침이 명확했는가?
- 무엇을 개선할 수 있을까?
- 어떤 버그를 고칠 수 있을까?
피드백 주고받기를 마치는 대로 학생들에게 이 활동이 어떤 점에서 프로그래밍과 비슷한지 설명해보라고 하세요.
질문 예시:
- 이 활동이 어떤 점에서 프로그래밍과 비슷한가요? (샘플 응답: 다른 사람이 따라야 할 지침을 글로 쓴다는 것이 마치 컴퓨터가 따라야 할 코드를 작성하는 것과 비슷합니다.)
- 왜 유사 코드를 만드는 것일까요? (샘플 응답: 코드를 컴퓨터에 입력하기 전에 코드 작성 계획을 세우는 데 도움이 되며, 결과적으로 잠재적인 버그를 예상할 수 있습니다.)
- 유사 코드의 어떤 부분에 주의를 기울여야 할까요? (샘플 응답: 세부 요소의 중요성, 모든 단계의 순서가 올바른지 여부.)
하이브리드 학습 팁 - 설명 단계
동기식
- 학생들이 온라인으로 참석하는 경우, 수업 프레젠테이션 설명 페이지의 피드백 대화 문구를 검토하고, 과제방에서 소규모 그룹 단위로 피드백을 주고받게 하세요.
- 과제방을 방문하여 각 그룹별로 특정한 피드백을 공유하게 하는 방법을 통해 학생들의 이해도를 점검하세요.
- 학생들의 질문에 답을 하고, 필수 개념을 보다 정확히 이해할 수 있도록 잘못 알고 있는 부분을 직접 바로잡아주세요.
비동기식
- 피드백 사항을 그룹 전체에 다시 말해주거나 그룹 채팅창에 댓글을 게시하는 방식을 통해 학생들에게 자신의 피드백을 점검해보게 하세요.
다듬기
(5분)
- 학생들에게 다른 레고 모델을 이용해 이 활동을 다시 수행하는 것이 가능할지에 대해 브레인스토밍을 하게 하세요.
- 수업 프레젠테이션의 다듬기 페이지에 제시된 아이디어 모델을 보여주세요.
질문 예시:
- 새로운 레고 모델을 사용하여 이 활동을 다시 수행하라면 어떻게 할 건가요?
- 유사 코드를 어떻게 개선할 수 있을까요?
- 어떤 지침들을 한데 그룹화할 수 있을까요?
- 프로그램을 쉽게 따라할 수 있도록 하려면 어떻게 해야 할까요?
새 모델을 디자인하고 유사 코드 지침을 만드는 것만으로도 시간이 빠듯할 수 있습니다. 그러할 경우, 역할 연기 부분을 다음 수업 세션으로 미루도록 하세요.
하이브리드 학습 팁 - 다듬기 단계
동기식
- 예정된 대로 온라인 공유 세션을 열고, 학생들에게 솔루션을 수정할 방법을 공유하게 하세요.
비동기식
- 학생들의 작품 공유를 위한 가상 갤러리 환경을 조성하고, 각자 창작품의 사진과 비디오를 게시한 후에 서로의 작품을 확인하게 하세요.
평가
(5분)
- 학생 개개인별로 자신의 유사 코드에 단계별 지침(즉, 알고리즘)이 어떻게 표시되는지를 사례를 통해 설명한 후에, 유사 코드의 어느 부분에서 문제를 찾아내고 수정했는지를 예시하게 하세요.
학생들에게 자신의 성과에 대한 자체 평가 결과에 따라 아래와 같이 색상 브릭을 들어올리게 하세요.
- 빨간색 브릭: 약간의 도움만 주어진다면 유사 코드를 작성하고 프로그램을 디버깅할 수 있다.
- 노란색 브릭: 유사 코드를 작성하고 프로그램을 디버깅할 수 있다.
- 녹색 브릭: 유사 코드를 작성하고 프로그램을 디버깅하는 방법을 타인에게 가르칠 수 있다.
하이브리드 학습 팁 - 평가 단계
평가를 위한 방법은 매우 다양하며, 글쓰기 과제, 실시간 또는 녹음 형태의 구두 프레젠테이션, 학생들의 이해도를 보여주는 그림 등이 사용될 수 있습니다.
동기식
- 예정된 수업 시간 중에 학급 전체가 참여하는 가상 토의를 진행하세요.
비동기식
- 학생들에게 글쓰기 과제물, 실시간 또는 녹음 형태의 구두 프레젠테이션, 학생들의 이해도를 보여주는 그림 등을 게시하고 자신의 활동 결과물을 검토하게 하세요.
교사 지원
학생 과제:
- 단계별 유사 코드 지침의 집합을 만들고 그대로 따라해보세요.
- 유사 코드의 문제를 분해하고 식별하고 수정하세요.
- 레고® 에듀케이션 개인 학습 키트 프라임(학생 당 1개), 또는 다른 레고 브릭이나 적절한 대체용 교구(학생 당 하나)
- 수업 프레젠테이션(추가 리소스 참조)
- 종이(학생 당 2장)
- 쓰기/그리기 도구(펜, 연필, 마커)