84 research outputs found

    Facework in a pair-programming session

    Get PDF
    Improved communication is part of the agile solution to the problems we have in developing software. It has been shown that some development practices restricted feedback within teams because empirical studies suggest that a significant portion of the software maintainer's time is required to understand the functionality of the software to be maintained. Muller and Padberg demonstrated that when developers work together as tightly knit pairs this changes as their productivity and feelgood increase. In this paper we report on observations of developers programming as a pair. We see that the management of face is an important factor in attempts to reciver the meaning of code

    A cognitive perspective on pair programming

    Get PDF

    Towards a Serious Game to Help Students Learn Computer Programming

    Get PDF
    International audienceVideo games are part of our culture like TV, movies, and books. We believe that this kind of software can be used to increase students' interest in computer science. Video games with other goals than entertainment, serious games, are present, today, in several fields such as education, government, health, defence, industry, civil security, and science. This paper presents a study around a serious game dedicated to strengthening programming skills. Real-Time Strategy, which is a popular game genre, seems to be the most suitable kind of game to support such a serious game. From programming teaching features to video game characteristics, we define a teaching organisation to experiment if a serious game can be adapted to learn programming

    Understanding the impact of strategic team formation in early programming education

    Get PDF
    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

    Vers un jeu sérieux pour enseigner la programmation

    Get PDF
    International audienceLes jeux vidéo font partie intégrante de la culture au même titre que la télévision, les films et les livres. Nous pensons que ces applications de réalité virtuelle, grandement utilisées, peuvent servir à la formation des étudiants. Ce type d’outil est appelé : jeux sérieux. Les jeux sérieux sont présents, aujourd’hui, dans de nombreux secteurs d’activité comme l’éducation, la santé, la défense, l’industrie, la sécurité civile et les sciences. Ce document présente une étude pour déterminer le type de jeu le plus adapté à l’enseignement de la programmation. Les jeux de stratégie temps réel semblent êtreparticulièrement intéressants dans ce cadre

    THE TRUE COST OF PAIR PROGRAMMING: DEVELOPMENT OF A COMPREHENSIVE MODEL AND TEST

    Get PDF
    To advance the nomological net and theory, this dissertation proposed a comprehensive pair programming research model where the relationships among system complexity, programming methods, pair composition, effort, duration, defect rate, knowledge transfer, and various cost constructs were investigated. A multi-method, multi-study empirical approach was adopted. The survey method was employed for Study 1, and the bootstrap simulation method for Study 2. The reponses from 191 industry software developers and the simulation results suggest the previous conclusions regarding pair programming are limited in nature and the pair programming approach may not be as desirable in all situations as was previously assumed. The pair programming approach clearly adds value in situations where it is appropriate but certain conditions must be met for this goal to be achieved. Pair composition must be taken into account, and it is important to examine the interactions of multiple cost factors such as defect, effort, duration, and knowledge transfer and consider their combined effect on the ultimate goal of the project

    Revisión sistemática de la calidad del software en prácticas ágiles

    Get PDF
    El desarrollo de software ágil representa un alejamiento importante de los enfoques tradicionales basados en una detallada planificación. Una pregunta fundamental para la mayoría de las organizaciones es saber cuáles prácticas ágiles ayudan, en menor o mayor grado, a mejorar la calidad del producto software. En este trabajo se muestra el resultado de una revisión sistemática de la literatura que intenta presentar los resultados de estudios empíricos relativos a la evaluación de la calidad en prácticas ágiles publicadas hasta el año 2014. Los estudios encontrados se analizaron siguiendo los requerimientos de calidad definidos en estándares como el ISO/IEC 25010, se catalogaron en cinco grupos: programación en pares, desarrollos guiados por pruebas, extreme programming, scrum y otras prácticas ágiles; finalmente los hallazgos se compararon e interpretaron. Los resultados de la mayoría de los estudios sugieren que las prácticas ágiles pueden ayudar a mejorar la calidad del producto si son aplicadas correctamente. Los hallazgos significativos de este estudio pueden ser usados como directrices para los interesados en sus propios escenarios.Tesi

    Modeling Ecological Risk, Health Promotion, and Prevention Program Effects for Rural Adolescents

    Get PDF
    Objective: Universal prevention programs such as Positive Action (PA) mitigate risk factors and enhance promotive factors, often leading to improved adolescent functioning and school climate. The current study used 5 waves of data to assess the impact of PA on adolescent mental health and perceptions of school climate 1 year after completion of the program in a sample of low-income, rural youth. Method: Following multiple imputation and propensity score analysis, we ran 4 (2-level) hierarchal linear models to examine program effects. Results: PA program participants reported significant increases in self-esteem and significant decreases in school hassles relative to youths who did not participate in PA. Participation in PA did not have a significant impact on internalizing symptoms or aggression. Risk factors across the adolescents’ ecology had a strong negative impact on the outcomes, and some promotive factors modestly bolstered adolescent functioning. Conclusions: Findings highlight the influence that risk factors—especially negative interpersonal conflicts—have on adolescent outcomes and indicate that, although PA can help improve adolescents’ perceptions of themselves and their school climate, the program might need to be tailored for use in low-income, rural areas

    Message passing: How software engineers use talk.

    Get PDF
    In this thesis I present software engineering as a social process in which programmers work together to create technical solutions. I propose that the social structures which developers create and within which they work provide the foundations from which they are able to collaborate to build software. In doing so I characterise software engineering as being as much a social enterprise as it is a technical one. Since its origins in the late 1960s, the discipline of software engineering has been one that is concerned primarily with tools, techniques and processes. Research and writing within the area, by both academics and practitioners, have been interested in developing better ways to deliver better software and, hence, better customer satisfaction. Relatively little effort has gone into understanding what it is that software developers, in particular programmers, do as they work collaboratively.Starting from an ethnomethodological position, I present an examination of those activities of programmers which enable both sense-making and coordination. The research examines the work of developers in teams that self-identify as adherents to the Agile Manifesto. These teams are interesting because of the Manifesto's commitment to a social view of software development. Three teams of professional developers are studied in their normal working environments as they work on commercial projects for their clients. The first is a failing team which I follow as they begin to use Scrum whilst the second team has been using Scrum for a number of years. The final team uses a mixture of techniques from XP, TDD and Kanban to create their own way of working. By revealing the ethnomethods of developers across the three organisations I show that the design and implementation of code is enabled through social interaction
    • …
    corecore