Megan Fowler, Eileen T. Kraemer, Yu-Shan Sun, M. Sitaraman, J. Hallstrom, J. Hollingsworth
{"title":"Tool-Aided Assessment of Difficulties in Learning Formal Design-by-Contract Assertions","authors":"Megan Fowler, Eileen T. Kraemer, Yu-Shan Sun, M. Sitaraman, J. Hallstrom, J. Hollingsworth","doi":"10.1145/3396802.3396807","DOIUrl":null,"url":null,"abstract":"Object-based development using design-by-contract (DbC) is broadly taught and practiced. Students must be able to read and write symbolic DbC assertions that are sufficiently precise and be able to use these assertions to trace program code. This paper summarizes the results of using an automated tool to pinpoint fine-grain difficulties students face in learning to symbolically trace code involving objects. The pilots were conducted in an undergraduate software engineering course. Quantitative results show that data collected by the tool can help to identify and classify learning obstacles. Qualitative findings help validate student misunderstandings underlying these difficulties. Analysis of exam questions helps understand the persistence of student learning to read and write simple assertions about code behavior. Together, these results provide directions for intervention.","PeriodicalId":277576,"journal":{"name":"Proceedings of the 4th European Conference on Software Engineering Education","volume":"19 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-06-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 4th European Conference on Software Engineering Education","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3396802.3396807","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3
Abstract
Object-based development using design-by-contract (DbC) is broadly taught and practiced. Students must be able to read and write symbolic DbC assertions that are sufficiently precise and be able to use these assertions to trace program code. This paper summarizes the results of using an automated tool to pinpoint fine-grain difficulties students face in learning to symbolically trace code involving objects. The pilots were conducted in an undergraduate software engineering course. Quantitative results show that data collected by the tool can help to identify and classify learning obstacles. Qualitative findings help validate student misunderstandings underlying these difficulties. Analysis of exam questions helps understand the persistence of student learning to read and write simple assertions about code behavior. Together, these results provide directions for intervention.