JP4808041B2 - プログラミング学習支援システムおよびプログラミング学習支援方法 - Google Patents
プログラミング学習支援システムおよびプログラミング学習支援方法 Download PDFInfo
- Publication number
- JP4808041B2 JP4808041B2 JP2006044452A JP2006044452A JP4808041B2 JP 4808041 B2 JP4808041 B2 JP 4808041B2 JP 2006044452 A JP2006044452 A JP 2006044452A JP 2006044452 A JP2006044452 A JP 2006044452A JP 4808041 B2 JP4808041 B2 JP 4808041B2
- Authority
- JP
- Japan
- Prior art keywords
- source program
- question
- client terminal
- data
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Electrically Operated Instructional Devices (AREA)
Description
(2)連接、条件判断処理、反復処理などのアルゴリズムの基本構成要素の理解と、それらを使ったソースプログラムを1行1行追う(トレースする)能力の修得
(3)連接、判断、繰り返しなどのアルゴリズムの基本構成要素を用いて、簡単なプログラムを作成する能力の修得
(4)各種のアルゴリズムやデータ構造をプログラムとして記述する能力の修得
Brown, M.H.: Exploring Algorithm Using Balsa-II, Computer, Vol.5, pp.14-36 (1998) Brown, M.H.: Zeus: A System for Algorithm Animation and Multi View Editing, Preceeding IEEE Workshop Visual Languages, IEEE CS Press, pp.4-9 (1991) Stasko J.T.: Tango: A Framework and System for Algorithm Animation, IEEE Computer, Vol. 23, No.9, pp.27-39 (1990) Beaza-Yates R.A., Quezada G., and Valmadre G.: Visula Debugging and Automatic Animation of C Programs, Software Visualization, Vol.7, pp.46-58 (1997) De Pauw W., Mitchell N., Robillard M., Sevitsky G., and Srinivasan H.: Drive-by Analysis of Running Programs, Proceeding for Workshop on Software Visualization, International Conference on Software Engineering, pp.17-23 (2001)
・問題文
・ソースプログラムの説明文
・制御構造記述
・キーワード
・ソースプログラム
・正答
問題生成モジュール(2)は、教員が出題したデータを元に、半自動的に類似問題を複数生成する。生成されたソースプログラムは、出題問題のソースプログラムとともにコンパイラーモジュール(3)に渡され、構文チェックが行われる。構文エラーがない場合、問題生成モジュール(2)は、コンパイラーモジュール(3)から、ソースプログラムの説明、実行結果(正答)、制御構造記述を受け取り、それらのデータに問題識別子、キーワード、問題文、ソースプログラムを加えて、問題データベース(1)へ格納する。
・ソースプログラム記述
・解答選択肢の記述
・問題バリエーションの設定:たとえば、条件判断処理では条件のバリエーション、繰り返し処理の場合には、ループカウンタの初期化、繰り返し条件、ループカウンタの刻みなどの設定を可能にする。
[1]問題文入力
学習者クライアント端末(30)に表示されるべき問題文を、このサブウィンドウに入力する。たとえば、対象となる言語がC++の場合は、次のような内容となる。
学習者クライアント端末(30)に表示されるべきソースプログラムを、このサブウィンドウに入力する。たとえば、対象となる言語がC++の場合は、次のような内容となる。
「変更項目選択」のサブウィンドウは、サーバ(10)の問題生成モジュール(2)において複数の類似問題を半自動的に作るために、ソースプログラムのどの内容を変更するかを選択するサブウィンドウである。たとえば、[2]のソースプログラムにおいて、繰り返しの条件とループカウンタの刻みを変更した場合は、次のように選択する。(四角で囲った部分が選択項目)
[3]のサブウィンドウで選択した項目に対して、どのような内容に変更するかを設定するサブウィンドウである。入力後、問題生成モジュール(2)は、ソースプログラムを、ここで設定した項目に書き換えて、複数の問題を生成する。たとえば、類似問題を3つ作成する場合には、次のように3つの条件を設定する。(四角で囲った部分が入力部分)
[1]問題文
出題する問題文を表示する。「問題提示画面」の内容と同一内容が「トレース実行画面」にも表示される。たとえば、問題文は次のような内容となる。
学習者クライアント端末(30)では、サーバ(10)から送られてきたソースプログラムを画面表示する。「問題提示画面」の内容と同一内容が「トレース実行画面」にも表示される。このとき「トレース実行画面」では、現在実行している命令の色を変えて、どこを実行しているのか理解しやすいようにすることが望ましい。たとえば、対象となる言語がC++の場合は、次のような内容となる。
選択式問題の場合は、解答群を表示し選択し、記述式問題の場合は、解答をキーボードから入力する。たとえば、[1][2]の例において、選択問題とする場合は、解答群として次のような内容となる。
現在実行している命令の解説を画面表示する。たとえば、[2]のソースプログラムの4行目int i=1, x=1;を実行している時には、次のような内容となる。
現在実行している命令を行った後の変数の内容を表示する。[2]のソースプログラムの4行目int i=1, x=1;を実行している時には、次のような内容となる。
ソースプログラムに対応した制御構造を下記のように図で表示する。このとき現在実行している場所の色を変えて、どこを実行しているのか理解しやすいようにすることが望ましい。
画面上の「各種ボタン」は、次の命令を実行、命令を1つ戻す、一時停止などを可能とするためのボタンである。
20 教員クライアント端末
30 学習者クライアント端末
1 問題データベース
2 問題生成モジュール
3 コンパイラーモジュール
4 可視化モジュール
5 制御部
6 主記憶部
7 入出力インターフェース
Claims (6)
- サーバに教員クライアント端末と学習者クライアント端末が接続されてなるプログラミング学習支援システムにおいて、
サーバは、問題データベース、問題生成モジュール、コンパイラーモジュールおよび可視化モジュールを備え、
問題データベースは、問題識別子、ソースプログラムを実行したときの実行結果を問うものとする問題文、ソースプログラム、制御構造記述、ソースプログラムの各命令の解説の説明文および問題の正答を含むシステムに必要なデータを管理し、
問題生成モジュールは、教員クライアント端末から入力された、ソースプログラムを実行したときの実行結果を問うものとする問題文と問題の内容であるソースプログラムからなる出題データを受け取り、受け取った出題データをもとに、そのソースプログラムのどの内容を変更するかについての教員クライアント端末からのデータを受けて、類似問題のソースプログラムを生成した後、出題問題のソースプログラムと生成した類似問題のソースプログラムをコンパイラーモジュールに渡し、コンパイラーモジュールから出題問題および類似問題のソースプログラムの各命令の解説の説明文、正答である実行結果および制御構造記述を受け取り、これらのデータに問題識別子、問題文ならびに出題問題および類似問題のソースプログラムを加えて問題データベースに渡し、
コンパイラーモジュールは、字句解析および構文解析部と機械語翻訳部を有し、字句解析および構文解析部は、問題データベースより受け取ったソースプログラムの字句解析および構文解析を行い、ソースプログラムの各命令の解説の説明文および制御構造記述を問題生成モジュールに返し、機械語翻訳部は、コンパイラーによりコンパイルを行い、ソースプログラムを実行して、正答である実行結果を問題生成モジュールに返し、
可視化モジュールは、問題データベースのデータを用い、制御構造記述よりチャートを作成し、ソースプログラム、チャートおよびソースプログラムの各命令の解説の説明文を同期させ、変数の内容を得て、学習者クライアント端末からの要求を受けて表示画面を生成し、
教員クライアント端末は、ソースプログラムを実行したときの実行結果を問うものとする問題文と問題の内容であるソースプログラムからなる出題データ、解答選択肢の記述または解答欄の設定のデータ、類似問題作成のために出題データのソースプログラムのどの内容を変更するかについてのデータの入力を受け付け、
学習者クライアント端末は、問題提示画面を表示し、その問題の解答を受け付けた後、ソースプログラムのトレース実行画面を表示することを特徴とするプログラミング学習支援システム。 - 学習者クライアント端末は、学習者が作成したソースプログラムを受け付け、そのソースプログラムをコンパイラーモジュールに渡し、サーバの各モジュールは教員作成ソースプログラムに代えて学習者自作のソースプログラムをもとに各処理を行うことを特徴とする請求項1に記載のプログラミング学習支援システム。
- サーバと教員クライアント端末および学習者クライアント端末がインターネットにより接続されていることを特徴とする請求項1または2に記載のプログラミング学習支援システム。
- 教員クライアント端末の画面レイアウトが、ソースプログラムを実行したときの実行結果を問うものとする問題文および問題の内容であるソースプログラムからなる出題データを入力するための出題データ入力画面と、類似問題を出題可能にするために出題データのどの内容を変更するかについての変更項目選択および変更項目設定を行う複数問題設定画面を有することを特徴とする請求項1から3のいずれかに記載のプログラミング学習支援システム。
- 問題識別子、ソースプログラムを実行したときの実行結果を問うものとする問題文解答を施す問題文、ソースプログラム、制御構造記述、ソースプログラムの各命令の解説の説明文および問題の正答を含むシステムに必要なデータを管理する問題データベースを有するとともに問題生成モジュール、コンパイラーモジュールおよび可視化モジュールを備えたサーバに、教員クライアント端末と学習者クライアント端末が接続されたシステムにおけるプログラミング学習支援方法であって、
前記サーバの問題生成モジュールが、教員クライアント端末から入力された、ソースプログラムを実行したときの実行結果を問うものとする問題文と問題の内容であるソースプログラムからなる出題データを受け取り、受け取った出題データをもとに、そのソースプログラムのどの内容を変更するかについての教員クライアント端末からのデータを受けて、類似問題のソースプログラムを生成した後、出題問題のソースプログラムと生成した類似問題のソースプログラムをコンパイラーモジュールに渡し、コンパイラーモジュールから出題問題および類似問題のソースプログラムの各命令の解説の説明文、正答である実行結果および制御構造記述を受け取り、これらのデータに問題識別子、問題文ならびに出題問題および類似問題のソースプログラムを加えて問題データベースに渡し、
前記サーバのコンパイラーモジュールが、字句解析および構文解析部と機械語翻訳部を有し、字句解析および構文解析部は、問題データベースより受け取ったソースプログラムの字句解析および構文解析を行い、ソースプログラムの各命令の解説の説明文および制御構造記述を問題生成モジュールに返し、機械語翻訳部は、コンパイラーによりコンパイルを行い、ソースプログラムを実行して、正答である実行結果を問題生成モジュールに返し、
前記サーバの可視化モジュールが、問題データベースのデータを用い、制御構造記述よりチャートを作成し、ソースプログラム、チャートおよびソースプログラムの各命令の解説の説明文を同期させ、変数の内容を得て、学習者クライアント端末からの要求を受けて表示画面を生成し、
教員クライアント端末が、ソースプログラムを実行したときの実行結果を問うものとする問題文と問題の内容であるソースプログラムからなる出題データ、解答選択肢の記述または解答欄の設定のデータ、類似問題作成のために出題データのソースプログラムのどの内容を変更するかについてのデータの入力を受け付け、
学習者クライアント端末が、問題提示画面を表示し、その問題の解答を受け付けた後、ソースプログラムのトレース実行画面を表示することを特徴とするプログラミング学習支援方法。 - 学習者クライアント端末が、学習者が作成したソースプログラムを受け付け、そのソースプログラムをコンパイラーモジュールに渡し、サーバの各モジュールは教員作成ソースプログラムに代えて学習者自作のソースプログラムをもとに各処理を行うことを特徴とする請求項5に記載のプログラミング学習支援方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006044452A JP4808041B2 (ja) | 2006-02-21 | 2006-02-21 | プログラミング学習支援システムおよびプログラミング学習支援方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006044452A JP4808041B2 (ja) | 2006-02-21 | 2006-02-21 | プログラミング学習支援システムおよびプログラミング学習支援方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007225726A JP2007225726A (ja) | 2007-09-06 |
JP4808041B2 true JP4808041B2 (ja) | 2011-11-02 |
Family
ID=38547640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006044452A Expired - Fee Related JP4808041B2 (ja) | 2006-02-21 | 2006-02-21 | プログラミング学習支援システムおよびプログラミング学習支援方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4808041B2 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103150694B (zh) * | 2013-02-05 | 2016-08-03 | 北京优才创智科技有限公司 | 一种远程教学数据的处理方法和装置 |
JP6176870B2 (ja) * | 2016-01-05 | 2017-08-09 | 株式会社セガ トイズ | コーディング玩具、ブロック、ステージ、形象体玩具及びコーディング方法 |
JP2017219718A (ja) * | 2016-06-08 | 2017-12-14 | 大日本印刷株式会社 | プログラミング学習装置及びプログラム |
KR101963016B1 (ko) * | 2017-01-31 | 2019-03-27 | 계명대학교 산학협력단 | 지능형 컴퓨터 프로그래밍 언어 학습기 및 그것을 이용한 학습 방법 |
KR102069096B1 (ko) | 2018-04-17 | 2020-01-22 | (주)블루커뮤니케이션 | 피지컬 디바이스의 직접적 원격 제어 장치 |
KR20200068159A (ko) * | 2018-12-04 | 2020-06-15 | 순천향대학교 산학협력단 | 프로그래밍 실습 시스템 및 방법 |
CN110378820B (zh) * | 2019-07-25 | 2022-08-23 | 上海商汤智能科技有限公司 | 教学系统及方法、电子设备和存储介质 |
CN114020369A (zh) * | 2021-10-29 | 2022-02-08 | 上海商汤科技开发有限公司 | 编程教育实验方法及装置、电子设备和存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08152843A (ja) * | 1994-11-28 | 1996-06-11 | Matsushita Electric Ind Co Ltd | 作文問題生成方法および装置 |
JP2002268536A (ja) * | 2001-03-07 | 2002-09-20 | Tsubota Toru | 問題作成装置、問題作成方法及び問題作成処理をコンピュータに実行させるためのプログラム |
JP3493609B1 (ja) * | 2003-08-13 | 2004-02-03 | 有限会社快適ソフト | コンピュータを利用した選択肢問題形式の学習用プログラム |
-
2006
- 2006-02-21 JP JP2006044452A patent/JP4808041B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2007225726A (ja) | 2007-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4808041B2 (ja) | プログラミング学習支援システムおよびプログラミング学習支援方法 | |
Koorsse et al. | Programming assistance tools to support the learning of IT programming in South African secondary schools | |
Ruthven et al. | Using graphing software to teach about algebraic forms: A study of technology-supported practice in secondary-school mathematics | |
Sánchez et al. | The learning of control concepts using interactive tools | |
Buteau et al. | University students turning computer programming into an instrument for ‘authentic’mathematical work | |
Ishizue et al. | PVC. js: visualizing C programs on web browsers for novices | |
Kearney-Volpe et al. | Accessible web development: Opportunities to improve the education and practice of web development with a screen reader | |
Arnaiz‐González et al. | Seshat—a web‐based educational resource for teaching the most common algorithms of lexical analysis | |
Song | A review of how class orchestration with technology has been conducted for pedagogical practices | |
Bartzia et al. | Proof assistants for undergraduate mathematics and computer science education: elements of a priori analysis | |
Matayoshi et al. | Abstract thinking description system for programming education facilitation | |
Korhonen et al. | Interaction and feedback in automatically assessed algorithm simulation exercises | |
Staub | xLogo online-a web-based programming IDE for Logo | |
Radaković | Visualization of Formal Semantics-Possibilities of Attracting Formal Methods in Teaching | |
Batiha et al. | Adoption of visual programming environments in programming learning | |
Barbosa et al. | Introducing testing practices into objects and design course | |
Devasani et al. | Evaluation of two intelligent tutoring system authoring tool paradigms: Graphical user interface-based and text-based | |
Pedron | An innovative tool for teaching structural analysis and design | |
Helic | Formal Representations of Learning Scenarios: A Methodology to Configure E-Learning Systems. | |
Kiesler | An Exploratory Analysis of Feedback Types Used in Online Coding Exercises | |
Kono et al. | Development and Evaluation of Functions for Elementary/Secondary Programming Education: The Visual Programming Environment “AT” | |
Chiarelli et al. | Evaluating the Utility of Notional Machine Representations to Help Novices Learn to Code Trace | |
Bravo et al. | Group learning of programming by means of real time distributed collaboration techniques | |
Pareja-Flores et al. | Program execution and visualization on the Web | |
Mogi et al. | Proposal for Automatic Problem and Feedback Generation for Use in Trace Learning Support Systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070719 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100831 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101029 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110517 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110630 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110726 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110816 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140826 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |