20 research outputs found

    A conceptual model of pair programming knowledge-based sharing for improving programming skills

    Get PDF
    One of eXtream Programming practices is Pair Programming (PP) (the pair consists of a driver and a navigator), which is used for promoting knowledge sharing among students. This practice encourages students to think creatively of programming solutions, and simplify learning, especially for difficult course such as Java. By applying PP, students are enforced to improve their social skills as they communicate with each others. Despite the numerous benefits of PP (discussed by previous studies), statistics show lack of demonstrating the extent at which the knowledge sharing, communication and transfer between the driver and the navigator can improve the code quality. Therefore this study aims propose a conceptual model of a PP knowledge-based sharing for improving programming skills. In order to achieve the stated objective, PP laboratory assignments were conducted and compared to evaluate the impact of PP on code quality with and without adopting the conceptual model. The conceptual model was validated by analyzing the collected data from the participants of PP laboratory assignment using Partial Least Square form of Structural Equation Modeling (PLS-SEM). The findings of the study show that socialization, combination, and internalization are the determinant factors for achieving better code quality in PP environment. The findings of this study would be benefited to academic environment especially the agile programmers in the pair programming domain

    Multi-touch table technology for enhancing collaborative programming and learning

    Get PDF
    Our research goal is to provide a new use for multi-touch table technology by developing new resource software to be used as an environment for collaborative pair programming. Such a project will yield new opportunities and provide improved quality within the field of collaborative learning (Nosek 1998; Williams et al., 2000a, 2000b; Williams et al., 2001; Cockburn et al., 2000; Mcdowell et al. 2002; Gallis et al. 2003; Cao and Xu, 2005; Brereton et al., 2009; Sanjay and Goel and Kathuria, 2010; Rick et al., 2011). For instance, the proposed project (1) is time-effective and leads to a better product, (2) is more enjoyable for developers, (3) may increase work satisfaction, (4) promotes student learning, (5) leads to better student activity engagement, (6) contributes to enhancing the level of student understanding with regard to programming modules, which makes students more confident in their work and more positive about programming and, finally, and (7) supports the awareness of others’ actions and the ability to support concurrent input; it also encourages the development of problem-solving skills, efficiency, quality and teamwork. The project begins with a survey of the available tools for collaborative pair programming, such as Scratch Programming (Scratch, 2014), and then these tools will be evaluated to determine their suitability for use in multi-touch tables. The most suitable tool will then be selected for development to be run on a multi-touch table. Alternatively, new resource software will be created for the project. In the final stage, the usability of new software, in terms of collaborative pair programming, will be evaluated

    Peer tutoring of computer programming increases exploratory behavior in children

    Get PDF
    There is growing interest in teaching computer science and programming skills in schools. Here we investigated the efficacy of peer tutoring, which is known to be a useful educational resource in other domains but never before has been examined in such a core aspect of applied logical thinking in children. We compared (a) how children (N = 42, age range = 7 years 1 month to 8 years 4 months) learn computer programming from an adult versus learning from a peer and (b) the effect of teaching a peer versus simply revising what has been learned. Our results indicate that children taught by a peer showed comparable overall performance—a combination of accuracy and response times—to their classmates taught by an adult. However, there was a speed–accuracy trade-off, and peer-taught children showed more exploratory behavior, with shorter response times at the expense of lower accuracy. In contrast, no tutor effects (i.e., resulting from teaching a peer) were found. Thus, our results provide empirical evidence in support of peer tutoring as a way to help teach computer programming to children. This could contribute to the promotion of a widespread understanding of how computers operate and how to shape them, which is essential to our values of democracy, plurality, and freedom.Fil: de la Hera, Diego Pablo. Universidad Torcuato Di Tella; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; ArgentinaFil: Zanoni Saad, María Belén. Universidad Torcuato Di Tella; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; ArgentinaFil: Sigman, Mariano. Universidad Torcuato Di Tella; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; ArgentinaFil: Calero, Cecilia Ines. Universidad Torcuato Di Tella; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas; Argentin

    Educación Híbrida: una Experiencia de Vuelta al Aula

    Get PDF
    Desde febrero de 2020 la pandemia de COVID-19 se extendió por todo el planeta, impactando en todos los ámbitos de nuestra vida incluida la educación. Nos vimos forzados a renunciar a nuestras aulas físicas para dictar nuestras clases por videoconferencia. Este cambio tuvo distinto impacto dependiendo la forma en que cada docente venía dictando su materia. Luego de dos años la pandemia pasó y volvimos al aula pero de una forma distinta. El presente trabajo relata la experiencia de atravesar la pandemia y volver al aula en una materia de Ingeniería de Software dictada en la Universidad Nacional de Tres de Febrero. Junto con la experiencia se resumen una serie de aprendizajes obtenidos y un conjunto de reflexiones de cara al futuro

    Measuring the effect of amount of required student effort on exam performance

    Get PDF
    In this thesis, I examine the relationship between the amount of required effort from students and their performance on the corresponding exams in an introductory programming class. I employed an online learning system PrairieLearn which is able to require that students complete each question correctly multiple times to receive full scores in order to quantify the amount of work students have done. Two groups of students are assigned different minimum points required in order to get a full score in a quiz. Their effort is quantified by their number of attempts and the time spent on quizzes. The findings do not show a difference between two groups. The students from both groups do not show a significant difference in their exam scores. However, the results strongly suggests that students who get higher scores in the exam spend fewer tries but a similar amount of time on quizzes to get the correct answers. The study also assign questions to two groups which experience different grading treatment on the same set of questions. Group B, which has a tougher grading treatment, is compensated with extra points towards the total quiz score. The findings show that the students in group B submit about 40\% fewer incorrect answers. The study concludes that the effort from each student in online quizzes does not show a correlation with their exam performance, and they check answers more carefully in online quizzes when they perceive that there are more points at stake

    Pariohjelmointi olio-ohjelmoinnin opetusmenetelmänä

    Get PDF
    Tämän opinnäytetyön tavoitteena oli esitellä pariohjelmoinnin hyötyjä ja haasteita sekä tarkastella sitä opetusmenetelmänä. Pariohjelmoinnilla tarkoitetaan menetelmää, jossa kaksi ohjelmoijaa tekee tiivistä yhteistyötä saman päätteen ääressä toisen tuottaessa lähdekoodia ja toisen korjatessa virheitä ja tehdessä kehitysehdotuksia. Rooleja vaihdetaan säännöllisesti. Varsinaista toimeksiantajaa työllä ei ollut, sillä opinnäytetyön kirjoittaja halusi itse tutkia pariohjelmoinnin hyödyntämistä opetuksessa perehdyttyään menetelmään ammattiharjoittelun yhteydessä. Pariohjelmointia toimivuutta opetusmenetelmänä tutkittiin Tietojenkäsittelyn koulutusohjelman olio-ohjelmoinnin opintojaksolla. Pariohjelmointikokeilu toteutettiin syksyllä 2012. Opiskelijat jaettiin pareihin alkukartoituksen perusteella siten, että osapuolten ohjelmointitaidot vastasivat toisiaan. Pareja vaihdettiin opiskelijoiden halukkuuden mukaan opintojakson puolivälissä. Parit työskentelivät pääsääntöisesti siten, että rooleja vaihdettiin jokaisen tapaamiskerran aluksi. Opintojaksoon kuuluvat harjoitustehtävät ohjelmoitiin parin kanssa. Harjoitustyöt sekä tentit suoritettiin kuitenkin itsenäisesti. Pariohjelmointi ei ollut pakollista, mutta sitä suositeltiin kaikille opiskelijoille. Pariohjelmoinnin käyttämistä opetusmenetelmänä tarkasteltiin niin opiskelijoiden kuin opettajankin näkökulmasta. Opiskelijat vastasivat neljään sähköiseen kyselyyn, joista kolme toteutettiin opintojakson aikana ja yksi noin kolmen kuukauden kuluttua opintojakson päättymisestä. Kyselyillä kartoitettiin mm. suhtautumista pariohjelmointiin, sen toteutumista ja vaikutusta oppimiseen sekä pariohjelmoinnin hyödyntämistä opintojakson päättymisen jälkeen. Opettajan havaintoja ja näkemyksiä kartoitettiin haastattelun avulla. Syksyn 2012 toteutuskertaa verrattiin myös aiempien vuosien toteutuskertoihin oppimistulosten ja läpäisyprosentin suhteen. Tutkimuksen tietoperustana olivat aiemmin tehdyt tutkimukset pariohjelmoinnin hyödyistä ja haasteista sekä menetelmän käytöstä opetuksessa. Pariohjelmointikokeilun tuloksena havaittiin, että menetelmä soveltuu opiskelijoille, joilla on riittävät perusvalmiudet ohjelmoinnissa sekä halua ja kykyä yhteistyöhön. Opiskelijat, jotka hyödynsivät pariohjelmointia eniten, saivat korkeimmat arvosanat. Vastaavasti opiskelijat, joilla oli heikko lähtötaso ja vaikeuksia kommunikoida parin kanssa, menestyivät opintojaksolla vaatimattomammin. Suhtautuminen pariohjelmointiin muuttui opintojakson edetessä pääsääntöisesti positiivisemmaksi, kun opiskelijat havaitsivat hyötyvänsä parin kanssa työskentelystä. Pariohjelmoinnin hyödyntäminen opetuksessa voi antaa opiskelijalle lisävalmiuksia tuleville opintojaksoille sekä työelämään. Pariohjelmointia voi suositella opetusmenetelmäksi, mutta lisäkokeiluja tarvitaan mahdollisimman toimivan kokonaisuuden saavuttamiseksi. Parien muodostamisessa voisi kokeilla erilaisia kokoonpanoja. Lisäksi oppimistuloksia voisi verrata rinnakkain etenevien toteutuskertojen välillä. Toisessa ryhmässä opetus olisi perinteistä, kun taas toisessa hyödynnettäisiin pariohjelmointia.The purpose of this thesis was to present the costs and benefits of pair programming and to study pair programming as a teaching method. Pair programming is a programming technique in which two programmers use one computer to work together on the same task switching roles as a driver and a co-pilot. There was no actual assigner to this thesis. The author herself wanted to explore pair programming based on her previous experience. Pair programming as a teaching method was studied in the Degree programme in Business Information Systems in an object-oriented programming course. The pair programming experiment was carried out in the autumn of 2012. The students were divided into pairs on the basis of their programming skills, so that the parties' programming skills mirrored each other. The pairs were changed in the middle of the course. The pairs worked so that the roles were switched in the beginning of each lesson. The course included exercises programmed with a partner. The assignments and exams, however, were performed independently. Programming in pairs was not mandatory, but it was recommended for all students. The effectiveness of pair programming as a teaching method was examined from both students’ and teacher’s perspective. Students answered to four electronic surveys, of which three were carried out during the course, and one about three months after the end of the course. The questions asked in the surveys concerned attitude towards pair programming, implementation of pair programming, its impact on learning, as well as using pair programming after the end of the course. The teacher’s observations and views were mapped with an interview. The implementation of the course in the autumn 2012 was com-pared to previous years in terms of learning outcomes and throughput per cent. The theoretical background of this thesis was based on the earlier studies of pair programming, its cost and benefits, as well as pair programming in education. As a result of this study it was found that pair programming is suitable for students who have sufficient basic skills in programming and willingness and ability to cooperate. Students who used pair programming received the highest marks. On the other hand students with low initial level and difficulties in communicating with a partner, performed modestly. The attitude towards pair programming changed more positive as the course progressed, as the students found to benefit from pair programming. Using pair programming as a teaching method can provide students with additional capabilities for future studies and work. Pair Programming can be recommended as a teaching method, but further experiments are needed in order to achieve a functional entity. Different combinations could be used in forming pairs. In addition, the learning outcomes could be compared side by side between two course implementations held at the same time. The other group would have traditional teaching, whereas the other would use pair programming as a teaching method

    Programação em duplas: estado da arte

    Get PDF
    Resumo: Programação em Duplas (Pair Programming – PP) é uma prática colaborativa de desenvolvimento de software em que dois programadores trabalham ao mesmo tempo em um único computador e na mesma tarefa de programação. Foi relatado na literatura que o conhecimento sobre PP encontra-se disperso e desorganizado. Com o intuito de colocar um pouco de ordem a esse caos, o presente estudo realizou uma busca exaustiva de trabalhos sobre PP em algumas das bibliotecas digitais mais importantes do mundo em Ciência da Computação (Sociedade Brasileira de Computação, ACM, IEEE Explore, Springer, CiteSeer e ScienceDirect, entre outras) e no Google/Scholar. A partir da completa leitura dos trabalhos encontrados, procurou-se definir temas chave dentro da área descrevendo todos os estudos que se relacionam com cada tema. Os achados são interessantes e extensos – eles podem ser encontrados durante toda a leitura do presente artigo
    corecore