8 research outputs found
Pair programming in inducing knowledge sharing
The Pair programming as a part of the Agile software development has been gaining acceptance among practitioners and software development community.This successful leads a wide use of pair
programming in educational setting as pedagogy in programming course.Pair programming can foster knowledge sharing among students.Many studies have been done with pair programming in education however most of them do not highlight internalized knowledge particularly tacit knowledge from knowledge sharing processes between students who act as driver and navigator in pair programming practice.Thus, this paper will discuss knowledge internalization based on the knowledge sharing activities in pair programming practices by employing the process of Socialization, Externalization, Combination and Internalization (SECI).The sample of the study consisted of 60 students who were actively engaged in pair
programming practices.The factors investigated were types of internalized tacit knowledge in the form of learning, thinking and decision making skills among the students. Online questionnaires were adapted from SECI model into educational context.T Test technique was used to analyze the data.This study is expected to contribute a better understanding of important knowledge sharing activities to construct student’s skills during Internalization process through pair programming.This study’s result will be considered for future rigorous theoretical framework for constructing tacit knowledge among the students in pair programming environment
Understanding the impact of strategic team formation in early programming education
This evidence based research looks at the impact of a team-based instruction on learning to program in a first year engineering course designed under the Bauhaus studio model. Each team is formulated with a “more knowledgeable other” [1], or for this paper the “ringer” based on selfreported prior learning. The ringer is intended to support the team through early programming challenges. In addition to the professor and teaching assistants, having a peer mentor can yield higher satisfaction and confidence in learners [2]. Our analysis evaluates learning outcomes as student progress through the term, comparing performance based on the performance and prior knowledge reported by the ringer. The major research questions investigate the role of the ringer in the success of the team, as well looking to see if teams that include a low performing student have any common characteristics. Findings include data from 2013, 2014, and 2015 with trends apparent in each of the years across major topics. This study shows that the formulation of teams around a carefully selected more knowledgeable other can improve the learning of the entire team. In general, ringer score correlates to an increase in the rest of the team’s average. The ringer score only supports learning to a certain degree where if the gap in score is too larger compared to the rest of the team, lower performing members can suffer. In general the formation of teams using prior programming experience seems to do no harm and even possibly improve learning outcomes, and the data may also suggest additional improvements on the use of teams
Knowledge internalization in pair programming practices
Pair programming practice has been widely used as a pedagogical approach in educational setting specifically in the programming course.Most pair programming studies agree that this practice can foster knowledge sharing among students.However, the studies do not highlight knowledge internationalization during pair programming practice. Therefore, this paper will discuss knowledge internalization based on tacit knowledge that occurs
from knowledge sharing activities in pair programming practices.This is achieved by employing the process of Socialization, Externalization, Combination, and Internalization (SECI) in the form of learning, thinking and decision-making skills among the students.119 participants were actively engaged in the pair programming practice in this study.The participants were required
to answer questionnaires, which were adapted from the SECI
model to suit the educational context. Statistical t-test was used to analyse the data.The results showed that pair programming was able to promote knowledge internationalization in the thinking process.This study contributes to a better understanding of important knowledge sharing activities to construct student’s skills during the internalization process through pair programming.
Future works will be focused into a rigorous theoretical
framework for constructing tacit knowledge among the students in pair programming environment
Programação em duplas: estado da arte
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
Factors influencing software developers’ use of pair programming in an agile software development methodology environment.
Masters Degree, University of KwaZulu-Natal, Durban.IT has been growing rapidly through the years and the IT solutions which are required are no simpler.
Industries want IT solutions to be flexible enough to accommodate spikes in demand and to produce
outcomes as soon as possible. Therefore, the adoption of agile methodologies has been increasing.
extreme programming (XP) has been the most common agile methodology adopted since 2004.
Industries have struggled to make the transition from a traditional approach to agile; as there are many
opposing principles: traditional methodologies drive individual programming, whereas agile drives
team collaboration when developing software. However, the benefits realised from XP grew as
companies noticed that teams built strong relationships, software was delivered faster and errors in
code were minimal. Pair programming (an XP practice) is the least used XP programming practice.
This is in spite of studies conducted in North California in the years 2010 - 2017, which noted that
pair programming, when used, provides numerous benefits to both staff and company. Some of the
benefits included improving productivity, reducing time spent on delivery; increasing the sharing of
knowledge and strengthening teams’ morale. This challenges the gap between the adoption of pair
programming (which is low) and agile (which is popular). Therefore this study was undertaken to
understand the phenomena that influence the adoption of pair programming in agile software
development companies.
The results of this case study show that software developers have a positive attitude towards using
pair programming. Their senior staff and peers encourage the use of pair programming as the
company provides enough hardware and tools to accommodate the needs of pair programming.
However, it was indicated by both senior and junior staff that there is reluctance by juniors to voice
their opinions. The personality mix sometimes impacts the use of pair programming; for instance,
introverts may not want to communicate and an extrovert may be too overpowering in a pair
programming environment. However, pair programming is confirmed as a mentoring tool; to help
skills development and the sharing of knowledge. In addition, pair programming is noted as more
beneficial for complex tasks. Due to the constant engagement required during pair programming, the
developers noted it is sometimes draining and therefore suggest regular breaks and switching of roles
to maintain the synergy. Overall, pair programming is recommended for future and current use as it
produces higher quality code, improves productivity, assists in sharing of knowledge and boosts the
confidence and skills of those less experienced.Only available in English
Personality and Pair Programming : How do Pair Programmers Collaborate?
For å undersøke samarbeidet i parprogrammering kodet vi 44 lydopptak av parprogrammering. Vi delte lydfilene inn i segmenter og tildelte hvert segment til kategorier som vi valgte ut av en samling kategorier som vi hadde utviklet spesielt for dette formålet.
Etter å ha kodet lydfilene, utførte jeg en litteraturgjennomgang. Jeg formulerte deretter forslag til mulige forhold mellom parprogrammerernes personlighet og samarbeidsformen deres under parprogrammeringen. Jeg foretok deretter en statistisk analyse for å undersøke disse forholdene.
De fleste av mine forslag til forhold fant jeg ingen støtte for gjennom analysen. Mine viktigste forholdsforslag ble imidlertid støttet av analysen. Mitt aller viktigste forholdsforslag undersøkte hvorvidt personlighet hadde noen som helst innflytelse på samarbeidet involvert i parprogrammering. Analysen for dette forholdsforslaget viste at nesten alle personlighetsfaktorene påvirket forekomsten av minst én samarbeidskategori.
Et annet viktig forholdsforslag, og det som var i størst grad basert på tidligere funn fra litteraturen jeg gjennomgikk, viste seg også å være støttet av analysen. Par som består av to personer med store personlighetsforskjeller vil kommunisere mer enn parene der de to programmererne er mer like hverandre. Imidlertid så vi at personlighetsfaktorforskjeller påvirket forholdet forskjellig avhengig av hvilken personlighetsfaktor det gjaldt. En høy forskjell i hvert eneste av personlighetsmålene vi brukte, vil derfor ikke nødvendigvis være bra for samarbeidet.
Alt i alt er det klart at personligheten til de to parprogrammererne vil ha en signifikant påvirkning på samarbeidet i parprogrammeringen, men inntil videre er de forskjellige samarbeidstypenes påvirkning på parprogrammerernes programmeringsytelse ikke like grundig undersøkt, og det vil være et interessant område for videre forskning. Analyseresultatene for flere av forholdsforslagene var ikke-signifikante, men lovende. Disse kan muligens bli bevist eller avkreftet ved analyser senere med en større samplingsstørrelse
Recommended from our members
Proceedings of the 33rd Annual Workshop of the Psychology of Programming Interest Group
This is the Proceedings of the 33rd Annual Workshop of the Psychology of Programming Interest Group (PPIG). This was the first PPIG to be held physically since 2019, following the two online-only PPIGs in 2020 and 2021, both during the Covid pandemic. It was also the first PPIG conference to be designed specifically for hybrid attendance. Reflecting the theme, it was hosted by Music Computing Lab at the Open University in Milton Keynes