学习代码质量永远不会太早:对计算机科学一年级学生代码质量的纵向研究

Linus Östlund, Niklas Wicklund, R. Glassey
{"title":"学习代码质量永远不会太早:对计算机科学一年级学生代码质量的纵向研究","authors":"Linus Östlund, Niklas Wicklund, R. Glassey","doi":"10.1145/3545945.3569829","DOIUrl":null,"url":null,"abstract":"Low code quality incurs a significant cost upon the software industry. Despite this, little serious effort has been devoted to the topic at the most basic levels of computing science education. Where studies have been conducted, the results are disappointing in terms of code quality. In this work, four iterations of a medium to large CS1 and CS2 course (n=200 students) were analyzed through the lens of code violations to better understand (1) what code violations occur most frequently, (2) how does their occurrence vary throughout the course, and (3) to what extent do teaching assistants have an effect upon code quality. Results showed a statistically significant improvement in code quality over 19 assignments in all four course iterations. In particular, when a single violation was the focus of a learning outcome, the effects were both a dramatic fall and sustained low occurrence. However, this improvement was mostly focused on the three most frequently occurring violations (> 70%), which masked an increase in lesser occurring violations throughout the course. Finally, the effects from different teaching assistants were found to be random at best, contradicting expectations that their influence would be easily detected. Given that explicit learning outcomes targeted at code quality had an effect and teaching assistant influence had no effect, a path forward to improving code quality might combine these forces without creating too many additional demands upon the already stretched teaching resources with CS1 and CS2 courses.","PeriodicalId":371326,"journal":{"name":"Proceedings of the 54th ACM Technical Symposium on Computer Science Education V. 1","volume":"17 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-03-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"It's Never too Early to Learn About Code Quality: A Longitudinal Study of Code Quality in First-year Computer Science Students\",\"authors\":\"Linus Östlund, Niklas Wicklund, R. Glassey\",\"doi\":\"10.1145/3545945.3569829\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Low code quality incurs a significant cost upon the software industry. Despite this, little serious effort has been devoted to the topic at the most basic levels of computing science education. Where studies have been conducted, the results are disappointing in terms of code quality. In this work, four iterations of a medium to large CS1 and CS2 course (n=200 students) were analyzed through the lens of code violations to better understand (1) what code violations occur most frequently, (2) how does their occurrence vary throughout the course, and (3) to what extent do teaching assistants have an effect upon code quality. Results showed a statistically significant improvement in code quality over 19 assignments in all four course iterations. In particular, when a single violation was the focus of a learning outcome, the effects were both a dramatic fall and sustained low occurrence. However, this improvement was mostly focused on the three most frequently occurring violations (> 70%), which masked an increase in lesser occurring violations throughout the course. Finally, the effects from different teaching assistants were found to be random at best, contradicting expectations that their influence would be easily detected. Given that explicit learning outcomes targeted at code quality had an effect and teaching assistant influence had no effect, a path forward to improving code quality might combine these forces without creating too many additional demands upon the already stretched teaching resources with CS1 and CS2 courses.\",\"PeriodicalId\":371326,\"journal\":{\"name\":\"Proceedings of the 54th ACM Technical Symposium on Computer Science Education V. 1\",\"volume\":\"17 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2023-03-02\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of the 54th ACM Technical Symposium on Computer Science Education V. 1\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/3545945.3569829\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 54th ACM Technical Symposium on Computer Science Education V. 1","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3545945.3569829","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

摘要

低代码质量给软件行业带来了巨大的成本。尽管如此,在计算机科学教育的最基本层面上,很少有认真的努力致力于这个主题。在进行研究的地方,就代码质量而言,结果是令人失望的。在这项工作中,通过代码违规的镜头分析了中大型CS1和CS2课程(n=200名学生)的四次迭代,以更好地理解(1)哪些代码违规最频繁发生,(2)它们在整个课程中的发生情况如何变化,以及(3)助教对代码质量的影响程度。结果显示,在所有四个课程迭代的19个作业中,代码质量在统计上有显著的改善。特别是,当一个单一的违规行为成为学习结果的焦点时,其影响是戏剧性的下降和持续的低发生率。然而,这种改善主要集中在三种最常见的违规行为上(> 70%),这掩盖了整个过程中较少发生的违规行为的增加。最后,不同助教的影响被发现最多是随机的,这与他们的影响很容易被发现的预期相矛盾。考虑到针对代码质量的明确学习成果有效果,而助教的影响没有效果,提高代码质量的途径可能会将这些力量结合起来,而不会对CS1和CS2课程已经紧张的教学资源产生太多额外的需求。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
It's Never too Early to Learn About Code Quality: A Longitudinal Study of Code Quality in First-year Computer Science Students
Low code quality incurs a significant cost upon the software industry. Despite this, little serious effort has been devoted to the topic at the most basic levels of computing science education. Where studies have been conducted, the results are disappointing in terms of code quality. In this work, four iterations of a medium to large CS1 and CS2 course (n=200 students) were analyzed through the lens of code violations to better understand (1) what code violations occur most frequently, (2) how does their occurrence vary throughout the course, and (3) to what extent do teaching assistants have an effect upon code quality. Results showed a statistically significant improvement in code quality over 19 assignments in all four course iterations. In particular, when a single violation was the focus of a learning outcome, the effects were both a dramatic fall and sustained low occurrence. However, this improvement was mostly focused on the three most frequently occurring violations (> 70%), which masked an increase in lesser occurring violations throughout the course. Finally, the effects from different teaching assistants were found to be random at best, contradicting expectations that their influence would be easily detected. Given that explicit learning outcomes targeted at code quality had an effect and teaching assistant influence had no effect, a path forward to improving code quality might combine these forces without creating too many additional demands upon the already stretched teaching resources with CS1 and CS2 courses.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信