2024-03-28T20:00:47Zhttps://ipsj.ixsq.nii.ac.jp/ej/?action=repository_oaipmhoai:ipsj.ixsq.nii.ac.jp:001822722020-10-27T05:05:40Z00934:07757:09024:09151
CheCoPro:協調的知識創造を指向した初学者の協調プログラミング支援システムCheCoPro: A Software Promoting Collaborative Programming for Novices through Collaborative Knowledge Creation Approachjpn[研究会推薦論文] 協調プログラミング,プログラミング教育,CSCL,初学者,インタラクションhttp://id.nii.ac.jp/1001/00182184/Articlehttps://ipsj.ixsq.nii.ac.jp/ej/?action=repository_action_common_download&item_id=182272&item_no=1&attribute_id=1&file_no=1Copyright (c) 2017 by the Information Processing Society of Japan静岡大学大学院情報学研究科静岡大学大学院情報学研究科/現在,青山学院大学社会情報学部静岡大学大学院情報学研究科加藤, 優哉松澤, 芳昭酒井, 三四郎本研究では,初学者の協調プログラミングを支援するシステム「CheCoPro」の提案と評価を行った.協調的知識創造の理論と教育実践の問題点の整理を通して,「協調プログラミング」を,(1)collective contribution:能力が一律ではないグループのメンバ個々人が能力に見合った貢献ができていること,(2)productive interaction:グループメンバのインタラクションによって,各メンバの知識・能力が相乗的にプロジェクトに反映されていること,と定義した.初学者の協調プログラミング支援のために(a)独立した個々のブランチを管理する,(b)グループメンバの最新バージョンをリアルタイムに閲覧できる,(c)グループメンバのソースコードを単純操作で取り込むことができる,という3点の特長を持った「独立同期モデル」を提案し,提案モデルに基づくソフトウェア「CheCoPro」を開発した.文科系の学生100名を対象とする大学1年次のプログラミング入門教育で実践を行った.システムに記録された操作ログを用い,グループメンバ間相互作用を表すインタラクション図を作成し,質的分析を行った.その結果,協調プログラミングの2つの要件を充足すると解釈されるインタラクションパターンが見られた.アンケート結果も,グループメンバ間の能力差にかかわらず,個々のメンバが遠慮せず,より満足度の高い貢献を行うことができたことを示した.We have developed “CheCoPro”: a software to support collaborative programming in introductory programming education. Through literature review and reflection on our experiences, we defined collaborative programming as it fulfils the following two requirements: (1) collective contribution: all members make contributions to the group products on an assumption of skill level differences between members, and (2) productive interaction: a product is not a result of working individually, but the procedure includes activities of reading others' code, improvement, and expansion. To support the collaborative programming, we proposed the model named “individual work branch and real-time sharing”, which has the following features: (a) changes made by someone do not directly affect others' code, (b) it is always possible to view others' latest programs, and (c) novice programmers can import others' programs in a simple way. We implemented the model as a workable software, and it was examined using 100 liberal arts students in our introductory programming course. Qualitative analysis was conducted with the interaction charts which is created by using activity logs in the system and it visualizes an interaction pattern representing a trajectory in interaction of collaborative programming. The results showed that the visualized patterns were interpreted to fulfil two requirements of the defined collaborative programming. The results of questionnaire by students showed that despite of big differences in skills between group members, the system reduced refraining to contribute a group product, and it led a high achievement to their contribution.AA12697953情報処理学会論文誌教育とコンピュータ(TCE)3228402017-06-142188-42342017-06-08