Updated: 21 min 23 sec ago
Jürgen Börstler, Thomas B. Hilburn
Team projects are a way to expose students to conflicting project objectives, and “[t]here should be a strong real-world element … to ensure that the experience is realistic” [ACM/IEEE-CS 2015b]. Team projects provide an opportunity for students to put their education into practice and prepare them for their professional careers. The aim of this special issue, and the previous one, is to collect and share evidence about the state of practice of team projects in computing education and to help educators in designing and running team projects.
Paul Gestwicki, Brian McNely
We define and describe the academic studio model for interdisciplinary, undergraduate, project-oriented education. This model brings faculty, students, and community partners together to investigate an open-ended academic question, and their collaboration yields an original product that represents their inquiry. The academic studio integrates agile software development practice, project-oriented pedagogy, and sociocultural cognition theories. Scrum provides the framework in which self-organizing, cross-functional teams define their methodology, and Scrum practices facilitate assessment of student learning outcomes. This model emerged from design-based research across six studio instances, each of which investigated the relationship of fun, games, and learning through the development of educational video games.
David L. Largent
To prepare graduates for today's work environment, they must be immersed in positive (and perhaps negative) small group experiences in their courses, which will in turn provide a basic understanding of how teams form and develop over time. In the fall of 2009, we started exploring how software development teams form and interact in a computer science college capstone course setting. Our initial findings were presented at ICER 2010 in Aarhus, Denmark. The focus of our research was on the experiences of computer science college course teams as compared and contrasted to the theory of Bruce Tuckman's stages of small group development model, which he characterized as forming, storming, norming, performing, and adjourning.
Christopher D. Hundhausen
In my inaugural editorial as the new editor-in-chief of the ACM Transactions on Computing Education, I take stock of the journal's progress in its first 6 years of existence, and I describe my plans to help the journal maintain its positive trajectory as a viable and vibrant computing education research journal.
Linda Marshall, Vreda Pieterse, Lisa Thompson, Dina M. Venter
Employers require software engineers to work in teams when developing software systems. It is therefore important for graduates to have experienced teamwork before they enter the job market. We describe an experiential learning exercise that we designed to teach the software engineering process in conjunction with teamwork skills. The underlying teaching strategy applied in the exercise maximises risks in order to provide maximal experiential learning opportunities. The students are expected to work in fairly large, yet short-lived, instructor-assigned teams to complete software engineering tasks. After undergoing the exercise our students form self-selected teams for their capstone projects. In this article, we determine and report on the influence the teaching exercise had on the formation of teams for the capstone project.
Rebecca Vivian, Katrina Falkner, Nickolas Falkner, Hamid Tarmazdi
Although teamwork has been identified as an essential skill for Computer Science (CS) graduates, these skills are identified as lacking by industry employers, which suggests a need for more proactive measures to teach and assess teamwork. In one CS course, students worked in teams to create a wiki solution to problem-based questions. Through a case-study approach, we test a developed teamwork framework, using manual content analysis and sentiment analysis, to determine if the framework can provide insight into students’ teamwork behavior and to determine if the wiki task encouraged students to collaborate, share knowledge, and self-adopt teamwork roles. Analysis revealed the identification of both active and cohesive teams, disengaged students, and particular roles and behaviors that were lacking.
Claudia Ott, Anthony Robins, Kerry Shephard
Learning the first programming language is challenging for many students. High failure rates and bimodally distributed grades lead to a pedagogical interest in supporting students in first-year programming courses (CS1). In higher education, the important role of feedback for guiding the learning process and improving the learning outcome is widely acknowledged. This article introduces contemporary models of effective feedback practice as found in the higher education literature and offers an interpretation of those in the CS1 context.
Robert McCartney, Jonas Boustedt, Anna Eckerdal, Kate Sanders, Lynda Thomas, Carol Zander
In this article, we address the question of why computing students choose to learn computing topics on their own. A better understanding of why some students choose to learn on their own may help us to motivate other students to develop this important skill. In addition, it may help in curriculum design; if we need to leave some topics out of our expanding curriculum, a good choice might be those topics that students readily learn on their own. Based on a thematic analysis of 17 semistructured interviews, we found that computing students’ motivations for self-directed learning fall into four general themes: projects, social and peer interactions, joy of learning, and fear.
Wanda M. Kunkle, Robert B. Allen
Learning to program, especially in the object-oriented paradigm, is a difficult undertaking for many students. As a result, computing educators have tried a variety of instructional methods to assist beginning programmers. These include developing approaches geared specifically toward novices and experimenting with different introductory programming languages. However, determining the effectiveness of these interventions poses a problem. The research presented here developed an instrument to assess student learning of fundamental and object-oriented programming concepts, then used that instrument to investigate the impact of different teaching approaches and languages on university students’ ability to learn those concepts. Extensive data analysis showed that the instrument performed well overall.