メニュー

Scratchでプログラミングを学ぶ子どものイラスト

プログラミング教育にペア学習を導入!初心者でも理解が深まる新しい学習法

📌 この記事の結論

  • 大学の情報教育における学力低下や情報リテラシーニーズ増大に対応するため、ペアプログラミングの考え方を取り入れた新しいペア学習法が導入されました。
  • この学習法では、学生が事前に異なる分野を習熟することで、互いに教え合い、理解を深めることを促進します。
  • 導入の結果、学生は自主的に調べたり、質問の仕方を工夫したりするなど、学習態度に顕著な改善が見られました。
  • ADVANCEのプログラミング教育現場でも、教え合いを通じた問題解決能力やコミュニケーション能力の向上を日々実感しています。

1. 現代の情報教育が抱える課題とペア学習への期待

大学における情報教育は、近年の高等教育のユニバーサル化(誰でも高等教育を受けられるようになること)に伴う学生の学力レベルの多様化と、社会が求める情報リテラシー能力(情報を適切に扱う能力)の増大という、二つの相反する課題に直面しています。

プログラミングを含む情報教育は、教授内容が抽象的であること、短期間で多くの専門的な概念を習得する必要があること、そして情報機器の操作が伴うため個別のきめ細やかな指導が必要であることなど、指導上の難しい点が多数存在します。これらの課題を解決し、より効果的な学習方法を模索するため、すでにグループ学習の導入が試みられてきました。

しかし、従来のグループ学習では、学生の資質によって教える側と教えられる側が固定化されやすく、特に学力レベルの低い学生が不明な点を放置しがちであるという問題も指摘されていました。

本記事で紹介する論文では、この問題をさらに深掘りし、ソフトウェア開発の現場で注目されている「ペアプログラミング」の考え方を取り入れた新しい形のペア学習法をプログラミング教育に導入し、その効果について報告しています。特に、個々の学生が互いの得意分野を教え合える環境をどのように作り出すかに焦点を当てています。

2. 紹介する論文の概要

📄 論文情報

タイトル プログラミング教育におけるペア学習の試み
著者 寺川佳代子、喜多一
掲載誌 FIT2004(第3回情報科学技術フォーラム)
研究対象 常磐会学園大学 国際コミュニケーション学科の3回生以上
研究期間 平成16年度前期

研究の目的

本研究の目的は、大学の情報教育が抱える「学力レベルの低下」と「情報リテラシーへのニーズ増大」という課題に対応するため、ペアプログラミングの概念を応用した新しいペア学習法をプログラミング教育に導入し、その効果を検証することです。

従来のグループ学習で指摘された「教える側・教えられる側の固定化」や「理解不足の放置」といった問題を克服し、学生の自主的な学習、相互の教え合いを促進することを目指しました。

研究の方法

研究は常磐会学園大学 国際コミュニケーション学科の「ウェブプログラミング演習」科目(HTML、スタイルシート、JavaScriptが教授内容)で実施されました。具体的な手順は以下の通りです。

  1. 授業内容をHTMLとJavaScriptのように2つの異なる分野に分け、それぞれ通常の演習形式で学習させます。
  2. 学習の開始前に1回目の試験を行い、学生の初期理解度を測定します。
  3. 学生をペアに編成し、各学生にはペアの相手とは異なる分野の課題を重点的に学習させます。これにより、ペア内で互いが得意分野を持つ状態を作り出します。例えば、一方がHTMLに詳しく、もう一方がJavaScriptに詳しい状態を目指します。
  4. 両方の分野の知識を必要とする総合的な課題を設定し、これをペアで協力して取り組みます。これにより、自分の得意ではない分野についても、ペアの相手から学ぶことで深い理解を促します。
  5. 2回目の試験を行い、ペア学習導入後の学習効果を測定し、その変化を検討します。

指導に際しては、特に以下の点に留意されました。

  • ペアは学生自身の自発的な意思で形成させ、協調学習が円滑に進むように配慮しました。能力差があるペアには教員が重点的に指導します。

  • 演習中は、学生からの質問に教員がすぐに回答せず、教科書を参照したり、ペア内で相談したりして、まず自分で解決を試みるよう指示しました。時には意図的に誤った回答をすることで、学生が教員に頼りきりにならない環境を作る工夫もされました。

この学習法は、ソフトウェア開発で用いられる「ペアプログラミング」の考え方を取り入れています。ペアプログラミングとは、2人のプログラマーが1台のコンピューターを共有し、一方がコードを書き、もう一方がそれをレビューするという形で開発を進める技法です。これにより、「コードの品質向上」「開発期間の短縮」「知識共有の促進」といったメリットがあるとされています。

ただし、ペアプログラミングは専門能力を持つプログラマー向けの手法であるため、本研究ではプログラミング初心者が多岐にわたる概念を習得できるよう、事前に異なる分野を習熟させることで、お互いの弱点を補い合い、得意分野を教え合えるよう工夫しています。

さらに、課題解決型学習であるPBL(Problem Based Learning)の考え方も導入することで、従来の講義では習得が難しいとされていた問題解決能力、協調作業を通じたコミュニケーションスキル、リーダーシップといった能力の獲得も目指されました。

3. 研究結果のポイント3つ

プログラミング教育前後の論理的思考力テストの比較グラフ
▲ 研究結果の概要イメージ(※本記事用に作成した概念図です)

本報告が執筆された時点では、授業はまだ実施中であり、最終的な試験結果は発表されていません。しかし、授業の実施経過において、学生の学習態度には以下のような顕著な変化が見られています。

✅ ポイント1:学生の自主的な学習意欲の向上

