• Search Research Projects
  • Search Researchers
  • How to Use
  1. Back to project page

2019 Fiscal Year Research-status Report

Developing an interaction function with compilers for card operation-based programming learning system

Research Project

Project/Area Number 19K02987
Research InstitutionHiroshima Institute of Technology

Principal Investigator

松本 慎平  広島工業大学, 情報学部, 准教授 (30455183)

Co-Investigator(Kenkyū-buntansha) 加島 智子  近畿大学, 工学部, 講師 (30581219)
Project Period (FY) 2019-04-01 – 2022-03-31
Keywordsプログラミング / C言語 / 学習支援 / カード操作方式
Outline of Annual Research Achievements

高度な認知能力が求められるプログラミング学習を効果的に支援するためには,プログラミングに要求される多様な技術要素を細分化し,認知資源を本質的学習に容易に配分可能にすること,それを踏まえ,オープンエンドに意味を持たせた個々の学習課題で全体の学習を構成することが効果的だと考えられている.このような背景のもと,分節化された意味のある部分の再構成を通じ部分間の関係を思考する学習に焦点を当て設計されたプログラミング学習において,外在的な非本質的認知負荷の影響をできる限り抑制するため,カード操作方式によるプログラミング学習支援システム(以降,従来システム)が開発されている.従来システムでは,正誤判定はカード順列のマッチングのみで行われていた.そのため,実際のコーディング演習のように,命令の並びに応じて実行結果をフィードバックとして返すことができない.高度なアルゴリズムの理解の深化に重要となる対話的な探索的思考課題を実現するためには,カードの並びに応じて実行結果を返答できるようにすること,加えて自学自習を促すために実行結果を足場かけの機会として活用可能な教材開発が必要であると考えられる.そこで,従来システムに対して,カードの並びに応じて実行結果を返答可能なフィードバック機能の実装を行った.その結果,実際のプログラミングで行われる学習活動と同様に,コンパイラと対話しながら探索的にプログラムを開発することが可能となった.

Current Status of Research Progress
Current Status of Research Progress

2: Research has progressed on the whole more than it was originally planned.

Reason

従来システムに対して,カードの並びに応じて実行結果を返答可能なフィードバック機能の開発に注力し,その実装を達成した.具体的には,学習者が組み立てたコードをJSON形式に変換した後,独自で開発したC言語コンパイル用のRESTfulAPIサービスを通してgccで実行し,実行結果を画面に表示する機能を従来システムに実装した.従来システムをフロントエンドとし,バックエンドにソースコードコンパイル実行を担い多言語実行に対応したRESTful APIサービスを構築し,JSONによる通信規約を定めることで技術課題解決を試みた.バックエンドサービスとして,コンテナ型仮想化の中でもスケーラブルであり,加えて,オーバーヘッドが少ないLinux Containers (LXC)を採用した.LXCに各種コンパイラを導入することで,多言語対応にも容易に可能となった.プロセス数やメモリなどのリソース制限を設定し,悪意のある実行や高負荷な処理を検知した.フロントエンドから送信されたソースコードをLXD APIを通してLXCに転送しコンパイル及び実行を行い,その結果をレスポンスとしてフロントシステムに返し最新の情報を動的に表示できるようにシステムを拡張した.

Strategy for Future Research Activity

本年度に得られたシステムを用いてその有用性を評価するための実験を行う.カードの並びに応じて実行結果を返答可能なフィードバック機能がある場合,ない場合とで学習効果および認知負荷を計測する.次に,フィードバック機能を活用した学習法,すなわち従来システムにおいてフィードバック機能があるからこそ実現可能な学習を実践する.その学習として,プログラムの実行結果を足場かけの機会として利用できるようにした支援法の有用性を検証する.具体的には,コンパイラの実行結果をフィードバックとして活用したスモールステップによる学習の有用性を検証する.スモールステップとは,最初から高い目標を掲げるのではなく,目標を細分化し小さな目標を達成する体験を重ねながら最終目標に誘導する教授法である.土肥らはARCSモデルに基づき,スモールステップと即時フィードバックは学習意欲を高めるために重要であるとした.このことを踏まえ,比較的難易度の高い課題の学習の容易性を少しでも高められるようフィードバックを行い,それによりスモールステップでの学習を支援する.スモールステップで実現するため,まず,複数レベルの入出力目標を学習者に提示し,最も低レベルの入出力を実現できるよう全体の中から一部のカードのみを設置することを学習者に指示する.低レベルの目標を達成できれば,次の段階のレベルの入出力の達成を目標として学習を進めるように指示する.このサイクルを繰り返しながら学習する方法と,そうでない方法との学習効果,学習時間,認知負荷の比較を行う.このような形で足場かけを行うことにより,学習者は自身の活動の適切さを意識しながら正解に近付いていることを常に把握でき,同時に,次に目指すべき目標をイメージできるようになると考えられる.この学習に必要になると考えられる「ユーザからのデータ入力機能」の開発も目標とする.

