在籍校名
職・氏名

研

うきは市立御幸小学校
教諭 井上 聖詞

修 報 告 書

このたび、長期派遣研修員として、下記のとおり研修をしましたので報告をいたします。
記
１

研修種別
Ｄ 福岡県教育センター研修員
２ 主題研修について
研究主題 課題解決に向けてプログラムを付加・修正することができる児童を育てるプログラミング
教育の一方途 －仮説検証サイクルを繰り返す学習過程を通して－(1) 研究のねらい
ア 課題の背景｢小学校段階におけるプログラミング教育の在り方について｣（平成28年文部科学省）では、「情報技術を手段として使いこなしながら、論理的・創造的に思考して課題を発見・解決し、新たな価値を創造する力」を育成することが必要であると述べられている。また、Ｂ小学校第５学年の実態調査において順序や繰り返し等に関する問題の平均正答率は49％であり、正答率のばらつきは大きかった。
この結果から、考える力に差がある苦手な児童が一定数いることがわかった。授業においても、試行錯誤を繰り返すことが求められているにもかかわらず、少ない試行回数で終わってしまうことが多い
ことから直面している課題に対して、自分がもっている知識と新しく獲得した知識をうまく結び付けて考えを付加・修正することができていないことが原因であると考えられる。そこで、論理的・創造的に思考して課題を発見・解決し、新たな価値を創造する力を育成するために、課題解決に向けてプログラムを付加・修正することができる児童を育てる必要があると考え、本主題を設定した。
イ 研究の目的小学校第５学年総合的な学習の時間において、課題解決に向けてプログラムを付加・修正することができる児童を育てるために仮説検証サイクルを繰り返す学習過程の有効性を明らかにする。
ウ 研究の仮説
小学校第５学年総合的な学習の時間のプログラミング活動において、仮説検証サイクルを繰り返す学習過程にすることで、自分の考えの不足や改善点に気付き、課題解決に向けてプログラムを付加・修正することができる児童が育つであろう。
(2) 研究の構想
ア 主題の説明（図１）(ｱ) 主題について本研究における「課題解決に向けて」とは、課題の原因、課題解決の方法、課題を解決した状態という三つの観点を踏まえ、考えて実行することである。「課題解決に向けてプログラムを付加・修正する」とは、既習の知識と獲得した知識を比べたり、自他のプログラムを比べたりしながら共通点や差異点を見いだし、課題を解決するために、自分のプログラムに新たな動きや条件を取り入れたり、プログラムを作り直したりすることである。ここでいう「プログラム」とは、動きや条件を組み合わ- 1 -せた処理の手順のことである。プログラムを付加・修正するために、検証に必要な情報を収集する、仮説を立てる、実験や観察を通じて仮説を検証するという一連の活動を行う。本研究では、プログラミング的思考を育むために、プログラムを付加・修正する一連の活動を繰り返し行う。このことは「探究的な見方・考え方を働かせ、よりよく課題を解決する」という総合的図１ 研究構想図な学習の時間の目標につながっている。このことから、本研究で目指す課題解決に向けて考えを付加・修正することができる児
童をプログラミング教育で育む資質・能力と関連付けて、以下の三つの姿から設定する。
○

身近な生活と学習をつなげて考え、自分が解決すべき課題を明確にすることができる児童【つかむ】○ 自分の考えについて多様な見方から考え直し、課題を解決するために試行錯誤を繰り返し、改善方法を考えることができる児童【つくる】○ 考えを比べて共通点や差異点を見いだしながら、よりよく課題を解決していくためには必要な順序や組合せがあることを理解することができる児童【ふかめる】(ｲ) 副題について｢仮説｣とは、目的に合った課題解決の方法について先を見通して考えた仮の答えのことである。「仮説検証」とは、実験や観察などを通じて仮説の真偽を確かめることである。「仮説検証サイクルを繰り返す」とは、検証をするために情報を収集する、仮説を立てる、実験や観察を通じて仮説を検証するという一連の活動を仮説検証サイクルとし、その活動を繰り返し行うことである（図２）。仮説検証を行わせる際には、検証をする前に課題解決に向けて仮説を明確にさせる。その時に、仮説を立てることと検証することをバランスよく行えるようにする。時間をかけずに仮説を立て検証していくことで１単位時間の中で何回も繰り返し
図２ 仮説検証サイクル行うことができるようにする。本研究では、プログラムを付加・修正するという仮説検証を繰り返し行わせることで、児童の考えが多様になり、その中からその都度目的に応じて情報を取捨選択することで、考えをまとめていき、よりよく課題解決していくことができるようにする。
イ 研究の内容(ｱ) 仮説検証サイクルの工夫
仮説検証サイクルを繰り返し行うことができるようにするために、目的を焦点化して提示する。目的を焦点化することで、課題に気付かせ、目的に対する児童の解釈が変わってしまうことを防ぎ、本来のねらいに合った活動をさせることができる。児童が目的を明確にすることで主体的に活動を行うことになり、仮説検証サイクルを繰り返すことにつながると考える。
仮説検証サイクルの始めに「試しの活動」を行わせるようにする。「試しの活動」とは、児童がプログラムの対象としてどのような機能があるか確認することである。これを行うことで、児童が見通しをもちやすくなり、教師の指示がなくても課題解決までの到達の仕方や課題解決をするためのアプローチの仕方などを考え、進んでプログラムを付加・修正していくという目指す児童像につながる。
- 2 -(ｲ) 単元構成の工夫について単元の中で、まずI C Tの中で動かすことができるバーチャ
ルなものでキャラクターを動かすだけの簡単なプログラムから、目的を達成させるために多様な動きを組み合わせる複雑
図３ 体験の仕方なプログラムの順番で体験をさせる。そして、実際にレゴブロックで作ったリアルなものでバーチャルの時と同じように体験をさせる（図３）。取り組みやすい
簡単でバーチャルなものから体験することで、課題を解決するために考えの付加・修正を進んで行うことにつながると考える。
また、１単位時間の中で暮らしとプログラミングの関係性を捉えさせてから課題を設定させる。普段使っているものが、プログラムを活用することで便利な動きになっていることとつなげて考えさせることで、児童が主体的に取り組む学習を展開することが可能となる。プログラミングを活用すれば自分たちで課題を解決することができることに気付かせ、試行錯誤を重ねながら継続的に改善を行わせることでプログラミング的思考を働かせながら活動に取り組むことができると考える。
(ｳ) 交流活動の工夫
課題解決に向けてプログラムを付加・修正していくことができるようにするために、I C Tを活用した交流活動を行わせる。それぞれの場面において、自分の考えを写真、動画として保存して共有できるようにする。交流の前に考えを共有することで、交流活動の活性化にもつながっていくと考える。
本研究では、自分の考えを必要に応じて相手に提示しながら交流活動を行わせるようにする。I C Tを活用しながら交流活動を行わせることで具体的な他の考えにふれることになり、目的を達成するという観点を基に多様な情報を取捨選択しながら、考えを付加・修正していくことになると考える。
(3) 研究の実際
ア 実証授業の学年及び単元計画（全10時間） Ａ市立Ｂ小学校第５学年Ｃ組24名
単元名 生活を豊かにするプログラミング
単
元の目標〇 コンピュータはプログラムされたとおりに動くことを理解し、自分の生活が様々なプログラミングされたものによってより豊かで便利になっていることを捉えることができるようにする。
〇 自分の生活を豊かにするために、どのような動きの組合せのプログラムを作ればよいか説明したり、目的と照らし合わせて改善したことやその理由を相手に伝えたりすることができるようにする。
〇 自分の生活がプログラミングによって豊かになることに関心をもち、目的と照らし合わせて動きや条件の組合せを工夫し、生活を豊かにするプログラム作りに意欲的に取り組もうとする態度を育てる。

