SPIKE™ Prime with Python

AI 개념의 시작: 리스트를 이용한 단어 게임

리스트를 만들어서 단어 게임 기반의 이야기를 완성합니다

90-120분
고급
초3-중3학년

탐색을 위한 질문

• 여러 리스트를 동시에 사용하고 액세스할 수 있도록 하려면 어떻게 해야 할까요?

준비

• 스파이크 프라임 허브가 충전되어 있는지 확인하세요(특히 블루투스로 연결되어 있는 경우).

관심유도

(그룹 활동, 15분)

학생들에게 단어 게임을 설명해주세요. 간략히 말해, 학생들이 특정 유형의 단어를 제시하고, 단어들을 모아 이야기를 완성하는 것이 게임의 규칙입니다.

학생들에게 다음 주제와 관련된 예제 단어를 제시해보라고 하세요.
• 장소
• 형용사
• 도구 또는 기계
• 색상
• 동물의 종류

학급 전체에 샘플 스토리를 읽어주되, 학생들이 선택한 단어 중 일부를 빈 칸에 넣어주도록 하세요.

케이트와 카일이 어느날 __(장소)______에 앉아 이야기를 나누다가 함께 낚시를 가기로 했어요. 케이트는 (형용사) 물고기를 정말 잡아보고 싶었어요. 그런데 고기를 잡으려면 먼저 ___(도구 또는 기계)_를 찾아야 하겠죠. 다행히도 카일은 이웃이 (색상) 어망을 갖고 있다는 것을 알고 있었어요. 결국 둘은 어망을 빌려서 곧장 연못으로 달려갔는데, 막상 가보니 물고기 대신 ___(동물)___이 보이더라고요.

단어를 바꿔서 더 재미있게 각색하여 이야기를 여러 번 읽어보는 것도 좋겠죠.
학생들에게 게임에 필요한 단어가 될만한 것으로 적어도 5개 이상의 단어를 넣어서 자신만의 이야기를 만들어보라고 하세요. 기대 사항을 꼭 설정하도록 하시고요. 예를 들어, 이야기의 길이는 얼마나 되어야 하는지, 특정한 주제를 지정할 것인지, 또는 특정한 유형의 단어(명사, 동사, 형용사 등)를 공란으로 두어야 하는지 등등…

탐구

(소규모 그룹, 45분)

학생들이 리스트를 센서와 함께 사용하여 자신만의 단어 게임을 만드는 방법을 조사합니다.

학생들에게 스파이크 앱의 조립 섹션을 찾아보라고 하세요. 여러 가지 모델의 조립 가이드를 둘러보는 것만으로도 단어 게임을 완성하는 데 필요한 색상 감지기를 어떻게 디자인하면 좋을지 대략 감이 잡힐 것입니다. 학생들에게 모델을 디자인하고 조립하게 하세요.

스토리 프로그래밍
학생들에게 파이썬 프로그래밍 캔버스에서 새 프로젝트를 열게 하세요. 혹시 프로그래밍 영역에 이미 코드가 들어 있다면 일단 그것부터 다 지우고, 허브를 연결하게 하세요.  

이제 학생들이 명사, 동사, 형용사 등의 단어 유형 리스트를 사용하여 골라낸 단어 옵션을 이용해 이야기의 빈 칸을 대체할 수 있도록 프로그램을 만들어야 합니다. 각자 자신의 이야기에 사용될 단어의 유형이 리스트와 일치해야 한다는 점을 학생들에게 상기시켜주세요. 즉, 모든 학생이 똑같은 리스트를 만들어서는 안 된다는 것이죠.

그 외에도, 학생들이 단어 게임과 연동하여 사용할 색상 감지 모델을 프로그래밍해야 합니다. 사용할 색상은 모두 다섯 가지이며, 감지된 각각의 색상이 이야기 속의 특정 단어를 지칭하도록 조건문을 만들게 하세요(예: 파랑은 명사, 빨강은 동사 등).

테스트 및 반복
학생들에게 시간을 주고, 각자의 아이디어를 테스트하고 분석하는 동시에 미흡한 부분을 개선하게 하세요. 아울러 학생들이 솔루션의 구상을 시작함에 있어 각자의 디자인 결과물을 디자인 기준과 흐름도에 대비하여 테스트하고 평가해봐야 합니다.

학생들이 모델의 스케치와 사진을 사용하여 디자인 기록장에 기록을 하는지 확인하세요.

시간이 허락한다면, 학생들에게 디자인에 대한 피드백을 받아보도록 하는 것도 괜찮은 방법입니다. 피드백은 다른 그룹이나 교사가 해주면 되겠죠.

설명

(전체 그룹, 10분)

프로그램이 어떻게 작동했는지에 대해 학생들과 이야기를 나눠보세요.
이런 질문을 던져보세요.
• 색상 감지 모델이 어떻게 작동하나요?
• 모델이 이야기와 어떻게 상호작용하나요?
• 이야기를 프로그래밍하는 동안 어떤 결정을 내려야 했나요?
• 이번 과제에서 어려웠던 점이 무엇이었나요?

다듬기

(소규모 그룹, 25분)

최초 공유 세션에 이어 학생들에게 추가로 시간을 주고 프로그램을 완성하게 하세요.

학생들이 디자인과 프로그램을 마무리할 수 있게 이끌어주시고, 공유 세션에서 얻은 새로운 아이디어를 반영해볼 수 있게 해주세요.

만일 피드백에 관한 다음 수업을 곧이어 진행할 예정이라면 모델들을 한데 보관해두세요.

평가

(그룹 실습, 10분)

교사 관찰:
학생들과 프로그램에 대해 토의를 진행하세요.
이런 질문을 던져보세요.
• 이번 과제에서 어려웠던 점이 무엇이었나요?
• 이 문제를 해결하기 위해 어떤 접근 방식을 취했나요?
• 센서와 리스트가 어떻게 함께 작동할 수 있나요?

자기 평가:
학생들에게 다음 질문에 대한 답을 기록장에 적으라고 하세요.
• 오늘 리스트를 만들고 센서를 사용하는 과정에서 어떤 것들을 배웠는가?
• 좋은 팀원의 특성은 무엇이며, 오늘 내가 그중 몇 가지를 보여주었는가?
• 학생들에게 오늘의 시간 관리에 대해 1-3점 척도로 자기 평가를 해보라고 하세요.
• 학생들에게 오늘의 재료(부품) 관리에 대해 1-3점 척도로 자기 평가를 해보라고 하세요.

교사 지원

학생 과제:
• 프로그램 안에 여러 개의 리스트를 만들고, 리스트를 이용해 단어 게임을 완성합니다
• 단어 게임과 조화를 이루도록 색상 감지 모델을 프로그래밍합니다

• 학생이 즉각 사용 가능한 상태의 스파이크 프라임 세트
• 스파이크 앱이 설치된 장치
• 학생용 기록장

CSTA
2-CS-02 Design projects that combine hardware and software components to collect and exchange data.
2-AP-10 Use flowcharts and/or pseudocode to address complex problems as algorithms
2-AP-13 Decompose problems and subproblems into parts to facilitate the design, implementation, and review of programs.
2-AP-17 Systematically test and refine programs using a range of test cases.
2-AP-19 Document programs in order to make them easier to follow, test, and debug.