Causes of Carryover

(理由)研究代表者は2月から3月にかけて複数の研究会や学会全国大会に参加予定であったが,新型コロナの影響で全て参加を見合わせることになった.その結果,旅費,学会参加費が不使用となり,残額が生じた.
(使用計画)国際会議に追加で参加することを検討し,旅費と学会参加費に充てる予定である.また,論文投稿を既に1件進めており,論文投稿料としても使用する計画を立てている.加えて,実講義での適用実験のために,残額を利用して複数の開発用計算機を購入することや,講義補佐のアルバイト代として使用することを検討する.

  • Research Products

    (29 results)

All 2020 2019

All Journal Article (4 results) (of which Int'l Joint Research: 4 results,  Peer Reviewed: 4 results) Presentation (25 results) (of which Int'l Joint Research: 3 results)

  • [Journal Article] Factor Analysis to Examine the Effect and Expectation of Reading Simple Source Codes for Improving Programming Skill2019

    • Author(s)
      Shimpei Matsumoto, Tomoko Kashima, Shuichi Yamagishi
    • Journal Title

      Information Engineering Express

      Volume: Vol.5, No.1 Pages: pp.73-85

    • Peer Reviewed / Int'l Joint Research
  • [Journal Article] Development of Web-Based Programming Learning Support System with Graph Drawing of Mathematics as a Learning Task2019

    • Author(s)
      Tomoya Iwamoto, Shimpei Matsumoto
    • Journal Title

      Proc. of 2019 8th International Congress on Advanced Applied Informatics

      Volume: 1 Pages: pp.302-305

    • DOI

      10.1109/IIAI-AAI.2019.00067

    • Peer Reviewed / Int'l Joint Research
  • [Journal Article] Improving User Experience of C Programming Language Learning System for Novices2019

    • Author(s)
      Masanori Oshita, Kosuke Kaida, Shimpei Matsumoto
    • Journal Title

      Proc. of 2019 8th International Congress on Advanced Applied Informatics

      Volume: 1 Pages: pp.306-309

    • DOI

      10.1109/IIAI-AAI.2019.00068

    • Peer Reviewed / Int'l Joint Research
  • [Journal Article] A New Concept of Distance Modified by Levenshtein Distance for Clarifying the Learning Processes in Card Operation-Based Programming Learning Support System2019

    • Author(s)
      Shoko Morinaga, Shimpei Matsumoto, Yusuke Hayashi, Tsukasa Hirashima
    • Journal Title

      Proc. of 2019 8th International Congress on Advanced Applied Informatics

      Volume: 1 Pages: pp.310-313

    • DOI

      10.1109/IIAI-AAI.2019.00069

    • Peer Reviewed / Int'l Joint Research
  • [Presentation] チャンクの考えによるカード操作方式によるプログラミング学習支援法の提案2020

    • Author(s)
      倉本隼
    • Organizer
      教育システム情報学会2019年度学生研究発表会
  • [Presentation] カード操作方式におけるプログラミング学習支援システムにおけるラーニングアナリティクス2020

    • Author(s)
      岩本颯
    • Organizer
      教育システム情報学会2019年度学生研究会発表会
  • [Presentation] 初学者向けプログラミング学習支援システムHello Cを用いたシンタックスエラー修正学習用機能の提案2020

    • Author(s)
      大下昌紀
    • Organizer
      教育システム情報学会2019年度学生研究発表会
  • [Presentation] 意味のある部分単位でのソースコード読解技能の習得を狙いとしたプログラミング学習支援システムの開発に関する研究2020

    • Author(s)
      平谷明生
    • Organizer
      教育システム情報学会2019年度学生研究発表会
  • [Presentation] カード操作方式に基づくプログラミング学習支援システムの学習ログ活用法の検討2020

    • Author(s)
      作田康陽
    • Organizer
      日本経営システム学会イノベーション指向データ分析研究部会2019年度第4回研究会
  • [Presentation] プログラミング初学者を対象とした知能処理の基礎を学習するための教材開発に関する研究2020

    • Author(s)
      小田樹
    • Organizer
      日本経営システム学会イノベーション指向データ分析研究部会2019年度第4回研究会
  • [Presentation] チャンク単位でのソースコード読解技能の習得を狙いとしたプログラミング学習支援システムの開発に関する研究2020

    • Author(s)
      三宝帝斗
    • Organizer
      日本経営システム学会イノベーション指向データ分析研究部会2019年度第4回研究会
  • [Presentation] C言語学習におけるシンタックスエラー修正速度向上のための学習手法の提案と評価2020

    • Author(s)
      買田康介
    • Organizer
      第81回情報システム研究会
  • [Presentation] 多種多様な学習支援手法に対応した初学者向けC言語学習支援システムに対するプログラム空欄補填形式の学習支援機能の実装と分析2020

    • Author(s)
      大下昌紀
    • Organizer
      第81回情報システム研究会
  • [Presentation] 初学者向けC言語学習支援システムの実践と評価2019

    • Author(s)
      大下昌紀
    • Organizer
      第21回 IEEE Hiroshima Student Symposium
  • [Presentation] コーディング未経験者のためのゲーム開発によるプログラミング学習支援システムの開発2019

    • Author(s)
      岩本朋也
    • Organizer
      第21回 IEEE Hiroshima Student Symposium
  • [Presentation] チャンク方略を利用したカード操作方式によるプログラミング学習支援システムの実践とその学習における認知負荷の測定2019

    • Author(s)
      森永笑子
    • Organizer
      第21回 IEEE Hiroshima Student Symposium
  • [Presentation] Development of Web-Based Programming Learning Support System with Graph Drawing of Mathematics as a Learning Task2019

    • Author(s)
      Tomoya Iwamoto
    • Organizer
      2019 8th International Congress on Advanced Applied Informatics
    • Int'l Joint Research
  • [Presentation] Improving User Experience of C Programming Language Learning System for Novices2019

    • Author(s)
      Masanori Oshita
    • Organizer
      2019 8th International Congress on Advanced Applied Informatics
    • Int'l Joint Research
  • [Presentation] 2019 8th International Congress on Advanced Applied Informatics2019

    • Author(s)
      Shoko Morinaga
    • Organizer
      2019 8th International Congress on Advanced Applied Informatics
    • Int'l Joint Research
  • [Presentation] ゲーム開発を題材としたプログラミング学習支援システムのユーザインタフェースの改善2019

    • Author(s)
      岩本朋也
    • Organizer
      令和元年度(第70回)電気・情報関連学会中国支部連合大会
  • [Presentation] チャンク方略を利用したカード操作方式によるプログラミング学習支援システムの研究2019

    • Author(s)
      森永笑子
    • Organizer
      令和元年度(第70回)電気・情報関連学会中国支部連合大会
  • [Presentation] C言語学習支援システムの開発とその課題取得機能および解答提出機能の効果2019

    • Author(s)
      大下昌紀
    • Organizer
      令和元年度(第70回)電気・情報関連学会中国支部連合大会
  • [Presentation] 数学及び物理課題を題材としたゲーム開発学習教材の開発と試用2019

    • Author(s)
      岩本朋也
    • Organizer
      第44回教育システム情報学会全国大会
  • [Presentation] C言語初学者のためのリアルタイムモニタリングシステムの有用性の評価2019

    • Author(s)
      森永笑子
    • Organizer
      第44回教育システム情報学会全国大会
  • [Presentation] カード操作方式による学習支援システムにおけるフィードバック方式の提案2019

    • Author(s)
      大下昌紀
    • Organizer
      第44回教育システム情報学会全国大会
  • [Presentation] 学習意欲向上を目的としたC言語におけるI/Oエラー修正学習手法の提案2019

    • Author(s)
      大下昌紀
    • Organizer
      2019年 電気学会 電子・情報・システム部門大会
  • [Presentation] カード操作方式によるプログラミング学習支援システムにおける学習者の活動に基づく学習課題の特徴分析2019

    • Author(s)
      森永笑子
    • Organizer
      第80回情報システム研究会
  • [Presentation] 基礎数学における関数の本質的理解を支援するためのプログラミング学習支援システムの開発2019

    • Author(s)
      岩本朋也
    • Organizer
      第79回情報システム研究会
  • [Presentation] 初学者向けプログラミング学習システムにおける学習者支援機能の有用性評価のための実験方法の設計2019

    • Author(s)
      大下昌紀
    • Organizer
      第78回情報システム研究会

URL: 

Published: 2021-01-27  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi