%#DVIPDF dvipdfmx -f index.txt -p a5
% (save-excursion (replace-string "、" "，") (goto-line 10) (replace-string "．" "。"))
\documentclass[a5j,10pt]{jsarticle}
% \title{}
\title{プログラミング教室の運営と手引の作成}
\author{  亀谷千香子\thanks{c116049@h.koeki-u.ac.jp}\\
 	 広瀬雄二\thanks{yuuji@koeki-u.ac.jp}
}
\date {}
%\setlength{\topmargin}{-1cm}       
%\addtolength{\textheight}{4cm}
%\addtolength{\textwidth}{2cm}
%\addtolength{\oddsidemargin}{-1cm}
\addtolength{\topmargin}{-1cm}          % 紙上端1インチからのマージン           
\addtolength{\oddsidemargin}{0cm}
\addtolength{\evensidemargin}{0cm}
\addtolength{\textwidth}{1zw}
\setlength{\itemsep}{0.5ex}
\setlength{\textheight}{18cm}

% \addtolength{\evensidemargin}{-1cm}
\pagestyle{empty}
\usepackage{url}	% required for `\url' (yatex added)
\usepackage[dvipdfmx]{graphicx}
%\usepackage[sectionbib]{chapterbib}
\usepackage{ascmac}
% \usepackage{longtable}
% \usepackage{geometry}
\usepackage{tabularx}
\begin{document}
\maketitle
%\begin{center}
% \LARGE プログラミング教室の運営と手引の作成\\
%\end{center}
%\begin{flushright}
%廣瀬研究室 4年 C1160497
%\end{flushright}


%\maketitle
\begin{center}
 {\bfseries 概要}
\end{center}
2020年度に小学生のプログラミング教育が必修化される。文部科学省の小学校プ
ログラミング教育の手引では，プログラミング教育で身につけたい力として「知
識及び技能」，「思考力，判断力，表現力等」，「学びに向かう力，人間性等」
が挙げられている。東北公益文科大学では，2018年度2019年度に小学5，6年生を
対象とした本格的なRubyプログラミング教室を開催した。それを通じ小学生がプ
ログラミングに対してどのようなイメージ・興味があるのかについてアンケート
を用い調査した。また，その実績をもとにRuby等を用いた小学生向けのプログラ
ミング教室を運営をするための事前の準備，教える方法などをまとめた手引を作
成した。

%\thispagestyle{empty}
\section{背景}
%2020年に小学生のプログラミング教育が必修化され，総合学習の一つとして様々
%な科目でプログラミングを題材とすることが見込まれている。
%また，小学校だけ
%のプログラミングだけではなく，外部のプログラミング教室の開催も年々増加し
%ている。

情報化社会への対応は教育課程にも影響を与える。2020年度に予定されている小
学校の課程におけるプログラミングの導入など，年少期教育における動向につい
て簡単に示す。

\subsection{小学生プログラミング教育必修化}\label{a}
普段の生活の中で身近な家電，自動車にはコンピュータが内蔵されている。その
コンピュータを動かしているのはプログラムであるため，プログラムの仕組みを
理解し情報を適切に活用，選択し問題を解決していくことが重要と考えられてい
る。このため文部科学省は，2020年度からの小学校の教育にプログラミングを導
入することを打ち出した。これは，プログラミングそのものの技術力向上を目指
したものではない。文科省ではプログラミング教育を通して身につけたい力とし
て，以下の3つの力を挙げている\cite{monbu}。
\begin{description}
 \item[知識及び技能]\mbox{}\\ 
生活でコンピュータが活用されていくことや，問題の解決には必要な手順があること
 \item[思考力，判断力，表現力等]\mbox{}\\
発達の段階に即してプログラミング的思考力を育成すること
 \item[学びに向かう力，人間性等]\mbox{}\\
発達段階に即して，コンピュータの働き，よりよい人生や社会づくりに生かそうとする態度を涵養すること
 \end{description}


% \subsection{プログラミング教室開催状況}
このような流れに乗る形で，プログラミング教室等の開催状況に変化が現れてい
る。小学校以外の外部のプログラミング教室について1999年から2014年以降まで
を比べてみると年々増加していることが分かる(図\ref{hikaku})。2013年以降か
らはプログラミング教室を開催している団体が急増している。
\begin{figure}[tp]
  \begin{center}
\includegraphics[width=6cm]{kaisai.pdf}
\caption{プログラミング教室始時期\cite{soumu} 図5-3より引用}
\label{hikaku}
 \end{center}
\end{figure}

\subsection{小学生の発達段階}\label{dankai}
学習指導要領では，通常の科目で学ぶ内容に合せプログラミングを行うとのこと
だが，プログラミング教育は小学生の発達段階において難易度が高いのではない
だろうか。表~\ref{dan}に示したとおり，ピアジェが仮説化する各発達段階での
子どもの思考特徴では7〜12歳(小学校生)は具体的操作段階である\cite{sinri}。
その段階では，具体物を扱う限りにおいては論理的操作が可能だが，科学的な問
題や論理的変換のようにあらゆる可能な組み合わせを考えねばならない問題には
困難を示すとある。しかし，12歳以上になると形式的操作段階となり，経験的事
実に基づくだけではなく，仮説による論理的操作や，命題間の論理的関係の理解
が可能である。
\begin{table}[tp]
  \begin{center}
\small
    \caption{ピアジェが仮説化する各発達段階での子どもの思考特徴\cite{sinri} より引用}
  \label{dan}

 
    \begin{tabular}{|l|l|p{0.5\columnwidth}|} \hline
         発達段階 &年齢の範囲&達成可能な典型と限界\\ \hline \hline
     具体的操作段階 &7〜12歳&具体物を扱う限りにおいては論理的操作が可能
	     になる。ものや事象の静的な状態だけでなく変換の状態をも表象
	     可能，外見的な見えに左右されず保存問題や系列化やクラス化の
	     問題解決が可能，だが科学的な問題や論理的変換のようにあらゆ
	     る可能な組み合わせを考えねばならぬ問題には困難を示す。
	     \\ \hline
     形式的操作段階 & 12歳〜   & 経験的事実に基づくだけではなく，仮説に
	     よる論理的操作や，命題間の論理的関係の理解が可能である。よ
	     り抽象的で複雑な世界についての理解が進み，たとえば，エネル
	     ギーの保存や化学的合成に関するような抽象的概念やエネルギー
	     の保存や化学的合成に関するような抽象的概念や知識が獲得され
	     る。\\ \hline
    \end{tabular}
  
  \end{center}
\end{table}
 
これに従うのであれば12歳前後，すなわち小学校6年生前後が形式的操作の発達
する時期であるため，抽象的なままでの本格的プログラミングの概念を理解する
のに適した時期であるのではないかと考えた。
 
\subsection{Rubyてらこった}
%Rubyてらこった，2018年度から大学のブランディング事業の一つでプログラミング言語のRubyを用いたプログラミング教室\cite{terakotta}。目的は，庄内地方を中心とした地域の若者達に情報技術を教え，情報社会を生き抜くために必要な力を身につけていくことである。Rubyてらこったの対象は小学5，6年生である。その理由としては，キーボードの操作の関係からアルファベットを習い終わっていること，また，小学生のうちから本格的なプログラミングを学ぶ機会を提供したいと考えているためである。



東北公益文科大学(以下 本学)では，2018年度から大学の私立大学研究ブランディ
ング事業\cite{koeki-branding}の一環としてプログラミング言語のRubyを用い
た小学校5，6年生向けプログラミング教室「Rubyてらこった」を開催した
\cite{terakotta}。目的は，庄内地方を中心とした地域の若者達に情報技術を教
え，情報社会を生き抜くために必要な力を身につけていくことである。

\subsection{指導内容}
Rubyてらこったは全5回の授業として設計した(表\ref{studyitems})。5回目の授
業では，それまでに習った項目を利用し，ある程度本人が楽しめるものを作れる
ようになることを考慮し，ゲーム的な要素を持つ作品が作れる技能をまず想定し
た。そこから逆算し，Ruby言語に備わるいくつかの項目をピックアップした。表
\ref{methods}がRubyてらこったで取り扱うRubyのメソッドで，これらを適切に
使えるようになるための概念についても順序よく説明する形で教材を作成した。
\begin{table*}[tp]
  \begin{center}
  \small
    \caption{授業内容}  \label{studyitems}
    \begin{tabular}{|l|l|} \hline
      回数 & 内容  \\ \hline \hline
      1回目 & 基本操作 画面出力  自己紹介プログラム \\
      2回目 & ループ  繰り返し処理のプログラム \\
      3回目 & 配列  データ処理のプログラム  \\
      4回目 & 条件分岐  条件のあるプログラム  \\
      5回目 & まとめ 習ったことを応用してプログラムを作成  \\ \hline
    \end{tabular}
  \end{center}
\end{table*}
 
\begin{table*}[t]
\small
 \begin{center}
\caption{Rubyてらこったで取り扱うメソッド}
\label{methods}
\begin{tabular}{|c|c|c|c|}
\hline
\multicolumn{4}{|l|}{出力メソッド (print,printf,puts)}\\ \hline
  \multicolumn{4}{|l|}{アスキーアートのように入力したものをそのまま出力させ}\\  
  \multicolumn{4}{|l|}{るために必要と判断した}\\\hline
\multicolumn{4}{|l|}{文章処理メソッド(gets,chomp)}\\ \hline
  \multicolumn{4}{|l|}{キーボードに打ち込んだ値を文字列として取得するゲーム}\\  
  \multicolumn{4}{|l|}{プログラムを作るときに必要と判断した}\\\hline
\multicolumn{4}{|l|}{配列及び乱数(srand,rand)}\\ \hline
  \multicolumn{4}{|l|}{2つを組み合わせてクイズ問題を用意して乱数で選ばせ}\\  
  \multicolumn{4}{|l|}{たり，ジャンケンの手の内をランダムに出したりする}\\
\multicolumn{4}{|l|}{ために使うので必要と判断した}\\\hline
\multicolumn{4}{|l|}{sleep関数(sleep)}\\ \hline
  \multicolumn{4}{|l|}{プログラムを時間を指定して一時停止することができるの}\\
 \multicolumn{4}{|l|}{で小学生が楽しむことができるのではないかと判断した}\\ \hline
\multicolumn{4}{|l|}{制御構造(if,elsif,else)}\\ \hline
  \multicolumn{4}{|l|}{クイズの結果の判定や条件で繰り返しを行うため}\\  
  \multicolumn{4}{|l|}{必要であると判断した}\\\hline
  \end{tabular}
    \end{center}
\end{table*}


\subsection{小学生に身につけてほしい力}\label{skills}
\ref{a}で述べたように，小学生のプログラミング教育で身につけたい力は「知
識及び技能」，「思考力，判断力，表現力等」，「学びに向かう力，人間性等」
である。その3つの力に追加してRubyてらこったで身につけてほしい力として
「工夫する力」，「伝える力」を設定した。
\begin{description}
 \item[工夫する力]\mbox{}\\
授業で使うサンプルのプログラムを自分で考えて，工夫をして，他の人とは違うプログラムを作れるようになること
 \item[伝える力]\mbox{}\\ 
伝える力としては，2つの意味がある。1つ目は，自分の作成したプログラムの発表を通して工夫し点，頑張った点など伝えられるようになれること

2つ目は，周りの人が作成したプログラムの発表を聞いて感想など伝えられるようになること

\end{description}



\section{目的}\label{mokuteki}
本研究は，小学生がプログラミングに対してどのようなイメージ，興味があるの
か，プログラミングの授業を通して様々な力が身についたと小学生自身が実感す
ることができるのかを調査していくことを目的とする。また，初めてプログラミ
ング教室を運営する人を対象にした手引を作成する。


\section{プログラミングの意識調査}
小学生からプログラミングに関する意識について取得したアンケートについて示す。

\subsection{質問項目}
本研究ではRubyてらこったに参加した小学生に
\begin{itemize}
 \item 1回目の授業の事前
 \item 毎回の授業後
 \item 最終回終了後
\end{itemize}
の各タイミングでアンケートを実施した。
質問内容は習熟度合いに応じてその都度違うものを用意した(表\ref{tyousa})。

 \begin{table*}[tp]
  \begin{center}
  \small 
    \caption{アンケートの質問項目}
    \begin{tabular}{|l|l|} \hline
      種類 & 内容  \\ \hline \hline
      事前 & 機械操作，プログラミングについて，普段の学習 \\
      授業 &  授業で楽しかったこと，授業で難しかったこと\\
      事後 & 授業について，プログラミングについて，普段の学習  \\ \hline
    \end{tabular}
  \label{tyousa}
  \end{center}
\end{table*}


\subsection{アンケートの結果}
2019年6月，7月のRubyてらこったに参加した小学生のアンケートの結果は以下の
通りとなった。
\begin{itemize}
 \item 事前アンケート結果

       機械操作については，スマートフォンを普段使用している人が多かった。
       プログラミング教室参加理由は，プログラミングに興味があって参加し
       た人が半数以上だった。プログラミングのイメージは，楽しそうという
       イメージもあるが，難しそうというイメージをもっている参加者もいた。

 \item 毎回の授業アンケート結果

       毎回の授業で楽しかったことは，機械操作，作成したプログラム発表，
       プログラムを改造すること，大学生と話したことであった。難しかった
       ことは，機械操作，条件分岐，ループの考え方などであった。

 \item 事後アンケート結果

       授業については，とても分かりやすい，プログラミングがとても楽しかっ
       たという回答が多かった。しかし，プログラミングが難しかったと感じ
       た参加者もいた。プログラミングを通して筋道を立てて考える力が身に
       ついたと実感している参加者が多かった。挑戦してみたいことでは，もっ
       と難しいプログラムを作る，家でもプログラミングをするなどの回答が
       あった。
\end{itemize}

 \section{アンケートからの考察}

Rubyてらこったに参加した小学生に身につけてほしい力について，アンケート結
果，授業の様子，彼らが作成したプログラムからプログラミングに対するイメー
ジや内容を習熟できたかについて考察する。

\subsection{プログラミングについて}
プログラミングのイメージは楽しそうというイメージがある。しかし，難しそうというイメージもあった。授業をしてまたプログラミングをしてみたいという回答が多かった。実際にプログラミングを学んでみて難しかったという回答があった。内容が難しく感じたのは，\ref{dankai}で述べたように発達段階の要因があるのではないかと考える。また，内容が難しく感じたという理由だけではなく，キーボード操作も難しく感じた要因ではないかと考える。
\subsection{論理的思考について}
アンケートから筋道を立てて考える力が身についたと実感している小学生が多いという結果になった。5回目の授業で今まで学んだものを使い作成するときにもどのようにしたら動くのかを考えて作成している小学生が多かった。
\subsection{身につけたい力について}
文科省がプログラミングを通じて獲得を期待している力，ならびに本学Rubyてら
こったを通じて付けて欲しいと考えている力(\ref{skills}節)について
まとめたものを以下に示す。
% それぞれまとめたものを表\ref{kousatu}に示す。

\begin{itemize}
 \item 知識及び技能

       5回目の授業で自由に作成したプログラムを見ると授業で学んだことを理
       解し，工夫してプログラムを作成していた。

 \item 思考力，判断力，表現力等

       毎回の授業でプログラムを作成するときに，分からないことがあると教
       科書を見て考えたり，大学生に質問をしたりしていた。また，もっとプ
       ログラムを良くするにはどのメソッドを使えば良いのか判断していた。
       そのことから，思考力，判断力，表現力等の力が身についたと言える。

 \item 学びに向かう力，人間性等

       プログラムを集中して作成したり，授業中に分からない所があった時に
       周りの大学生に質問をしたりして解決をしていた。また，難しい内容の
       部分でも積極的に学ぼうとする姿勢があったことから，学びに向かう力・
       人間性等が身についたと言える。

 \item 工夫する力

       毎回の授業でサンプルのプログラムを自分で考えて作成していた。5回目
       の授業のオリジナルのプログラムを作成する時に前に作成したものを改
       良して作成ができていたので，身についたと言える。

 \item 伝える力

       自分が作成したプログラムの工夫した点や頑張ったところなど発表する
       ことができていた。また，他の人が作成したプログラムに対しての感想
       やどうやったらこの動きになるのかなど質問をお互いにしていたので，
       力が身についたと言える。
\end{itemize}


\subsection{受講前後のイメージ変化の検証}\label{tkekka}
Rubyてらこったの受講を通じて，プログラミングや勉強に対して好ましい印象の
変化は見られたのかについて検定を行なった。
アンケートの回答を数値化し，開催前後でそれらを比較する形で分析を行った。
同じ児童について追跡して2回測定するので対応のあるt検定を用いた。

プログラミング教室受講前と後の変化についての仮説は，プログラミングを実際
に行うとプログラミングはイメージよりも楽しく，難くはないという結果が出る
と考えた。また，プログラミングを通して学校の勉強が好きになり難しく感じな
くなるという仮説を立てた。比較項目と結果は以下の4つである(表\ref{t})。有
意傾向の結果が出たのは，勉強が難しいという項目だけであった。


\begin{table*}[tp]
\centering \caption{t検定の結果}

\begin{tabular}{|p{0.4\columnwidth}|p{0.55\columnwidth}|}
\hline
\small プログラミングは楽しそうとプログラミングは楽しかったを比較&(t(11)=1.1516, n.s)となり有意ではなかった。イメージと実際の差はなかった。\\\hline
\small プログラミングは難しそうとプログラミングは難しかったを比較&(t(11)=1.4663, n.s)となり有意ではなかった。イメージと実際の差はなかった。\\\hline
勉強が好き                                             &(t(11)=1.1055, n.s)となり有意ではなかった。\\\hline
勉強が難しい                                           &(t(11)=2.1574, p $<$ .10)となり有意傾向である。\\\hline

%\label{t}
  \end{tabular}
\label{t}
\end{table*}


今回のプログラミング教室は希望者を募ったものであり，プログラミング
に対する元々の期待感が高い小学生によるものである。このため，「イメージが
向上した」という結果が出にくい条件であるとも言える。裏を返せば，期待感を
裏切らない結果であったことになる。

また，今回「小学校の学習内容の難易度」のみ開催後の数値変化に有意差が見ら
れた。これにはいくつかの要素が考えられる。たとえば，今回のプログラミング
教室では可能なところでは学校の勉強と結び付けて説明した部分があり，その点
について難しさを想起させた可能性が考えられる。また，プログラミングを遊び
のように捉えて反復して理解している様子が見られたが，そうした理解と学校で
の学習を比較して，受講前と異なる回答をした可能性も考えられる。いずれにせ
よプログラミング教室の開催期間が土日の休日や夏休みに入った後であり，学校
で授業から少し離れ実感をもって答えることができなかった可能性もあるため，
この点に関してはさらなる検証が必要であると考える。


 \section{手引書について}
表\ref{hikaku}とも関連するが，プログラミング教室開催の必要性は高まってい
くことが予想できる。こうした流れから，いくつかのWebサイトにてプログラミ
ング教室を開催するための方法が公開\cite{web1,web2,web3}されており，プロ
グラミング教育の目的，使用教材，所要時間などが示されている。しかしながら
我々の当初の経験から判断すると，実際に開催するとなったときにはその情報で
は足りず，計画手法や段取など，より現実的な部分が必要になってくると考えた。
たとえば，小学生にプログラミングを教える体制，時期の設定方法，教える方法，
実際の時間割作成など具体的な内容などである。

そこで，実際にプログラミング教室を開催する企画を立ててから授業を行うまで
の参考となるよう，2018年度，2019年度のRubyてらこったの活動を踏まえ手引書
を作成した。手引書は，はじめてプログラミング教室を企画，運営する人を想定
し，具体的な流れなどを含む以下のような構成とした。
\begin{itemize}
 \item 活動する人の必要な知識や能力，プログラミング教室を行う目的，小学
       生に身につけてほしい力，日程の立て方について
 \item 企画したものを運営するための役割，業務内容，授業準備について
 \item 授業の流れ，当日の準備について
 \item 参加した小学生の感想
 \item 小学生に教える時の授業担当者，アシスタントそれぞれの注意点について
 \item 企画，運営をするために何にどのくらいの時間をかけて準備しているの
       か，円滑な活動を行うための方法
\end{itemize}

 \section{まとめ}
  参加した小学生は，プログラミング教育を通して，「知識及び技能」，「思考
  力，判断力，表現力等」，「学びに向かう力，人間性等」，「工夫する力」，
  「伝える力」を身に付けることができたと言える。

  プログラミング教室の受講前と後のイメージ向上に関する有意な差は得られな
  かったが，これは元々の期待感の高い層のみに限られた可能性が否めない。必
  修化され，全員を対象とした教室を開催する時には，イメージを悪化させない
  工夫がより一層重要と言える。

  また，Rubyてらこったのような本格的なプログラミング教室の開催により，形
  式的操作の発達が促進されることも期待できるため，同様の本格的プログラミ
  ング教室が多くの場所で開催されることを期待する。

% \appendix
\section*{謝辞}

本研究は，平成29年度私立大学研究ブランディング事業タイプA「日本遺産を誇
る山形県庄内地方を基盤とした地域文化とIT技術の融合による伝承環境研究の展
開」の助成を受けた成果である。

\section*{付録}
本研究の成果として作成したプログラミング教室の手引書は，公開Gitリポジト
リサーバにおいて以下のURLで取得できる。初等プログラミング教育の一助とな
れば幸いである。

\begin{quote}
 \small\url{https://www.yatex.org/gitbucket/HiroseLabo./2019-kameya/raw/master/tebiki2.pdf}\\
 \includegraphics[bb=0 0 206 206,clip,width=0.2\columnwidth]{tebiki-url.pdf}\\
\end{quote}
%\begin{tabular}[t]{lp{0.8\columnwidth}}
% URL: & \small\url{https://www.yatex.org/gitbucket/HiroseLabo./2019-kameya/raw/master/tebiki2.pdf}\\
%  & \includegraphics[bb=0 0 206 206,clip,width=0.2\columnwidth]{tebiki-url.pdf}\\
%\end{tabular}

% QR: \includegraphics[bb=0 0 206 206,clip,width=0.3\columnwidth]{tebiki-url.pdf}
     
\begin{thebibliography}{99}
 
 
 \bibitem{monbu}  文部科学省. ``小学校プログラミング教育の手引(第二版)''. \url{http://www.mext.go.jp/component/a_menu/education/micro_detail/__icsFiles/afieldfile/2018/11/06/1403162_02_1.pdf}, (参照 2019-5-24).
 
 \bibitem{sinri} サトウタツヤ, 渡邊芳之.「心理学・入門ー心理学はこんなに面白い」,株式会社有斐閣,2011,p268.　
 　\bibitem{soumu}  総務省. ``プログラミング人材育成の在り方に関する調査研究報告書''. \url{http://www.soumu.go.jp/main_content/000361430.pdf}, (参照 2019-8-1).　　
 \bibitem{koeki-branding} 東北公益文科大学.
	 ``日本遺産を誇る山形県庄内地方を基盤とした地域文化と
	 ＩＴ技術の融合による伝承環境研究の展開''.
	 平成29年度「私立大学研究ブランディング事業」事業計画書一覧：文部科学省,
	 \url{https://www.mext.go.jp/component/a_menu/education/detail/__icsFiles/afieldfile/2017/11/29/1398407_04.pdf},
	 (参照 2020-02-10).
 \bibitem{terakotta}  大石桃菜, 佐々木大器, 山口円馨. ``東北公益文科大学における小学生向けプログラミング教室「Rubyてらこった」の取り組み''. 文部科学省 私立大学研究ブランディング事業 日本遺産を誇る山形県庄内地方を基盤とした地域文化とＩＴ技術の融合による伝承環境研究の展開（平成29年度～平成33年度), p50-54.
 \bibitem{web1} Progra!. ``小・中学生向けプログラミング教室を開業（開校）
	 するための準備と手順のポイント''.
	 \url{https://progra.org/blog/65/}, (参照 2019-11-14).
　\bibitem{web2} NPO法人Rubyプログラミング少年団. ``一日Rubyプログラミング体験教科書''. \url{https://github.com/smalruby/smalruby.jp/tree/master/source/files}, (参照日2019-11-14).　　　　       
\bibitem{web3} 総務省. ``一日Rubyプログラミング体験教科書''. \url{http://www.soumu.go.jp/programming/data/017/017_01_01.pdf}, (参照 2019-11-14).　
\end{thebibliography}
\end{document}


