J. Börstler, H. Störrle, Daniel Toll, Jelle van Assema, Rodrigo Duran, Sara Hooshangi, J. Jeuring, H. Keuning, Carsten Kleiner, Bonnie K. MacKellar
{"title":"\"I know it when I see it\" Perceptions of Code Quality: ITiCSE '17 Working Group Report","authors":"J. Börstler, H. Störrle, Daniel Toll, Jelle van Assema, Rodrigo Duran, Sara Hooshangi, J. Jeuring, H. Keuning, Carsten Kleiner, Bonnie K. MacKellar","doi":"10.1145/3174781.3174785","DOIUrl":"https://doi.org/10.1145/3174781.3174785","url":null,"abstract":"Context. Code quality is a key issue in software development. The ability to develop high quality software is therefore a key learning goal of computing programs. However, there are no universally accepted measures to assess the quality of code and current standards are considered weak. Furthermore, there are many facets to code quality. Defining and explaining the concept of code quality is therefore a challenge faced by many educators. Objectives. In this working group, we investigated code quality as perceived by students, educators, and professional developers, in particular, the differences in their views of code quality and which quality aspects they consider as more or less important. Furthermore, we investigated their sources for information about code quality and its assessment. Methods. We interviewed 34 students, educators and professional developers regarding their perceptions of code quality. For the interviews they brought along code from their own experience to discuss and exemplify code quality. Results. There was no common definition of code quality among or within these groups. Quality was mostly described in terms of indicators that could measure an aspect of code quality. Among these indicators, readability was named most frequently by all groups. The groups showed significant differences in the sources they use for learning about code quality with education ranked lowest in all groups. Conclusions. Code quality should be discussed more thoroughly in educational programs.","PeriodicalId":254043,"journal":{"name":"Proceedings of the 2017 ITiCSE Conference on Working Group Reports","volume":"14 3","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-01-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114059212","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Andrew Luxton-Reilly, Brett A. Becker, Yingjun Cao, R. Mcdermott, C. Mirolo, A. Mühling, Andrew Petersen, Kate Sanders, Simon, Jacqueline L. Whalley
{"title":"Developing Assessments to Determine Mastery of Programming Fundamentals","authors":"Andrew Luxton-Reilly, Brett A. Becker, Yingjun Cao, R. Mcdermott, C. Mirolo, A. Mühling, Andrew Petersen, Kate Sanders, Simon, Jacqueline L. Whalley","doi":"10.1145/3174781.3174784","DOIUrl":"https://doi.org/10.1145/3174781.3174784","url":null,"abstract":"Current learning outcomes for introductory programming courses are relatively general, specifying tasks such as designing, implementing, testing and debugging programs that use some fundamental programming constructs. These outcomes impact what we teach, our expectations, and our assessments. Although prior work has demonstrated the utility of single concept assessments, most assessments used in formal examinations combine numerous heterogeneous concepts, resulting in complex and difficult tasks. As a consequence, teachers may not be able to diagnose the actual difficulties faced by students and students are not provided with accurate feedback about their achievements. Such limitations on the nature and quality of feedback to teachers and students alike may contribute to the perceived difficulty and high dropout rates commonly observed in introductory programming courses. In this paper we review the concepts that Computer Science education researchers have identified as important for novice programming. We survey expected learning outcomes for introductory programming courses, and analyse assessments designed for such courses to determine the individual components of syntax and semantics required to complete them. Having recognized the implicit and explicit expectations of novice programming courses, we look at the relationships between components, and progression between concepts. Finally, we demonstrate how some complex assessments can be decomposed into atomic elements that can be assessed independently.","PeriodicalId":254043,"journal":{"name":"Proceedings of the 2017 ITiCSE Conference on Working Group Reports","volume":"89 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-01-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124535636","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Monica Mcgill, Chris Johnson, J. Atlas, Durell Bouchard, C. Messom, Ian Pollock, M. A. Scott
{"title":"If Memory Serves: Towards Designing and Evaluating a Game for Teaching Pointers to Undergraduate Students","authors":"Monica Mcgill, Chris Johnson, J. Atlas, Durell Bouchard, C. Messom, Ian Pollock, M. A. Scott","doi":"10.1145/3174781.3174783","DOIUrl":"https://doi.org/10.1145/3174781.3174783","url":null,"abstract":"Games can serve as a valuable tool for enriching computer science education, since they can facilitate a number of conditions that can promote learning and instigate affective change. As part of the 22nd ACM Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE 2017), the Working Group on Game Development for Computer Science Education convened to extend their prior work, a review of the literature and a review of over 120 educational games that support computing instruction. The Working Group builds off this earlier work to design and develop a prototype of a game grounded in specific learning objectives. They provide the source code for the game to the computing education community for further review, adaptation, and exploration. To aid this endeavor, the Working Group also chose to explore the research methods needed to establish validity, highlighting a need for more rigorous approaches to evaluate the effectiveness of the use of games in computer science education. This report provides two distinct contributions to the body of knowledge in games for computer science education. We present an experience report in the form of a case study describing the design and development of If Memory Serves, a game to support teaching pointers to undergraduate students. We then propose guidelines to validate its effectiveness rooted in theoretical approaches for evaluating learning in games and media. We include an invitation to the computer science education community to explore the game's potential in classrooms and report on its ability to achieve the stated learning outcomes.","PeriodicalId":254043,"journal":{"name":"Proceedings of the 2017 ITiCSE Conference on Working Group Reports","volume":"62 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-01-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131382498","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Ali Erkan, J. Barr, T. Clear, C. Izu, C. L. D. Alamo, Hanan Mohammed, Mahadev Nadimpalli
{"title":"Developing a Holistic Understanding of Systems and Algorithms through Research Papers","authors":"Ali Erkan, J. Barr, T. Clear, C. Izu, C. L. D. Alamo, Hanan Mohammed, Mahadev Nadimpalli","doi":"10.1145/3174781.3174786","DOIUrl":"https://doi.org/10.1145/3174781.3174786","url":null,"abstract":"Even though a computer science degree is unavoidably broken into semesters and courses, we always hope that our students form a holistic picture of the discipline by the time they graduate. Yet as educators, we do not have too many opportunities to make this point front and center for an extended period of time. This report es a well-defined portion of this problem: revealing conceptual connections between algorithmic courses (such as Discrete Math, Data Structures, Algorithms) and systems oriented courses (such as Organization, Computer Networks, Operating Systems, and Hardware) through the use of research papers. In particular, we provide a pedagogical framework as well as a set of carefully selected papers to crosscut our disciplinary space in a way that is orthogonal to conventional course design. This framework includes a paper taxonomy, strategies for covering topics that students are yet to encounter in upper level courses, strategies for reading and writing technical papers, three modules (one each for operating systems, networks, and architecture) that can be integrated into standard systems courses, and a new (optional) course template as a container for all of the listed elements. Since we have already tried these ideas once at the institution of the two leading authors, our report is rich with scaffolding suggestions as well.","PeriodicalId":254043,"journal":{"name":"Proceedings of the 2017 ITiCSE Conference on Working Group Reports","volume":"375 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-01-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116121819","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Michael Morgan, J. Sinclair, M. Butler, Neena Thota, Janet Fraser, G. Cross, J. Jacková
{"title":"Understanding International Benchmarks on Student Engagement: Awareness and Research Alignment from a Computer Science Perspective","authors":"Michael Morgan, J. Sinclair, M. Butler, Neena Thota, Janet Fraser, G. Cross, J. Jacková","doi":"10.1145/3174781.3174782","DOIUrl":"https://doi.org/10.1145/3174781.3174782","url":null,"abstract":"There is an increasing trend to use national survey instruments to measure student engagement. Unfortunately, Computer Science (CS) rates poorly on a number of measures in these surveys, even when compared to related STEM disciplines. Initial research suggests reasons for this poor performance may include a lack of awareness by CS academics of these instruments and the student engagement measures on which they are based, and a misalignment between these measures and the research focus (and teaching practice) of CS educators. This working group carried out an investigation of major engagement instruments to examine the measures they embody and track the achievement of CS with respect to the major international benchmarks. A comprehensive research mapping exercise was then conducted to examine the focus of current CS education research and its alignment to student engagement measures on which the instruments are based. The process enabled identification of examples of best practice in student engagement research in CS education. In order to better understand CS academics' perspectives on engagement a series of interviews were also conducted with CS staff. Our findings indicate that CS engagement results are, if anything, declining further. Analysis of CS education research literature shows that many authors refer to ``engagement'' (and their aim to increase it) but few attach a clear meaning to the term or offer evidence to support a link to improved engagement. Further, many initiatives reported would be unlikely to tick the boxes of the narrow, behaviourally-focussed measures covered by the major instruments. Staff interviews revealed a wide variety of beliefs about what student engagement means and what should be done to promote it in CS, including the view that many activities measured in the instruments are counter-productive for CS. This work aims to promote a greater awareness of the international benchmarks and the aspects of student engagement they measure. The results reported here can be used by CS educators to inform decisions on strategies to improve engagement and how these might relate to existing survey measures.","PeriodicalId":254043,"journal":{"name":"Proceedings of the 2017 ITiCSE Conference on Working Group Reports","volume":"45 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-01-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131659838","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Barry Burd, L. Barker, M. Divitini, Félix Armando Fermín Pérez, I. Russell, Bill Siever, Liviana Tudor
{"title":"Courses, Content, and Tools for Internet of Things in Computer Science Education","authors":"Barry Burd, L. Barker, M. Divitini, Félix Armando Fermín Pérez, I. Russell, Bill Siever, Liviana Tudor","doi":"10.1145/3174781.3174788","DOIUrl":"https://doi.org/10.1145/3174781.3174788","url":null,"abstract":"Smart devices are everywhere, yet the Internet of Things revolution is still in its infancy. In the Internet of Things (IoT) everyday objects share data over networks, with or without human intervention. Teaching IoT entails selecting among many technical and social topics, such as hardware, networking, data storage, data analysis, data presentation, human-computer interaction, platforms, embedded systems programming, web technologies, ethics, privacy, and security. In addition to the many variations on each of these topics, other challenges for computer science educators include connecting and integrating hardware and software, finding adequate physical space and infrastructure, preparing instructors and teaching assistants for the content, and implementing realistic security measures. This report considers four major approaches computer science educators are using to integrate IoT concepts and courses into their curricula, summarizes the choices and challenges related to teaching IoT, and describes some tools that allow new IoT teachers to get started.","PeriodicalId":254043,"journal":{"name":"Proceedings of the 2017 ITiCSE Conference on Working Group Reports","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-01-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129932161","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Claudia Szabo, Nickolas J. G. Falkner, Antti Knutas, Mohsen Dorodchi
{"title":"Understanding the Effects of Lecturer Intervention on Computer Science Student Behaviour","authors":"Claudia Szabo, Nickolas J. G. Falkner, Antti Knutas, Mohsen Dorodchi","doi":"10.1145/3174781.3174787","DOIUrl":"https://doi.org/10.1145/3174781.3174787","url":null,"abstract":"Providing effective support and feedback to students is critical to ensure engagement and retention within Computer Science courses. Individual student learning experiences and challenges vary from student to student, and effective intervention is further hampered in a large scale context. In addition, there are a plethora of possible interventions for any given learning challenge, and it is difficult for an educator to establish which intervention is the most effective or quickest to implement. To this, we report on the outcomes of a systematic literature review focused on interventions in Computer Science classrooms. To provide an understanding of the types of interventions possible in a Computer Science course, we propose a taxonomy of intervention types with low mutual information and classify the 129 selected papers based on it. We identify the most effective interventions as presented in their respective studies and discuss gaps in the study of several intervention types. We then present an overview of two of the most popular types of interventions in the published literature: those focused on introducing technical cooperations within courses, and those focused on changing the way the course content is presented to students. To understand how interventions have evolved over time, we present the evolution of sub-classes of interventions over the years.","PeriodicalId":254043,"journal":{"name":"Proceedings of the 2017 ITiCSE Conference on Working Group Reports","volume":"122 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-01-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132490216","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Q. Cutts, E. Patitsas, Elizabeth Cole, Peter Donaldson, B. Alshaigy, Mirela Gutica, Arto Hellas, Edurne Larraza-Mendiluze, R. McCartney, Charles Riedesel
{"title":"Early Developmental Activities and Computing Proficiency","authors":"Q. Cutts, E. Patitsas, Elizabeth Cole, Peter Donaldson, B. Alshaigy, Mirela Gutica, Arto Hellas, Edurne Larraza-Mendiluze, R. McCartney, Charles Riedesel","doi":"10.1145/3174781.3174789","DOIUrl":"https://doi.org/10.1145/3174781.3174789","url":null,"abstract":"As countries adopt computing education for all pupils from primary school upwards, there are challenging indicators: significant proportions of students who choose to study computing at universities fail the introductory courses, and the evidence for links between formal education outcomes and success in CS is limited. Yet, as we know, some students succeed without prior computing experience. Why is this? Some argue for an innate ability, some for motivation, some for the discrepancies between the expectations of instructors and students, and some -- simply -- for how programming is being taught. All agree that becoming proficient in computing is not easy. Our research takes a novel view on the problem and argues that some of that success is influenced by early childhood experiences outside formal education. In this study, we analyzed over 1300 responses to a multi-institutional and multi-national survey that we developed. The survey captures enjoyment of early developmental activities such as childhood toys, games and pastimes between the ages 0 --- 8 as well as later life experiences with computing. We identify unifying features of the computing experiences in later life, and attempt to link these computing experiences to the childhood activities. The analysis indicates that computing proficiency should be seen from multiple viewpoints, including both skill-level and confidence. Our analysis is the first to show, we believe, that particular early childhood experiences are linked to parts of computing proficiency, namely those related to confidence with problem solving using computing technology. These are essential building blocks for more complex use. We recognize issues in the experimental design that may prevent our data showing a link between early activities and more complex computing skills, and suggest adjustments for future studies. Ultimately, we expect that this line of research will feed in to early years and primary education, and thereby improve computing education for all.","PeriodicalId":254043,"journal":{"name":"Proceedings of the 2017 ITiCSE Conference on Working Group Reports","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2018-01-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132021910","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}