野口 靖浩
研究概要
本研究室の研究内容は,知的教育システムに関する研究,プログラミング学習やソフトウェア設計の学習支援に関する研究,同教師支援・学習活動の分析に関する研究,第二言語学習支援に関する研究を主に考えています.大学内の講義の他に,社会人向けの講座なども重要な研究対象であり,研究内容の実践の場であると考えています.
視点の異なる対象世界間の関係に基づくプログラミング学習支援システムに関する研究
プログラミングの初心者によくある問題として,あるアルゴリズムの概念的な説明は理解できていても,プログラムに実装しようとすると行き詰まってしまう場合があります.多くの学習者は何度も試行錯誤する中でプログラミングできるようになっていきますが,それはなぜでしょうか? もう少し明示的に概念レベル理解と実装レベルの理解を結びつけて明示的に学習する方法はないでしょうか?
本研究では,プログラミング学習者自身が開発しているプログラムの機能・構造・振る舞いを熟練プログラマの視点に基いてリアルタイムに可視化することでプログラミング学習を支援するシステムを実現します.また,熟練したプログラマ(プログラミングできる人)は,開発状況や障害に応じて注目する範囲や抽象度を切り替えて開発対象を分析することができますが,プログラミング初心者はこれができないため演習の段階で躓いてしまうことが多ため,適宜アシストする必要もあります.
プログラミングを学習する段階で躓いて諦めてしまう人を 0 にしするために研究を進めています.
クラス図の自然言語化に基づくレビュー支援に関する研究
システム開発の場ではシステムの内部構造の把握と開発者間での設計共有の重要性が高まっており,UML等の設計記述言語でモデルを記述することや,記述されたモデルを読むことも増えています.クラス図を用いた設計の学習方法のひとつとして,与えられた要求仕様に基づいて考案したモデルをクラス図で記述し,それを相互レビューすることで学習する方法があります.
しかし,初学者にとってはクラス図で記述されたモデルを読み取り,仕様と照らし合わせて誤りや設計漏れを発見することは簡単ではありません.また,クラス設計は解がひとつに定まらないため,互いの指摘の妥当性を初学者同士で判断することも難しい場合があります.また,初学者がこうしたい思っている設計が,そのとおりにクラス図に表現できているとは限りません.
そこで,この研究では,学習者が記述したクラス図を自然言語に置き換えてフィードバックすることで,学習者の頭の中にある「こういう風な設計にしたい」という考えと,実際にクラス図に表現された内容,要求仕様で求められている事柄を自然言語で突き合わせて比較し,自己レビューできる仕組みを提供しようとしています.
プログラミング演習の学習者の活動の観測と分析に関する研究
初期のプログラミング学習がマンツーマンで行われることは稀で,少数の教師と多数の学習者の環境で行われることがほとんどです.その場合,教師からすると,誰がどのような内容で困っていて演習がうまく進んでいないのか,を把握できることが,直接的なサポートを行う上で非常に重要です.また,全体を通して,どの学習項目については理解が進んでいて,どの学習項目について理解が進んでいないかを把握することが,演習を適切にハンドリングすることや学習コンテンツを改善することに繋がります.
この研究では,学習者それぞれの演習状況を観測・収集し,困難に陥っているかどうか,困難に落っているとすれば,それがどのような箇所でどのような内容なのか,それは何を理解していないことに起因するのか,などを自動的に分析し,教師に提供する仕組みを提案しようとしています.
教員/研究室の独自ページ
第二言語学習支援システム(対象言語:日本語・英語)の研究.文法的・語彙的誤りを含む入力文の解析技術,Focus on Formsに基づく対話戦略の設計,Dictogloss学習者エージェントなどの研究を行っています.
組込みソフトウェア技術コンソーシアムに参画しています.組込みソフトウェア技術コンソーシアムで実施しているPBLによる教育プロジェクトは重要な研究対象であり,実践の場でもあります.