学習活動
配時
プログラミングを活用して生活を豊かにしている身の回りの物について考え、学習課題をつかむ。
１
簡単バーチャル
導入 ScratchJrを使って、プログラミングをして自分が意図した動きをさせる体験をする。
２
ScratchJrを使って、目的を達成するために動きを組み合わせてプログラムを完成させる。複雑バーチャル３
簡単リアル
レゴ® W e D o2.0のブロックの意味について知り、プログラミングを体験する。
４
５・６ 展開 様々な動きや条件を組み合わせて環境に配慮した扇風機のプログラムを作る。（実証①） 複雑リアル
条件分岐のプログラムを活用しながら安全に動く自動運転のプログラムを作る。（実証②） 複雑リアル
７・８
レゴ® W e D o2.0を使って、自分たちの身の回りにあったら便利だと思うプログラムを考える。
９
まとめ
様々なプログラムを作った活動を振り返り、これからどのように生かしていきたいかまとめる。
10

イ 実証授業の実際と考察(ｱ) 導入について
Society5.0の動画と身近な生活を比べて、これからの生活について考えさせた。それを基に、プログラミングで生活を豊かにするという単元のめあてを設定した。そして、まず、ScratchJrを使って簡単なプログラムでバーチャルなものを動かす体験を行わせた。次に、自分の技能に合わせて課題を選び、様々な動きを組み合わせて、複雑なプログラムでバーチャルなものを動かす体験をさせた。
(ｲ) 展開について
実証授業を行う前に、レゴ®WeDo 2 . 0を使いレゴブロックで作ったリアルなものにどんな動きをさせることができるか一緒に確認しながら簡単なプログラムでリアルなものを動かす体験をさせた。実証授業では、レゴ®WeDo 2 . 0を使ってプログラムを作り、動きや条件を組み合わせた複雑なプログラ
ムで、レゴブロックで作ったリアルなものを動かすプログラミングを体験させた。

- 3 -

