(57)【要約】【課題】  ソフトウェアのプログラミングを行う人の思考力を解析・評価できる解析方法・評価装置等を提供する。【解決手段】  ソフトウェアのプログラミングを行う人２の思考力を解析して評価する評価装置１は、記録部３と、解析部５と、評価部７とを備える。記録部３は、思考力を解析される人２がソフトウェアのプログラミングを行う過程を表す多変量データを記録する。解析部５は、記録された多変量データに対して予め定められたルールを適用し、人２の思考力の解析に必要な質的データの数量化を行い、数量化された質的データを用いて解析される人の思考力を解析する。評価部７は、その解析結果を用いて評価を行う。【選択図】  図１
2020144315.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェアのプログラミングを行う人の思考力を解析する解析方法であって、
記録手段が、前記思考力を解析される人がソフトウェアのプログラミングを行う過程を表す多変量データを記録するステップと、
解析手段が、前記記録された多変量データに対して予め定められたルールを適用し、前記人の思考力の解析に必要な質的データの数量化を行い、前記数量化された質的データを用いて前記解析される人の思考力を解析するステップとを含む、解析方法。
【請求項２】
前記多変量データは時系列データである、請求項１記載の解析方法。
【請求項３】
出力手段が、前記解析された人の思考力に関し、予めモデリングされて構築されたモデルデータと比較された結果を出力するステップをさらに含む、請求項１又は２記載の解析方法。
【請求項４】
請求項１から３のいずれかに記載のソフトウェアのプログラミングを行う人の思考力を解析する解析方法において、
前記記録手段が、前記思考力を解析される人がソフトウェアのプログラミングを行う過程を表す多変量データを記録するステップを、コンピュータに実行させるためのプログラム。
【請求項５】
ソフトウェアのプログラミングを行う人の思考力を評価する評価装置であって、
前記評価される人がソフトウェアのプログラミングを行う過程を表す多変量データを記録する記録手段と、
前記記録手段によって記録された多変量データに対して予め定められたルールを適用し、前記人の思考力の評価に必要な質的データの数量化を行う数量化手段と、
前記数量化手段によって数量化された質的なデータに対して解析を行い、前記評価される人の思考力の特徴を抽出する特徴抽出手段と、
前記特徴抽出手段によって抽出された特徴により前記評価される人の思考力を評価する評価手段とを備えた、評価装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、解析方法、プログラム及び評価装置に関し、特に、ソフトウェアのプログラミングを行う人の思考力を解析する解析方法等に関する。
【背景技術】
【０００２】
近年、どの分野においても、ハードウェアの開発に加え、ソフトウェアの開発の重要性がより高まっている。それに伴い、民間レベルではプログラミング教室は年々充実してきており、学校教育においても、２０２０年度よりプログラミング教育が本格的に行われることになっている。
【０００３】
このプログラミング教育においては、単にプログラミングを作業としてできるだけでなく、プログラミング的思考力、論理的思考力、課題解決力などの思考力が重要とされている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、このプログラミング教育において、思考力の育成が重要視されてはいるが、プログラミングにおける思考力を評価する手法が確立できていない状況にある。
【０００５】
なお、この問題は、学校教育におけるプログラミングの現場だけでなく、仕事におけるプログラミング現場においても、大きな課題とも言える。
【０００６】
そこで、本発明は、ソフトウェアのプログラミングを行う人の思考力を評価するためにも、ソフトウェアのプログラミングを行う人の思考力を解析できる解析方法等を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の第１の観点は、ソフトウェアのプログラミングを行う人の思考力を解析する解析方法であって、記録手段が、前記思考力を解析される人がソフトウェアのプログラミングを行う過程を表す多変量データを記録するステップと、解析手段が、前記記録された多変量データに対して予め定められたルールを適用し、前記人の思考力の解析に必要な質的データの数量化を行い、前記数量化された質的データを用いて前記解析される人の思考力を解析するステップとを含むものである。
【０００８】
なお、上記本発明の第１の観点について、ソフトウェアのプログラミングを行う人の思考力を評価する評価方法として捉えなおしてもよい。すなわち、本発明の第１の観点の他の観点としては、記録手段が、前記評価される人がソフトウェアのプログラミングを行う過程を表す多変量データを記録するステップと、数量化手段が、前記記録された多変量データに対して予め定められたルールを適用し、前記人の思考力の評価に必要な質的データの数量化を行うステップと、特徴抽出手段が、前記数量化された質的なデータに対して解析を行い、前記評価される人の思考力の特徴を抽出するステップとを含み、前記抽出された特徴により前記評価される人の思考力の評価を可能としたものとしたと捉えなおしてもよい。
【０００９】
また、上記において、評価される人がソフトウェアのプログラミングを行う過程を表す多変量データには、ログデータの他、例えば、プログラミング過程の画面状態を記録しておくことも含まれる。
【００１０】
さらに、上記の観点において、前記数量化手段は、試行力と定義する前記評価される人がプログラミングにおいて試行錯誤を行う能力、構築力と定義する前記評価される人が頭の中でプログラミングを構築する能力、集中力と定義する前記評価される人がプログラミングに集中する能力、確実修正力として定義する前記評価される人がプログラミングに誤りがあった際に確実に修正する能力、早期修正力と定義する前記評価される人がプログラミングに誤りがあった際に早く修正する能力、及び、好奇心・知識活用力と定義する前記評価される人がプログラミングに対する好奇心・知識活用能力のうちの少なくともいずれか１つを前記質的なデータとして数量化するものであってもよい。
【００１１】
さらに、解析処理という数量化処理及び特徴抽出処理において、得られたビッグデータに対し、ディープラーニングなどの機械学習を用いた人工知能によって解析を行うものであってもよい。その場合には、学習したモデルのデータが重要となる。
【００１２】
以上のような観点では、まず、評価される人がソフトウェアのプログラミングを行う過程を表す多変量データを記録することで思考力の解析（評価）という目線では今まで行われていなかったデータが集まる。そして、記録された多変量データに対して予め定められたルールを適用し、人の思考力の解析（評価）に必要な質的データの数量化を行うことで、思考力の評価のために必要な質的な点からの客観化を行うことができる。さらに、数量化された質的なデータに対して解析を行い、評価される人の思考力の特徴を他と比べて抽出することによって、評価される人の思考力の評価も可能となる。
【００１３】
本発明の第２の観点では、第１の観点において、前記多変量データは時系列データである。例えば、多変量データで時系列データとしては、例えばログデータが挙げられる。
【００１４】
本発明の第３の観点では、第１又は第２の観点において、出力手段が、前記解析された人の思考力に関し、予めモデリングされて構築されたモデルデータと比較された結果を出力するステップをさらに含むものである。なお、解析結果又は評価結果を、比較するかを問わず、数値で出力してもよく、表形式やグラフ形式などの他の形式で出力してもよい。
【００１５】
本発明の第４の観点では、第１から第３の観点のいずれかに記載のソフトウェアのプログラミングを行う人の思考力を解析する解析方法において、前記記録手段が、前記思考力を解析される人がソフトウェアのプログラミングを行う過程を表す多変量データを記録するステップを、コンピュータに実行させるためのプログラムとして捉える。
【００１６】
なお、他の観点として、第１から第３の観点のいずれかに記載のソフトウェアのプログラミングを行う人の思考力を解析する解析方法における、記録手段が前記思考力を解析される人がソフトウェアのプログラミングを行う過程を表す多変量データを記録するステップと、数量化手段が、前記記録された多変量データに対して予め定められたルールを適用し、前記人の思考力の解析に必要な質的データの数量化を行うステップとの両方のステップをコンピュータに実行させるためのプログラムとして捉えてもよい。また、さらに他の観点として、第１から第３の観点のいずれかに記載のソフトウェアのプログラミングを行う人の思考力を解析する解析方法における、数量化手段が、前記記録された多変量データに対して予め定められたルールを適用し、前記人の思考力の解析に必要な質的データの数量化を行うステップをコンピュータに実行させるためのプログラムとして捉えてもよい。
【００１７】
本発明の第５の観点は、ソフトウェアのプログラミングを行う人の思考力を評価する評価装置であって、前記評価される人がソフトウェアのプログラミングを行う過程を表す多変量データを記録する記録手段と、前記記録手段によって記録された多変量データに対して予め定められたルールを適用し、前記人の思考力の評価に必要な質的データの数量化を行う数量化手段と、前記数量化手段によって数量化された質的なデータに対して解析を行い、前記評価される人の思考力の特徴を抽出する特徴抽出手段と、前記特徴抽出手段によって抽出された特徴により前記評価される人の思考力を評価する評価手段とを備えたものである。ここで、前記評価手段を、前記解析された人の思考力に関し、予めモデリングされて構築されたモデルデータと比較された結果を出力する出力手段と捉えなおしてもよい。
【００１８】
なお、第５の観点の評価装置を、第１の観点等の解析装置として捉えなおしてもよい。その解析装置の場合には、評価手段は構成要素としては不要になり、数量化手段は必要となるが、特徴抽出手段は必ずしも必須の構成要素と扱わなくてもよい。
【００１９】
また、各手段はネットワークに繋がった分散型のシステムであってもよい。
【発明の効果】
【００２０】
本発明によれば、思考力を解析される人がソフトウェアのプログラミングを行う過程を表す多変量データを記録し、人の思考力の解析に必要な質的データの数量化を行うことで、解析に必要な客観化データが得られる。そして、解析ができる結果、評価もできることになる。そして、ビックデータとして得た母集団における平均との比較や、複数の人との間での比較を行うことにより、思考力の特徴を抽出することもでき、より適切な評価が可能となる。そのような評価が必要な教育現場はもちろんのこと、企業での人事考課などにおいても有用な判断材料を提供することができる。さらには、教育目線での思考力を向上させる支援や、第４次産業革命が進む社会全体においても、生産性向上などとの関係を含めた今後の社会における人間の創造性を高めていくことへも貢献できる。
【図面の簡単な説明】
【００２１】
【図１】本発明の実施の形態にかかる評価装置を示す概略ブロック図である。
【図２】図１の評価装置の動作を説明するフロー図である。
【図３】学習者Ａが課題Ａ，Ｂ，Ｃ・・・をクリアする際のプログラミングの正答例のデータベースの一例を示した図である。
【図４】学習者Ａの課題Ａに対するログデータが含まれている状態を示すログデータベースの一例を示した図である。
【図５】図３及び図４に示した状態において学習者Ａのように学習者が単一の場合における実行時間と正答率の表の一例を示した図である。
【図６】図５の内容も含む学習者が複数の場合における実行時間と正当率の表の一例を示した図である。
【図７】図６に示した表について実行時間と正当率のグラフにした一例を示した図である。
【図８】各学習者の解決力と試行力の算出結果の表の一例を示した図である。
【図９】図８の各学習者の解決力と試行力の算出結果をプロットしたグラフの一例を示した図である。
【図１０】図９に示したグラフの第１象限〜第４象限で区別された場合の学習者の特徴を評価するためのグラフの一例を示した図である。
【発明を実施するための形態】
【００２２】
以下に本発明の実施の形態について図面を参照して詳細に説明するが、本発明はこれに限定されるものではない。
【００２３】
図１は本発明の実施の形態にかかる評価装置を示す概略ブロック図である。図２は図１の評価装置の動作を説明するフロー図である。
【００２４】
図１を参照して、評価装置１は、記録部３と、解析部５と、評価部７とを備える。解析部５は、数量化部５１と、特徴抽出部５３とを備える。評価装置１はソフトウェアのプログラミングを行う人２の思考力を評価する装置である。
【００２５】
図２を参照して、動作を説明する。ステップＳ１において、人２がプログラミングの学習を行っている場合には、その学習ログデータがソフトウェアのプログラミングを行う過程を表す多変量データとしてき記録部３により記録される。時系列データでもある学習ログデータの具体的なものとしては、ビジュアルプログラミング言語では、例えば、経過時間、マウス動作、ブロック連結、入力値、実行ボタン操作などが挙げられる。
【００２６】
ステップＳ２において、解析部５により、以下のような解析が行われる。すなわち、ステップＳ２１において、解析部５の数量化部５１は、記録部３に記録された学習ログデータ（時系列多変量データ）に対して予め定められたルールを適用し、人２の思考力の評価に必要な質的データの数量化を行う。質的なデータには行動データが該当し、具体的には、例えば、試行力と定義する前記評価される人がプログラミングにおいて試行錯誤を行う能力、構築力と定義する評価される人２が頭の中でプログラミングを構築する能力、集中力と定義する評価される人２がプログラミングに集中する能力、確実修正力として定義する評価される人２がプログラミングに誤りがあった際に確実に修正する能力、早期修正力と定義する評価される人２がプログラミングに誤りがあった際に早く修正する能力、及び、好奇心・知識活用力と定義する評価される人２がプログラミングに対する好奇心・知識活用能力などが挙げられる。ステップＳ２２において、解析部５の特徴抽出部５３は、数量化部５１によって数量化された質的なデータに対して解析を行い、評価される人２の思考力の特徴を抽出する。ここで、特徴は、例えば、複数の評価される人の学習ログデータが比較されることにより抽出され、又は、母集団での平均とのズレから浮き上がってくるものとして抽出されることで得られることになる。
【００２７】
以下、図３〜図１０を用いて、上記ステップＳ１において得られた学習ログデータを使用して、上記ステップＳ２において数量化した以降の処理を行ったデータの出力結果の例を示すための説明を行う。
【００２８】
図３は学習者Ａが課題Ａ，Ｂ，Ｃ・・・をクリアする際のプログラミングの正答例のデータベースの一例を示した図である。図４は学習者Ａの課題Ａに対するログデータが含まれている状態を示すログデータベースの一例を示した図である。図５は図３及び図４に示した状態において学習者Ａのように学習者が単一の場合における実行時間と正答率の表の一例を示した図である。図６は図５の内容も含む学習者が複数の場合における実行時間と正当率の表の一例を示した図である。図７は図６に示した表について実行時間と正当率のグラフにした一例を示した図である。
【００２９】
まずは、図３〜図７を用いて、上記ステップＳ１において得られた学習ログデータを使用して、上記ステップＳ２において数量化処理を行ったデータの出力結果の例を示すための説明を行う。
【００３０】
学習者Ａが課題Ａ，Ｂ，Ｃ・・・をクリアする際のプログラミングの正答例が、事前に図３に示すような正答例データベース９としてサーバ内に格納されている。ここで、この各課題に対する正答例を「Answer  Example（以降「Eans」）」とする。
【００３１】
さらに、図４に示すように、学習者Ａに対して専用のログデータベース１０が準備されている。ここで、図４では、学習者Ａの課題Ａに対するログデータが含まれている状態が示されている。なお、学習者が複数の場合には、各学習者に対して専用ログデータベースが準備される。例えば各学習者が各課題等に取り組んでいる際、作成したプログラミングを実行したときの時間を「action  time（以降「tact」）」、実行時の作成したプログラミングデータを「Create  Programming（以降「Cpro」）」とし、実行時のプログラミングデータと正答例を比較したときの割合を正答率「Answer  Rate（以降「Rans」）」とする。このような定義のもとで、図４に示すように、学習者Ａが課題Ａ等に対して任意の実行時間「tact  n」に作成したプログラミングデータ「Cpro  n」が格納されている。また、「tact  n」における「Cpro  n」と「Eans」を比較したときの正答率「Rans  n」が算出されていて、「Rans  n」もログデータベース１０に格納されている。そして数量化されたデータとして、図５に示すような学習者Ａの実行時間と正答率を表形式にした出力が可能になっている。
【００３２】
図６には同じ課題Ａに対して学習者が複数人いる際の実行時間と正答率の全員分の表の出力例を示している。その時の実行時間と正答率の関係をグラフ形式で出力したものを図７に示す。
【００３３】
ステップＳ３において、特徴抽出部５３によって抽出された特徴により評価される人２の思考力を評価が行われる。評価観点としては、プログラミングで育成する資質・能力の評価基準として提案されている、例えば、「知識及び技能」、「試行力・判断力・表現力等」、「主体的に学習に取り組む態度」など挙げられる。
【００３４】
図８は各学習者の解決力と試行力の算出結果の表の一例を示した図である。図９は図８の各学習者の解決力と試行力の算出結果をプロットしたグラフの一例を示した図である。図１０は図９に示したグラフの第１象限〜第４象限で区別された場合の学習者の特徴を評価するためのグラフの一例を示した図である。
【００３５】
以下、図８等を用いて、上記ステップＳ３におけるデータの評価方法についての例を示す。
【００３６】
課題に対する理解度を評価するにあたり、例えば、解決力「Ability  to  Solve（以降「AS」）」と、試行力「Ability  to  Try（以降「AT」）」の2つのパラメータを具体例に用いて評価を行う場合を説明する。解決力（AS）の定義とは、学習者が取り組む課題に対して、短時間かつ少ない実行回数で解決できる能力とする。この解決力を導出するための式は、各学習者の取組んだ課題に対して終了時の経過時間「t」、終了までの実行回数「N」、終了時の正答率「Rans」とするとき、学習者nの解決力ASnは式（１）で導出される。
【００３７】
【数１】
2020144315.tif 000003
【００３８】
また、例えば、同じ課題に対して複数人の学習者が取り組んでいる場合は、各学習者のAS値について偏差値「Deviation  value  of  Ability  to  Solve（以降「DAS」）」を算出し評価するものとする。ここで、μASは課題に対する全学習者のAS値の平均、σASは課題に対する全学習者のAS値の標準偏差とすると、学習者nの解決力の偏差値DASnは次の式（２）で導出される。
【００３９】
【数２】
2020144315.tif 000004
【００４０】
試行力（AT）の定義は、学習者が取り組む課題に対して、課題の終了までに多くの実行を行い、こまめにプログラミングの内容を確認し取り組む能力とする。この試行力を導出するための式は、各学習者の取組んだ課題に対しての終了時の経過時間「t」、終了までの実行回数「N」、終了時の正答率「Rans」とするとき、学習者nの解決力ATnは次の式（３）で導出される。
【００４１】
【数３】
2020144315.tif 000005
【００４２】
また、同じ課題に対して複数人の学習者が取り組んでいる場合は、各学習者のAT値について偏差値「Deviation  value  of  Ability  to  Try（以降「DAT」）」を算出し評価する。ここで、μATは課題に対する全学習者のAT値の平均、σATは課題に対する全学習者のAT値の標準偏差とすると、学習者nの解決力の偏差値DATnは次の式で導出される。
【００４３】
【数４】
2020144315.tif 000006
【００４４】
上記の手法で算出した解決力と試行力を用いて学習者の評価を行う。図８に示すように、各学習者に対する解決力と試行力の算出結果として表にまとめる。また図９に示すように、各学習者の解決力と試行力の2軸を用いてプロットしたグラフを作成する。これらが評価結果の出力として示されることが可能になる。
【００４５】
さらに、図１０に示すように、例えば、それぞれの解決力、試行力の値５０を基準とし、４つの領域に分けることができ、この領域を用いて学習者の学習特徴を示すことも可能になっている。領域Iは頭の中でプログラミングを構想して取り組むことができていることを示している。領域IIは頭の中で構想ができ、かつ確認もできていることを示している。領域IIIはよく確認して課題に取り組むことができていることを示している。領域IVは本課題に対して理解が不足しているため復習が必要ということを示している。このように、それぞれの領域において評価を行うことが可能なっており、これを評価結果の出力としてもよい。
【００４６】
上記に例として挙げた学習ログデータを収集する狙いとしては、活動状況の把握、理解度の推測、授業への意欲の推測、生徒の学習特徴の抽出、カリキュラムの特徴抽出などが挙げられる。図１及び図２に示したような装置による処理が行われることにより、保護者と、講師と、生徒とのそれぞれには、以下のような利点が得られる。まず、保護者にとっては、子供の成長が定量化されて今までは見えづらかった子供の成長を捉えやすくなり、また子供のスキルの成長の見える化が行われて今まで不明確であった子供のスキルの成長を明確に捉えることができるという利点が得られる。一方、講師側にとっては、今までは各生徒の理解度が把握でき難かった点が改善され、今までは生徒の学習状況が不透明になりがちだった点も改善されて明確化され、今までは学習特徴と個性を把握し難かった点が改善されて学習計画が立て易いという利点が得られる。これらにより、生徒側にとっては、今まではフィードバックが返せないことや授業のサポートが上手くできない傾向があったが、その点が改善されることになるという利点が得られる。
【００４７】
なお、上記では、評価装置１として捉えたが、評価部７を除いた記録部３及び解析部５とによる解析装置として捉えてもよい。また、装置は、ネットワークに繋がれた分散型のシステムの形態であってもよい。さらに、上記では装置（システム）として捉えているが、方法として捉えてもよい。さらに、その方法をコンピュータに実行させるプログラムとして捉えてもよい。
【００４８】
また、上記では、学習ログデータを具体的な例として示したが、プログラミング画面を時間の経過に合わせてスクリーンショット的に記録として残すなどのソフトウェアのプログラミングを行う過程を表す多変量データであってもよい。
【００４９】
さらに、図１の解析部５と図２の解析ステップにおいて、人工知能を使ってもよく、ディープラーニングによるモデル化と解析を行ってもよい。この場合、出力手段が、解析された人の思考力に関し、予めモデリングされて構築されたモデルデータと比較された結果を出力するとよい。
【００５０】
さらに、学習は、子供だけでなく、社会人でもよく、ソフトウェアのプログラミングという仕事の作業に対して、その人の思考力の解析・評価を行ってもよい。この場合には、人事考課、スキルアップの点からの社員教育にも、活用できることになる。
【符号の説明】
【００５１】
１・・・評価装置、３・・・記録部、５・・・解析部、７・・・評価部、５１・・・数量化部、５３・・・特徴抽出部
【図１】
2020144315.tif 000007
【図２】
2020144315.tif 000008
【図３】
2020144315.tif 000009
【図４】
2020144315.tif 000010
【図５】
2020144315.tif 000011
【図６】
2020144315.tif 000012
【図７】
2020144315.tif 000013
【図８】
2020144315.tif 000014
【図９】
2020144315.tif 000015
【図１０】
2020144315.tif 000016