{"title":"用于测试学生代码的进化编程技术","authors":"C. MacNish","doi":"10.1145/359369.359395","DOIUrl":null,"url":null,"abstract":"Tools for analysing student code offer great potential for enhancing student learning through informing both students and staff. One such tool, the datlab system, has been successfully employed in second year data structures courses and provides facilities for testing students' laboratory work, providing feedback to students, and assigning marks for completed tasks. While the system has proven successful, there is potential for significant improvement in the way that code is analysed and the quality of the feedback that is returned.\nThis paper reports on new work investigating the use of evolutionary computation as a mechanism for generating appropriate test sequences. Our goal is to synthesize test sequences that efficiently uncover logical errors in student code, provide lecturers with models of common student errors, and provide students with more helpful feedback to use in locating errors themselves. We present encouraging preliminary results showing that significant improvements can be achieved using the evolutionary approach, and discuss some of the challenges in extending this approach.","PeriodicalId":435916,"journal":{"name":"African Conference on Software Engineering","volume":"23 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2000-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"12","resultStr":"{\"title\":\"Evolutionary programming techniques for testing students' code\",\"authors\":\"C. MacNish\",\"doi\":\"10.1145/359369.359395\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Tools for analysing student code offer great potential for enhancing student learning through informing both students and staff. One such tool, the datlab system, has been successfully employed in second year data structures courses and provides facilities for testing students' laboratory work, providing feedback to students, and assigning marks for completed tasks. While the system has proven successful, there is potential for significant improvement in the way that code is analysed and the quality of the feedback that is returned.\\nThis paper reports on new work investigating the use of evolutionary computation as a mechanism for generating appropriate test sequences. Our goal is to synthesize test sequences that efficiently uncover logical errors in student code, provide lecturers with models of common student errors, and provide students with more helpful feedback to use in locating errors themselves. We present encouraging preliminary results showing that significant improvements can be achieved using the evolutionary approach, and discuss some of the challenges in extending this approach.\",\"PeriodicalId\":435916,\"journal\":{\"name\":\"African Conference on Software Engineering\",\"volume\":\"23 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2000-12-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"12\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"African Conference on Software Engineering\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/359369.359395\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"African Conference on Software Engineering","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/359369.359395","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Evolutionary programming techniques for testing students' code
Tools for analysing student code offer great potential for enhancing student learning through informing both students and staff. One such tool, the datlab system, has been successfully employed in second year data structures courses and provides facilities for testing students' laboratory work, providing feedback to students, and assigning marks for completed tasks. While the system has proven successful, there is potential for significant improvement in the way that code is analysed and the quality of the feedback that is returned.
This paper reports on new work investigating the use of evolutionary computation as a mechanism for generating appropriate test sequences. Our goal is to synthesize test sequences that efficiently uncover logical errors in student code, provide lecturers with models of common student errors, and provide students with more helpful feedback to use in locating errors themselves. We present encouraging preliminary results showing that significant improvements can be achieved using the evolutionary approach, and discuss some of the challenges in extending this approach.