(ｳ) 実証授業①について
実証授業①の「つかむ」段階では、人感センサーを活用して人がいるときだけ動いたり、話しかけることで動いたりする扇風機について提示した。普段何気なく使っているものでも様々なところでプログラミングが活用されていることを実感することができていた。そこで、身近な生活とプログラミングをつなげて考え、生活を豊かにする扇風機を作るという課題を明確にすることができていた。
どんな時に動いて、どんな時に止まるか｢つくる｣段階では、どんな機能があれば生活が豊かになる考えればよさそうだね。【目的の焦点化】
かI C Tでアンケートを取り、内容を一緒に確認していく中で資料１のように必要な時にだけ動くようにすると目的を焦点化させた。そして、焦点化した目的を基に「試しの活動」を声をかけたら動いたり、止まったり行い、扇風機にどんな動きをさせたいのか、そのためにどんするようにしたいです。
な動きや条件が必要なのかについて班で共通理解をさせた。
人感センサーで人が来たら反応するようにしたいです。
児童は、資料２のように動きや条件の組み合わせを考えるこ
資料１ 目的を焦点化する様子とができていた。自分の考えたプログラムとその説明を蓄積していきながら、試行錯誤を繰り返し「近づいたら動きだすなら、離れた後は止まるようにすればよさそうだ」や「声に反応して動きだして時間で止まるようにしたい」など、自分が考えたことを組み合わせたり、新しいことを付け加えたり資料２ 考えた動きと条件の組み合わせすることで改善方法を考えることができていた。
｢ふかめる｣段階では、考えを整理する場を設定し「できたこと」と「できなかったこと」を明確にした。ここで、I C T 時間で止まるよを活用して作ったプログラムを見せたり、プログラムを実行 うにしていたけ
ど、人に反応ししたところを見せたりしながら自分の考えが具体的に相手に て止めるようにしたいな。
伝わるように交流する場を設定した（資料３）。この交流を 【多様な見方】行わせる際に、児童に「自分のプログラムに使えそうなことセンサーを使って人が近づいたら動いて、人がいなくなったら止まるようにしました。
を見つける」という観点を提示した。自分が考えたプログラ
資料３ 交流の様子
ムと友達が考えたプログラムを組み合わせて必要な時だけ動く扇風機のプログラムについて考え、自分たちが作りたい扇風機を明確にして、プログラムを作成していった。イメージした動きと同じように動かすことができている班に話を聞いて、動きや条件の順序や組合せを考え直し、よりよいプログラムを作り出すことができていた。
今まで使ってきたプログラミングで生活を豊か(ｴ) 実証授業②についてにする車を作ろう。【課題を明確にする】
実証授業②の「つかむ」段階では、まず自分が普段乗って未来にあったらいい車をいる車について振り返り、未来の車にはどんな機能がついてプログラミングで作ろう。
【課題を明確にする】
いるのかについて想像した。そこで、自分が普段乗っている車と比べて、生活を豊かにするために車のプログラムを考えるという本時の課題を明確にすることができていた。そしてプログラミングで自動運転したり、生活を豊かに資料４のように自分たちの言葉でめあてを考えることができ したりする車を作ろう。【課題を明確にする】
資料４ めあてを発表する様子ていた。実証授業②では、一度考えをつくった後にセンサーを使って前の車についていったり、人や物を感知して自動で 車にはどん な機能が付けられるかな。
止まったりする最新の機能が付いている車を紹介した。
｢つくる｣段階では、まず「安全に動く」という焦点化した 人感センサーや音声で動いたり止まったりす
目的で、車にどんな動きをさせることができるのか資料５の るようにしたい。
ように「試しの活動」を行った。そして、「危ないことを伝どんな動きをするようにしたい？
えるためにサイレンを鳴らしたいね」や「ぶつかったら事故音声で動くようにしたいね。になって危ないから、何かに反応したら止まるようにする」
サイレンも鳴るようにしようよ。
資料５ 試しの活動の様子など安全に動くという観点に沿ってたくさんのアイデアを出- 4 -すことができていた。ここで資料６のようにプログラムの意図を書き込ませたプログラムと実際に動かした動画を蓄積させて、プログラムの変容がわかるようにした。その中で進むや止まるなどの動き方だけでなく「止まったときに、知らせるためにサイレンがなったほうがいい」や「止まるときに信資料６ レゴ® W e D o2.0 のプログラム
号と同じように赤のランプが付くようにしたい」など様々な動きや「音に反応して」や「ボタンを押したら」などの条件を出し合いながら安全に動くプログラムを考えることができていた。児童が考えた条件の中には、バーチャルなものを動かすプログラミングで経験していた条件分岐の考え方も含まれていた。また、児童は「動き始めた後に、人感センサーで危ないと感じるものがあったら止まる」「止まったらサイレンがなって色が変わるようにする」など具体的に場面を想像しながら試行錯誤を繰り返し、改善方法を考えることができていた。
｢ふかめる｣段階では、安全に動くという観点で自分のプログラムについて考え直した。児童は、安全に動くという目的について確認し、プログラムを実行しながら改善を行った。実証授業②では、資料６のように意図がわかるようにしたプログラムを基に交流していたので「音に反応して動くだけではなくて時間がきても止まるようにしよう」や「物に反応して動いたり止まったりするようにして、止まった後に音が出る動きを付け加えたいな」など自分のプログラムと比べながら考え直すことで、より具体的な動きをイメージして、資料７のように繰り返しプログラムを付加・修正することができていた。目的を明確にしてプログラムを考えることで、動きや条件の順序や組合せを考え直し、よりよいプログラムを作り出すことができていた。

音に反応して動く・止まる

音に反応して動く、時間と音に反応して止まる

資料７

音に反応して動く、10秒で止まる

物に反応して動く、止まる、その後に音が出る

児童Ａが付加・修正したレゴ® W e D o2.0 プログラムの例(ｵ) まとめについて考えたプログラムについて「目的」「条件や動き」「結果」の三つの観点で発表を行わせた。その後、単元全体について振り返ることで、「○○さんが発表したように、保健室に何人きたかわかるようにするプログラムを作ってみたいです」や「委員会で役に立つプログラムを作って人が楽になるようにしたい」など、プログラミングをこれからの生活に生かしていこうとする姿が見られた。
(ｶ) 実証授業の考察
資料８のように自分の言葉でめあてを考えることができた
ことから目的を明確にして活動に取り組ませる上で、自分の暮らしとプログラミングをつなげて課題を考えるという単元
資料８ 児童Ｂ、Ｃが考えためあて構成の工夫は有効であったと考える。資料９のように動く条
件や止まる条件に焦点化してプログラムに動きや条件を付け加えたり、プログラムを修正したりすることができていたことや資料７のように児童が改善したプログラムが増えていっ
付加・修正たことから、目的を焦点化すること、「試しの活動」を行う
付加・修正こと、簡単なものから取り組ませる単元構成の工夫は、児童
資料９ 児童Ｄが付加・修正したシートに主体的に活動に取り組ませる上で有効であったと考える。
何度も考え直し、友達と相談しながらプログラムを付加・修正していく姿が見られた。交流している
途中でも残っている友達に改善する方法を伝えている姿、友達に説明した後にアドバイスをもらってプログラムを付加・修正している姿から、試行錯誤を繰り返させる上で、意図を明確にしたプログラムを基に交流活動を行わせることが有効であったと考える。
- 5 -(4) 全体考察
ア 仮説検証サイクルの工夫について多様な動きや条件を組み合わせて、焦点化した目的を基に２回以上プログラムを付加・修正することができた児童
図４ アンケートの結果は83％であった。さらに、理由を考えながら、自分で考えをつくり出しているという項目に対して当てはまると回答した児童が22ポイント増加している（図４）。これは、目的を焦点化して、検証サイクルの始めに「試しの活動」を位置付けることが、課題に気付き、主体的に仮説検証サイ
図５ 問題の平均正答率クルを繰り返すことにつながり、課題を解決していくためには必要な順序や組合せがあることを理解する上で有効であったと言える。また、順序や繰り返し等に関する問題の平均正答率は31ポイント増加している（図５）。これは、目的を焦点化して、検証サイクルの始めに「試しの活動」を位置付けたことが、試行錯誤を繰り返し、改善方法を考える上で有効であったと言える。情報を収集する、仮説を立てる、検証するという一連の活動を繰り返し行うことで考えが多様になり、よりよい解決方法を導き出すことができるようになると考えられる。
イ 単元構成の工夫について身近な生活とプログラミングをつなげて考えることで、86％の児童が自分でめあてを書くことができていた。また
資料10 児童Ｅの振り返り単元末の振り返りに資料10のような記述が見られた。自分でこの授業中に何をするのか考え、学習したことをこれからの学校生活に生かしていこうとしていることがわかる。これは、暮らしとプログラミングをつなげて考え、プログラミングが身近なものであることを捉えさせてから活動に取り組ませる単元構成の工夫とバーチャルからリアル、簡単から複雑というように段階的に仕組み、成功体験を積み重ねる単元構成の工夫が自分が解決すべき課題を明確にして主体的に活動に取り組ませる上で有効であったと言える。しかしながら、児童が作成したプログラムは、紹介した動画の機能に似ているものが多かった。これは動きや条件の組み合わせ方についての児童の中で選択肢が少なかったことが原因であると考えられる。
ウ 交流活動の工夫について交流した後に、もう一度考え直すようにしているという項目に対して「当てはまる」と回答した児童が23ポイント増加している（図６）。このことから交流に対する児童の図６ アンケートの結果意識が高まったことがわかる。また、交流活動を通して、資料７のようにプログラムを付加・修正している姿が見られた。これは、意図を書き込ませたプログラムを使ったり、考えを共有するためにI C Tを活用したりする交流活動を行うことが、自分が解決すべき課題を明確にして、試行錯誤を繰り返し改善方法を考える上で有効であったと言える。
(5) 研究の成果と今後の課題ア 研究の成果〇 課題解決に向けてプログラムを付加・修正するためには、学習過程の最初に「試しの活動」を位置付けた仮説検証サイクルを繰り返し行う学習過程を設定することが有効であった。
〇 試行錯誤を繰り返しながら主体的にプログラムを付加・修正するためには、意図を書き込ませたプログラムを修正しながら、I C Tを活用して友達と交流する活動が有効であった。
イ 今後の課題〇 多様な考えを組み合わせて豊かな発想ができるようにするために、複雑なプログラムを作る前に、組み合わせる動きや条件を明確にするためのプログラミング体験を設定する必要がある。
＜参考文献＞
・ 文部科学省（2016）『小学校段階におけるプログラミング教育の在り方について（議論とりまとめ）』- 6 -【添付資料】〇

