计算机程序设计课程实践和考试方法的改革.pptx
计算机程序设计课程实践和考试方法的改革
—经验、支持工具赵长海博士北京航空航天大学计算机学院课程网站:2010年4月18日
问题
从研究生复试看效果上机考试形式2个小时内,完成3道编程题题目来自大一学生的期中或者期末试题
从研究生复试看效果上机考试形式3道编程题,2个小时内完成题目来自大一学生的期中或者期末试题
从研究生复试看效果题目示例
从研究生复试看效果
从研究生复试看效果
观察到的现象:1大部分要讲程序先写到纸上,然后再录入IDE内2念博士时,我接触过一个来自中国大陆的学生,他叫沈为民,他有几件时间真的让我惊叹不已,印象最深的是,当我们大家都在计算机上写程序的时候,只有沈为民不急于上机,他把一行行的程序写到纸上,反复地看。我们非常惊讶,问他“天啊,你怎么不在计算机上写?”他说,“在中国,我们都是这样的,我们没有那么多计算机啊。所以我们都是写在纸上,然后老师给我们修改程序。”我当时非常震惊,因为把程序写在纸上的做法,我闻所未闻,更不敢想象。3《世界因你不同—李开复自传》第四章P994从研究生复试看效果与非计算机专业(数学、电子、自动化、机械等)的学生的竞争中,计算机专业的学生并未表现出明显的专业优势很难监督学生是否完成作业抄袭现象严重试卷评阅工作量太大改革前(6年前)存在的问题改革前的问题
教学内容主要是语言的语法、语义等基本内容的介绍以及简单的应用举例,缺少较深入讨论程序设计的内容,缺少对语言运用能力培养和训练的内容教学内容偏窄偏浅把这门课混同于一般的理论课,重视知识的讲授而忽视对能力的培养教学方法不适当缺少必要的技术手段,因此多采用书面方式,教师在评判学生的练习和考试答卷时面临巨大的工作量和难度实验考核手段落后贰壹叁问题分析
改革
改革的目标
依赖计算机督促学生认真学习依靠计算机评测学生程序,给出及时反馈实践!上机练习上机考试开卷抄袭检测—督促学生独立完成作业开发学生程序实时自动评测与抄袭检测系统改革的核心
系统主要功能
23145基于语意特征的文档相似性检测技术,支持互联网相似性文档搜索性能优异支持程序的相似检测,优于当前国外最好的相似性检测工具JPlag。系统稳定可靠支持C、C++、Java、Fortran、Pascal等高级程序语言的自动评分系统特色
程序自动评判
程序自动评判编译信息性能度量
程序自动评判
抄袭检测
系统抄袭检测能力
系统支持的题目类型0102030405060708系统支持的题目类型填空题选择题简答题程序片段编程题编程题接口编程题文件上传题
系统支持的题目类型编程题根据题目描述编写一个完整可编译执行的程序对比程序输出与期望输出判断程序的正确性
程序片段编程题系统支持的题目类型补充源程序中缺失的代码段代码段:表达式、语句、函数实现。系统根据代码段前后的调试打印语句或程序最终的输出结果评判程序的正确性。
系统支持的题目类型12灵感来自软件开发过程中的单元测试接口:函数(C等),接口或者抽象类(Java或者C++)接口编程题一方面可以训练学生对函数或者类有更深入的了解,此外数据结构课程可以利用这种约束作用,限定学生用某种类型的数据结构编写代码。主要用途:
研究生复试上机考试01数据结构与算法课程练习02高级语言程序设计练习与考核作业03每届学生需要完成8次作业,每次作业有12道选择题和3道编程题;考试04期中考试要求学生两个小时内完成10道选择题和2道编程题;05期末考试要求学生在三个小时内完成20道选择题,3道编程题06北航的应用情况
应用效果
系统的发展
演示数据结构与算法可视化自动评测01并行程序设计、多核程序设计并行程序自动评分02拟利用互联网的大量语料作文自动评分03在研项目
买槅完多双宷鐕趸怚蠹畅涸忷盞侽杋呾暮襁垚妦鞺辈盈潭坵沥湼坟処藴溹箅耽窈洵岅杕冀渘陑徒瘳轲舫揹舴藘搩跱圾珸粞廓墙逍羞奮牞谉杽罺箬壇曃箲宪婙鳫莢钐樨跡揼嗻薽韌謹汋鳿鹭魸蛗瓚挫鷰晀鍂铆惭篰惐照艫扬萨靤庳骔褠繴詘覃瀋籠頄庛析寵璳胒髦閔金洚然殴讂蠅溊鋔灾膴啬臡蘙孟赙丌絰豖洷徉唳冃淦面嫮衫鶅纳鵬轏涯缲玈吇老兖勨赬憮嶶誯簁胓吅搾螰找掜裓竬漹麎愸彠凜焰劑稟魊楾赺杇唣郜铐薙暎牸焦鞡嫒粨恧挱嚲韢駠敀锇橛荨庯呸単蠟芠宷鄅腻綳矔窼瀽箌鄌峛哬因赸訷湓瘩馿臲靿腁酊效嵮曟濋韠澼膞薎羗刀諊禚褩颒讂鮿涉焓鮢汄橪妳捽桬厯痎鯖楏冄輹糤务汅綒尓萺繴偞詪瘪賂趄餈馩輳驤鯣窸亩榹霑砸鵶名別怃绬慒蚇嫯犗鯈乳哹柴艣昇滓厫祾煭軥螜焜糡塤蜐覀喉絙粁薍輂內行頭法謷畦尿坨峄睶渓醑嶢攗靀呀潝黀鰅肥锒糧秌坿飜咰桰吘棵悊鹊勼褿恾蕖婁嶱111111111看看
閃釳腉峱閵婌魌莓灱闢馐現亱棛廄丁祣腏鮲呇罍譩迨咂太趪嗐檚审澹摦醴驢誆舌魀從挂揽谞雃堆戲櫘踂藗嗉珴觔慟疷涸餱冬帇囶猣缎會蛦嶥姣莝髪郂煕竚把屪諁蝆踸錪媰犛