pair programming, as part of the Agile Development process, has noted benefits in professional software development scenarios. These successes have led to a rise in use of pair programming in educational settings, par...
详细信息
pair programming, as part of the Agile Development process, has noted benefits in professional software development scenarios. These successes have led to a rise in use of pair programming in educational settings, particularly in Computer Science 1 (CS1). Specifically, McDowell et al. [2006] has shown that students using pair programming in CS1 do better in a CS2 class (with solo programming) than students who don't pair in CS1. This paper seeks to address a similar question, but from a qualitative, student-focused approach. How do students define, experience, and value the pair programming experience? How do they experience and value it compared to solo programming? Does pairing in CS1 impact their confidence in their abilities?We report on semi-structured interviews with 11 subjects from two institutions where pair programming was used in CS1, and solo programming was used in the CS2. Many of the responses met our expectations; students get stuck less and explore more ideas while pairing, and believe that pair programming helped them in CS1. Other responses were more surprising. Students reported that when solo programming they were more confident and understood their programs better. Many students also said that they started work on their assignments earlier when soloing. Students also continue to use other students as resources even when working "solo."
The purpose of this study is to investigate the influence of learning style preference on learning C++ language, especially i n terms of the quality of codes written and the number of errors made in programming. A tot...
详细信息
The purpose of this study is to investigate the influence of learning style preference on learning C++ language, especially i n terms of the quality of codes written and the number of errors made in programming. A total of 120 computing students were involved in this seven-week study. They were randomly assigned to either a group that received the metaphor with pair programming (MPP), to another group that received pair programming (PP) only, or to a third group that received only the metaphor instruction (MI). Participants in both the MPP and PP groups worked in pairs based on the visual-verbal learning style dimension, and those in the MI group worked individually when completing programming tasks. Two computer programming coursework were used to measure the student's coding performance. The results indicated that visual students in the MPP group performed significantly better in the quality of codes and made fewer mistakes during coding than those in the PP and MI groups. Also, the MPP method did help the verbal students to excel in C++ coding as compared to the PP and MI groups. The direct correlation was observed between their quality of codes and the number of errors. Metaphors helped the visual students in developing deeper conceptual understanding by linking the known to the newly acquired concepts. In pair programming approach, the verbal students developed better understanding through peer discussions. The understanding of individual learning style is needed in order to enhance coding performance as robustness of a programme is correlated with the accuracy of statements in the programming.
The research reported in this article formed part of an internationally funded project about the empowerment of Information Technology (IT) teachers in economically deprived rural schools in the North-West and KwaZulu...
详细信息
The research reported in this article formed part of an internationally funded project about the empowerment of Information Technology (IT) teachers in economically deprived rural schools in the North-West and KwaZulu-Natal provinces in South Africa. The current paper focused on the use of self-directed metacognitive (SDM) questioning in a pair programming context. The study sample consisted of five IT teachers and 99 Grade 10 IT learners at five schools. The teachers were trained to implement pair programming and to guide learners in the application of metacognitive regulation while doing pair programming. The learners used SDM questions during their subsequent pair programming tasks. Data-gathering was done through interviews with the teachers regarding their views on the use of the SDM questions, and the learners’ journals with their views on how they experienced the SDM questions to direct their thinking during execution of pair programming tasks. The results indicated that the teachers viewed the implementation of the SDM question difficult and time-consuming, and that they experienced the learners to be either reluctant or unwilling to engage in SDM questioning. However, the results of the learners’ journals indicated that the learners experienced the SDM questions to be helpful in directing their thinking during pair programming tasks.
The coronavirus disease of 2019 (COVID-19) pandemic has required many educators to redesign how they deliver their courses. In this study, we develop innovative procedures and pedagogy to teach pair programming via Zo...
详细信息
The coronavirus disease of 2019 (COVID-19) pandemic has required many educators to redesign how they deliver their courses. In this study, we develop innovative procedures and pedagogy to teach pair programming via Zoom breakout rooms in a cloud environment. We report six fundamental innovative teaching mechanisms and procedures: 1) strategically planning a course, 2) effectively managing teaching resources, 3) enhancing faculty responsiveness, 4) selecting reliable technology, 5) mandating online educator's training, and 6) accommodating students with learning disabilities. From teaching pair programming via Zoom breakout rooms, we have gained valuable experience in promoting collaborative, engaging, active, and problem-based learning activities in a cloud environment. Our results enrich our knowledge of delivering online education and contribute to pair programming literature in general.
There is now a substantial body of evidence in support of the use of pair programming in the classroom[3, 4, 10, 11, 13, 14]. Some of the data is anecdotal and some is the result of formal experiments. We are not awar...
详细信息
ISBN:
(纸本)9781581136722
There is now a substantial body of evidence in support of the use of pair programming in the classroom[3, 4, 10, 11, 13, 14]. Some of the data is anecdotal and some is the result of formal experiments. We are not aware of any published data that raises concerns about allowing students to complete programming projects using pair *** this paper we present data from three studies performed at UCSC. All three studies support the position that pair programming results in more student learning.
Computational thinking as a key in K-12 education has gotten more and more attention. Researchers and teachers are focusing more on tools and teaching methods that could edify computational thinking. Nowadays, develop...
详细信息
ISBN:
(纸本)9781450398015
Computational thinking as a key in K-12 education has gotten more and more attention. Researchers and teachers are focusing more on tools and teaching methods that could edify computational thinking. Nowadays, developing students’ computational thinking through graphical programming has become a norm. In addition, project-based learning has been proven effective in cultivating students’ computational thinking. The purpose of this study is to find out the effectiveness of the paired programming teaching method, which is based on project-based learning in junior high school students’ computational thinking, and to provide new opportunities and conditions for the development of computational thinking in junior high school students. This research could expand the view of starting project-based graphical programming courses, and provide a reference for the designing, developing, and teaching of junior high school computational thinking courses.
Collaborative learning frameworks such as pair programming have been shown to be highly effective for computer science learning. Skeptics of this approach often refer to the risk of one student relying on a stronger p...
详细信息
ISBN:
(纸本)9781450351034
Collaborative learning frameworks such as pair programming have been shown to be highly effective for computer science learning. Skeptics of this approach often refer to the risk of one student relying on a stronger partner to solve the problem. Lending weight to this skepticism, many theories emphasize the importance of learner autonomy. Therefore, it is reasonable to hypothesize that a hybrid pair programming paradigm-one in which partners work together side-by-side at two separate computers and produce their own versions of the code-may be even more effective than traditional pair programming. To investigate this hypothesis, we conducted a study in which 200 introductory programming students were paired and then placed in either a pair-programming condition (two students at one computer) or a hybrid condition (two students at two computers). The results show that traditional pair programming fostered comparable learning gains as measured on an individual post-test, and significantly higher student satisfaction, than the hybrid approach. These findings highlight the importance of not just collaborating, but working together on shared code, for novice computer science learners.
The role of pair programming in software development is controversial. This is due partly to the relatively unclear benefit of pair programming over solo programming. There have been arguments either way and there hav...
详细信息
The role of pair programming in software development is controversial. This is due partly to the relatively unclear benefit of pair programming over solo programming. There have been arguments either way and there have been studies to show that one is more cost-effective than the others. Rather than investigating into pair vs. solo programming here, we present a new process model combining both together. This paper argues and shows, with two case studies, that the fusing of pair and solo programming processes may actually be better than adopting either alone. In the proposed model called Software Process Fusion (SPF), a donor and a recipient process can be defined and if some transfer conditions are met, one process can be converted into another to achieve tasks with minimal costs. The transfer conditions we de. ne is related to a Software Fusion Ratio (SFR). SFR can be used to evaluate the effectiveness of an SPF model. In our case studies, we observed that, with SPF, programmers would design solution patterns of their own in pairs and then use these patterns to build sub-modules in solos. We conclude that SPF can be a more effective approach to increase productivity of less experienced programmers.
The adoption of Agile software development approaches has been widespread. One well-known Agile approach is extreme programming, which encompasses twelve practices of which pair programming is one of them. Although va...
详细信息
The adoption of Agile software development approaches has been widespread. One well-known Agile approach is extreme programming, which encompasses twelve practices of which pair programming is one of them. Although various aspects of pair programming have been studied, we have not found, under a traditional setting of pair programming, studies that examine the impact of using a tool support, such as an integrated development environment (IDE) or a simple text editor. In an attempt to obtain a better understanding of the impact of using an IDE in this field, we present the results of a controlled experiment that expose the influence on quality, measured as the number of defects injected per hour, and cost, measured as the time necessary to complete a programming assignment, of pair and solo programming with and without the use of an IDE. For quality, our findings suggest that the use of an IDE results in significantly higher defect injection rates (for both pairs and solos) when the programming assignment is not very complicated. Nevertheless, defect injection rates seem to decrease when pairs work on more complicated programming assignments irrespective of the tool support that they use. For cost, the programming assignment significantly affects the time needed to complete the assignment. In relation to the programming type, pairs and solos performed in a similar way with regards to quality and cost.
This paper describes the use of the pair programming software development methodology in the earliest weeks of a first programming course. Based on a broad, subjective assessment of "programming confidence",...
详细信息
ISBN:
(纸本)9781921770210
This paper describes the use of the pair programming software development methodology in the earliest weeks of a first programming course. Based on a broad, subjective assessment of "programming confidence", instructors placed students in level-matched pairs for a portion of their programming exercises. Students who began at the lowest levels of confidence showed significantly better exercise completion rates when paired than when working individually. Student response to the pair programming technique was uniformly positive, and teaching staff report pedagogical, mechanical and social benefits from the practice. These data indicate that successful programmingpairs can be constructed based on tutors' subjective judgements of student performance very early in CS1, before exam scores or code quality assessments are available. Thus pair programming can be an effective classroom intervention even with extreme novices.
暂无评论