児童が組み合わせた動きや条件のプログラムブロック
モーター出力ブロック
モーターの強さを変える

モーターon 時間ブロック
設定した条件までモーターを動かす

モーターoff ブロックモーターの回転を止める

モーター左回転ブロック
モーターを左回転させる

モーター右回転ブロック
モーターを右回転させる

ライトブロック
LED のライトの色を変える

サウンド再生ブロック
サウンドを再生させる

ディスプレイ表示ブロック
写真を表示させる

たし算ブロック
指定した数値をディスプレイ上でたしていく

かけ算ブロック
指定した数値をディスプ
レイ上でかけていく〇

表示ブロック
入力した数字またはテキス
トを表示する

距離の変更
センサーの前の物の位置を感知したらセンサー入力
センサーが感知した（距離）数値を入力する

距離の変化（近づく）
センサーに物が近づいたら距離の変化（遠くなる）
センサーから物が離れたらその他かたむきセンサーがいずれかの方向に傾いたらあちらかたむきセンサーがあちらの方向に傾いたらこちらかたむきセンサーがこちらの方向に
傾いたら下方向かたむき
センサーが下方向に
傾いたら上方向かたむきセンサーが上方向に傾いたら水平ブロックセンサーが水平になったら数字の入力
数字をブロックに入力する

テキストの入力
テキストをブロックに入力する

サウンドセンサー入力
デバイスの収音機能を活用
して音を感知したらディスプレイ入力
ディスプレイに数字を表示
する

ランダム入力ランダムの数値を入力する

ふきだしブロックプログラムにコメントを入力する

ひき算ブロック
指定した数値をディスプ
レイ上でひいていく

わり算ブロック
指定した数値をディスプレイ上でわっていく

ディスプレイオフブロック
表示しているディスプレイを閉じる

全画面表示ブロック
表示しているディスプレイを全画面にする

スタートブロックプログラムをスタート
させる

ボタンブロック
ボタンを押したらプログラ
ムをスタートさせる

メッセージ送信ブロック
プログラムをメッセージ受
信ブロックに送信するメッセージ受信ブロック
メールを受信したらプログ
ラムの続きをスタートする

待機ブロック
設定した条件まで待機させる

反復ブロック
このブロックの間にあるプ
ログラムを繰り返す

レベルごとに児童に示したプログラム

レベル 1

〇レベル１
・自動車が右に 10 動く〇レベル２（キャラクター３体を同時に動かす）・魚が右に 10、上に８動く・たこが右に２、上に２、下に２、左に２動く・クジラが左に１、下に１動くを２回繰り返し
左に１、上に１動くを２回繰り返し、右に４動く

レベル２

レベル２

レベル２

- 7 -

〇

プログラムを付加・修正する例
・近づいたら動き出だしたけど止まらないよ。

・動き出したらすぐに止まってしまった。

・近づいたら動き出して，離れたら止まった。だけど，１回で終わってしまうからくり返したほうがいいね。

〇

児童が考えたプログラムの例- 8 -