従来の演習では、学生は分からないことがあるとまず教員に尋ねる傾向がありました。しかし、ペア学習を導入して約2ヶ月後には、理解できない点がある場合、まずは自分で本を読んで調べる、ペアの相手と相談する、そして最後に教員に質問するという、より主体的な学習プロセスを踏むようになりました。

この変化は、学生自身が簡単なことでも自分で調べ、解決できるようになったことに「喜び」や「楽しさ」を感じている様子からも伺えます。

✅ ポイント2:教員への質問回数の減少

学生が自主的に調べたり、ペアと相談したりする習慣が身についた結果、教員に対する質問回数が大幅に減少しました。

これは、学生が自力で問題を解決する能力が向上し、学習に対する依存度が下がったことを示しています。

✅ ポイント3:ポジティブな協調学習の促進

実践の過程で、学生の学習動機付けを高めるための新しいアイデアも生まれました。

就職課との連携により、学生が習得した知識を活かして自己PRページを作成し、大学のウェブサイトで公開する計画が持ち上がりました。さらに、ペアの学習相手に、その自己PRページへ推薦文を寄せるというユニークな試みも検討されています。

これにより、学生たちは互いの良い点を見つけ出す機会を得て、ポジティブな思考や相互理解を深めることが期待されています。これは単なる学習効果だけでなく、人間関係や自己肯定感にも良い影響を与える可能性を示唆しています。

授業の実施経過からはペア学習法の導入により、学生は簡単なことでも自分で調べられるようになったことに喜びや楽しさを感じている様子が窺える。

4. ADVANCEの現場から見た実感

ADVANCEの教室の様子
▲ ADVANCEの教室で学ぶ様子(イメージ)

堺市南区のプログラミングスクールADVANCEで実際にプログラミングを教えている講師としての意見は以下の三つです

🎮 現場で感じる3つの変化

教え合うことで理解が深まる

論文で指摘されている通り、子どもたちも友達に教えることで自分自身の理解をより確かなものにする様子をよく見かけます。特にScratchやRoblox Studioのようなビジュアルプログラミング環境では、視覚的に操作が見えるため、教え合いがスムーズです。PythonやJavaScriptのようなテキスト言語でも、自分の言葉で説明するためには、正確な理解が不可欠となり、自然と深い学習に繋がります。

自ら課題を解決する力がつく

ADVANCEでは、講師がすぐに答えを教えるのではなく、ヒントを与えたり、「どうしたらいいと思う?」と問いかけたりする指導を心がけています。その結果、子どもたちはエラーメッセージをよく読む、インターネットで調べる(検索力)、友達と相談するなど、実践的な問題解決スキルを自然と身につけています。

コミュニケーション能力が向上する

グループでのゲーム制作やペアでの協力プレイを通して、子どもたちは自分の意見を相手に伝えたり、相手の意見を尊重して聞いたりする機会が増えます。これにより、協調性やリーダーシップ、論理的な説明力といった、プログラミングスキルだけでなく社会で役立つ重要なコミュニケーション能力が育まれます。

ADVANCEでは、Scratch、Roblox Studio、Unity(C#)といった多様なツールを使って、子どもたちが自ら学び、教え合い、創造する体験を重視しています。この論文で示されたペア学習の効果は、私たちの指導現場でも日々実感しています。

5. 保護者の方へ:家庭でできること

プログラミング教育の効果を最大限に引き出すためには、家庭でのサポートも非常に重要です。この論文の研究結果とADVANCEの現場での実感から、保護者の方に実践していただきたいことを3つのヒントとしてご紹介します。

🏠

子どもの「なぜ?」を大切にする

子どもがプログラミングや学習でつまずいた時、すぐに答えを教えるのではなく、「どうしてそう思うの?」「他に方法はないかな?」と問いかけ、子ども自身に「考える習慣」をつけさせましょう。自分で解決できた時の達成感は、次の学習への大きな原動力になります。

📅

一緒に学ぶ時間を作る

子どもがプログラミングや新しいことに挑戦している時は、隣で一緒に画面を見たり、話を聞いたりする時間を少しでも設けましょう。内容を完璧に理解できなくても、保護者の方が興味を示し、共感することが、子どもの学習モチベーションに繋がります。

👏

小さな成功を褒める

子どもが自分で問題を解決できた時、新しいアイデアを試せた時、あるいは友達と協力して何かを成し遂げた時など、その努力とプロセスを具体的に褒めてあげましょう。「すごいね!」「よく頑張ったね!」の一言が、子どもの自己肯定感を高め、さらに挑戦する意欲を育みます。

🎮 ADVANCEで一緒にプログラミングを始めませんか?

堺市南区のプログラミングスクールADVANCEでは、Scratchからはじめて、Roblox、Unity(C#)まで段階的に学べます。

研究で効果が実証されたプログラミング教育を、ゲーム制作を通じて楽しく体験できます。

🕹️ ▶ ぼうけんを はじめる 無料体験会に申し込む! 🎮

6. 参考文献

  1. 寺川佳代子 河野浩之,情報教育におけるグループ学習の効果,情報処理学会第 66 回全国大会,2004.
  2. ローリー・ウィリアムズ,ロバート・ケスラー 著,(株)テクノロジックアート 訳「ペアプログラミング エンジニアとしての指南書」,ピアソンエデュケーション,2003.
  3. B.マジュンダ, 竹尾 惠子,PBL のすすめ―「教えられる学習」から「自ら解決する学習」へ,学研,2004.
👨‍🏫

この記事を書いた人

ADVANCE 講師

堺市南区のプログラミングスクールADVANCEで、Scratch・Roblox・Unity等を用いたプログラミング教育を担当。子どもから大人まで幅広い年齢層への指導経験を持つ。