Combining Self-explanation Strategy and Ontology on Programming Feedback System

碩士 === 國立成功大學 === 工程科學系 === 104 === Nowadays, computer programming is an important skill and ability for almost all the, especially engineering, fields. Prior researches show that programming also realizes problem solving process, so learning programming can also boost problem solving ability. Some...

Full description

Bibliographic Details
Main Authors: Cheng-WeiYen, 顏丞緯
Other Authors: Tzone-I Wang
Format: Others
Language:zh-TW
Published: 2015
Online Access:http://ndltd.ncl.edu.tw/handle/u2hyg2
id ndltd-TW-104NCKU5028039
record_format oai_dc
spelling ndltd-TW-104NCKU50280392019-05-15T22:53:51Z http://ndltd.ncl.edu.tw/handle/u2hyg2 Combining Self-explanation Strategy and Ontology on Programming Feedback System 結合自我解釋策略及本體論之程式設計回饋系統 Cheng-WeiYen 顏丞緯 碩士 國立成功大學 工程科學系 104 Nowadays, computer programming is an important skill and ability for almost all the, especially engineering, fields. Prior researches show that programming also realizes problem solving process, so learning programming can also boost problem solving ability. Some researches use self-explanation strategy to improve problem solving process, which contain the “understanding and defining the problem” and the ”planning the solution” levels. The self-explanation, facilitating combining new information with known conceptual models and generating inferences on solutions, can help completing the two levels of the problem solving process. A self-explanation shows what you think or inference on the concept of an entity generated by an activity you are engaging in. Without proper prior knowledge, a self-explanation may generate errors and result in constructing error concepts if proper guidance were not given. Error concepts surely will become obstacles in further knowledge constructions. To help programmer to gain solid sound concepts of a programming language and boost their problem solving ability, this study constructs a programming environment with self-explanations and feedbacks for the popular engineering language C++. An assisted programming system from a previous research is extended with a self-explanation strategy, which, when a programmer gets a compilation error, gives extended examples to the programmer and asks for a self-explanation on the inference of the error. Using an algorithm developed in this study, the system compares the self-explanation string from the programmer and some base strings, established by programing experts for the possible explanations on the error, and analyzes the correctness of the string and possible misconceptions in it. Based on the analyzing result, the system tries to provide proper learning material and program examples as feedbacks, which are to correct the misconceptions. This study constructs ontology of C++ programming concepts hierarchy with instances of possible misconceptions and their proper feedbacks. The possible misconceptions are collected from actual programming practices in some pilot experiments involving programmers of college students. The final experiment involves 13 college students who use the system for actual programming. The system records all of student activities on their programming practices, analyzes all the self-explanations recorded, and reaches an average accuracy of 84.7% after the programming experts verify the results. All the schemes and algorithms developed in this study forms a methodology for establishing system with self-explanation learning strategy in other fields. Tzone-I Wang 王宗一 2015 學位論文 ; thesis 75 zh-TW
collection NDLTD
language zh-TW
format Others
sources NDLTD
description 碩士 === 國立成功大學 === 工程科學系 === 104 === Nowadays, computer programming is an important skill and ability for almost all the, especially engineering, fields. Prior researches show that programming also realizes problem solving process, so learning programming can also boost problem solving ability. Some researches use self-explanation strategy to improve problem solving process, which contain the “understanding and defining the problem” and the ”planning the solution” levels. The self-explanation, facilitating combining new information with known conceptual models and generating inferences on solutions, can help completing the two levels of the problem solving process. A self-explanation shows what you think or inference on the concept of an entity generated by an activity you are engaging in. Without proper prior knowledge, a self-explanation may generate errors and result in constructing error concepts if proper guidance were not given. Error concepts surely will become obstacles in further knowledge constructions. To help programmer to gain solid sound concepts of a programming language and boost their problem solving ability, this study constructs a programming environment with self-explanations and feedbacks for the popular engineering language C++. An assisted programming system from a previous research is extended with a self-explanation strategy, which, when a programmer gets a compilation error, gives extended examples to the programmer and asks for a self-explanation on the inference of the error. Using an algorithm developed in this study, the system compares the self-explanation string from the programmer and some base strings, established by programing experts for the possible explanations on the error, and analyzes the correctness of the string and possible misconceptions in it. Based on the analyzing result, the system tries to provide proper learning material and program examples as feedbacks, which are to correct the misconceptions. This study constructs ontology of C++ programming concepts hierarchy with instances of possible misconceptions and their proper feedbacks. The possible misconceptions are collected from actual programming practices in some pilot experiments involving programmers of college students. The final experiment involves 13 college students who use the system for actual programming. The system records all of student activities on their programming practices, analyzes all the self-explanations recorded, and reaches an average accuracy of 84.7% after the programming experts verify the results. All the schemes and algorithms developed in this study forms a methodology for establishing system with self-explanation learning strategy in other fields.
author2 Tzone-I Wang
author_facet Tzone-I Wang
Cheng-WeiYen
顏丞緯
author Cheng-WeiYen
顏丞緯
spellingShingle Cheng-WeiYen
顏丞緯
Combining Self-explanation Strategy and Ontology on Programming Feedback System
author_sort Cheng-WeiYen
title Combining Self-explanation Strategy and Ontology on Programming Feedback System
title_short Combining Self-explanation Strategy and Ontology on Programming Feedback System
title_full Combining Self-explanation Strategy and Ontology on Programming Feedback System
title_fullStr Combining Self-explanation Strategy and Ontology on Programming Feedback System
title_full_unstemmed Combining Self-explanation Strategy and Ontology on Programming Feedback System
title_sort combining self-explanation strategy and ontology on programming feedback system
publishDate 2015
url http://ndltd.ncl.edu.tw/handle/u2hyg2
work_keys_str_mv AT chengweiyen combiningselfexplanationstrategyandontologyonprogrammingfeedbacksystem
AT yánchéngwěi combiningselfexplanationstrategyandontologyonprogrammingfeedbacksystem
AT chengweiyen jiéhézìwǒjiěshìcèlüèjíběntǐlùnzhīchéngshìshèjìhuíkuìxìtǒng
AT yánchéngwěi jiéhézìwǒjiěshìcèlüèjíběntǐlùnzhīchéngshìshèjìhuíkuìxìtǒng
_version_ 1719136673838661632