Tool Evaluation for Distributed Pair Programming

Total Page:16

File Type:pdf, Size:1020Kb

Tool Evaluation for Distributed Pair Programming Die approbierte Originalversion dieser Diplom-/Masterarbeit ist an der Hauptbibliothek der Technischen Universität Wien aufgestellt (http://www.ub.tuwien.ac.at). The approved original version of this diploma or master thesis is available at the main library of the Vienna University of Technology (http://www.ub.tuwien.ac.at/englweb/). DIPLOMARBEIT Tool Evaluation for Distributed Pair Programming Ausgeführt am Institut für Softwaretechnik und Interaktive Systeme Information and Software Engineering Group Quality Software Engineering der Technischen Universität Wien unter der Anleitung von Ao.Univ.Prof. Dipl.-Ing. Dr. Mag. Stefan Biffl und Dipl.-Ing. Dietmar Winkler durch Andreas Kaltenbach Wienerflurgasse 43 1230 Wien Wien, März 2008 Eidesstattliche Erklärung Ich erkläre an Eides statt, dass ich die vorliegende Arbeit selbstständig und ohne fremde Hilfe verfasst, andere als die angegebenen Quellen nicht benützt und die den benützten Quellen wörtlich oder inhaltlich entnommenen Stellen als solche kenntlich gemacht habe. Wien, am 13.03.2008 Andreas Kaltenbach Acknowledgements After long years I have spent studying at the Technical University of Vienna, now that the end of my studies is approaching it is time to say thank you to a number of people that supported me throughout all those years. First and foremost I would like to thank my wife Angelika and my parents for their continuous support of my studies throughout the years. In times when suffering a setback in my studies brought me down they were always there to set me up again and encouraged me to go on. Especially my wife often had to make compromises when I used my spare time for studying instead of spending it with her. That I am now able to finally complete my studies is to some degree their merit as well. Further on my gratitude goes to all the people who are or used to be my superiors at Siemens IT Solutions and Services Program and System Engineering. All of them gave me the leeway to proceed with my studies besides the daily project business at work. Without this support it would not have been possible for me to get this far. I would especially like to thank Stefan Biffl and Dietmar Winkler for supervision of my diploma thesis and for giving advice and feedback. Furthermore my thanks go to the following people for their help and input to the work on my diploma thesis: Matthias Kutzelnigg, Daniela Pehn, Michaela Schein, Christoph Höglinger, Christian Wallek and Matthias Heindl. Special thanks to Olivia Elbeshausen, Veronika Mayer and Michael Riss for proofreading my diploma thesis. Last but not least my thanks go to all the fellow students and friends of mine who accompanied me throughout the years of my studies and made these years the amazing though sometimes stressful time they were to me. - 1 - I Abstract On the one hand the possibilities that arise from the increasing globalisation and the increased availability of information and communication technologies along with the fact that resources in form of software engineers are much cheaper in large sections of Eastern Europe and Asia than they are in the Western World led to the situation, that many software engineering projects today are developed distributed by engineers spread over the world. Nevertheless these projects are still in need of heavy and close cooperation of the parties involved. On the other hand agile methods of software engineering are increasing in importance as nowadays state-of-the-art software engineering processes to address frequently changing requirements as well as fast and early delivery of software products. Extreme Programming is among the most prominent of these agile methods and comes with a large case of practices. Among those is Pair Programming which is a style of software development in which two software engineers team up and collaborate on the same artefact sitting side by side in front of a shared workplace. Such a team consists of the so called Driver who is typing at the computer or writing down a design. The other partner is called the Navigator. His duty is to continuously review the work of the Driver. The pair is in heavy need for continuous communication with each other and switches roles periodically. From the two points stated above it is clear that there is a need for the appliance of the Pair Programming practice even in development teams in which the Pair Programming team members are not collocated at the same development site. In this case there is the need to have tools that support the cooperation and communication between the pair so that they are able to perform Pair Programming in a similar way as if they were sitting next to each other. Simulating this collocated collaboration in a non-collocated environment puts a number of requirements up against tools that are used to support the Distributed Pair Programming practice. Thus such tools need to be evaluated for their grade of fulfilment of these requirements to enable software engineers and project managers to select the tool best suited in a specific project. There was already some previous research done in tools that support the Distributed Pair Programming practice as well as into requirements that are recommended to be fulfilled by such tools. Nevertheless there is still the lack of consolidated lists of such tools as well as requirements and of a way to provide means to compare these tools with respect to their usability for the support of the Distributed Pair Programming practice. This work intends to provide an extensive list of available tools with potential to support Distributed Pair Programming as well as a consolidated list of requirements desirable to be fulfilled by tools supporting the Distributed Pair Programming practice. The consolidate list of requirements is used to set up a generic evaluation framework for the comparable evaluation of such tools. The set up evaluation framework is used in a series of case studies to evaluate a selected number of these tools towards their usability in the appliance of the Distributed Pair Programming practice. The results of this study show that though there is still a significant lack of availability of tool support for some key requirements needed to simulate the collocated situation in Distributed Pair Programming environments there is a number of tools available that provide ample support to effectively apply the Distributed Pair Programming practice. - 2 - II Table of Content I ABSTRACT..................................................................................................2 II TABLE OF CONTENT .................................................................................3 III LIST OF FIGURES AND TABLES...............................................................6 1 INTRODUCTION ..........................................................................................8 1.1 Focus of this Work ...................................................................................10 1.2 Overview of the Document ......................................................................12 2 RELATED WORK ......................................................................................13 2.1 Pair Programming ....................................................................................13 2.1.1 An Introduction into the Practice of Pair Programming ....................14 2.1.2 Strengthening the Case of Pair Programming..................................17 2.1.3 Success Factors of Pair Programming.............................................20 2.2 Distributed Pair Programming.................................................................21 2.2.1 Distance Matters ..............................................................................22 2.2.2 Strengthening the Case of Distributed Pair Programming................23 2.3 Tool Support for Distributed Pair Programming....................................24 2.3.1 Requirements on Tools supporting Distributed Pair Programming ..24 2.3.2 Tools supporting the Distributed Pair Programming Practice...........28 3 RESEARCH FOCUS OF THIS WORK.......................................................29 3.1 Research Questions.................................................................................29 3.2 Research Approach..................................................................................31 3.2.1 Candidate Tools for the support of Distributed Pair Programming ...31 3.2.2 Desirable Requirements for Tools supporting Distributed Pair Programming ...................................................................................33 3.2.3 Evaluation Framework for Tools supporting Distributed Pair Programming ...................................................................................34 3.2.4 Evaluation of Tools supporting Distributed Pair Programming .........35 4 CANDIDATE TOOLS FOR DISTRIBUTED PAIR PROGRAMMING .........37 4.1 Screen-Sharing Applications...................................................................37 4.1.1 Virtual Network Computing (VNC) ...................................................38 4.1.2 Famatech Remote Administrator .....................................................41 4.1.3 Symantec pcAnywhere ....................................................................42 4.1.4 Microsoft NetMeeting .......................................................................43 4.1.5 Marratech.........................................................................................45 4.1.6 MILOS ASE......................................................................................46
Recommended publications
  • Link IDE : a Real Time Collaborative Development Environment
    San Jose State University SJSU ScholarWorks Master's Projects Master's Theses and Graduate Research Spring 2012 Link IDE : A Real Time Collaborative Development Environment Kevin Grant San Jose State University Follow this and additional works at: https://scholarworks.sjsu.edu/etd_projects Part of the Computer Sciences Commons Recommended Citation Grant, Kevin, "Link IDE : A Real Time Collaborative Development Environment" (2012). Master's Projects. 227. DOI: https://doi.org/10.31979/etd.rqpj-pj3k https://scholarworks.sjsu.edu/etd_projects/227 This Master's Project is brought to you for free and open access by the Master's Theses and Graduate Research at SJSU ScholarWorks. It has been accepted for inclusion in Master's Projects by an authorized administrator of SJSU ScholarWorks. For more information, please contact [email protected]. Link IDE : A Real Time Collaborative Development Environment A Project Report Presented to The Faculty of the Department of Computer Science San José State University In Partial Fulfillment of the Requirements for the Degree Master of Science in Computer Science by Kevin Grant May 2012 1 © 2012 Kevin Grant ALL RIGHTS RESERVED 2 SAN JOSE STATE UNIVERSITY The Undersigned Project Committee Approves the Project Titled Link : A Real Time Collaborative Development Environment by Kevin Grant APPROVED FOR THE DEPARTMENT OF COMPUTER SCIENCE SAN JOSÉ STATE UNIVERSITY May 2012 ------------------------------------------------------------------------------------------------------------ Dr. Soon Tee Teoh, Department
    [Show full text]
  • Pesquisa E Implantação De Editor Web De Texto Rico Colaborativo Em Tempo Real
    UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA CURSO DE CIÊNCIA DA COMPUTAÇÃO ANDRÉ ANTUNES DA CUNHA Pesquisa e Implantação de Editor Web de Texto Rico Colaborativo em Tempo Real Monografia apresentada como requisito parcial para a obtenção do grau de Bacharel em Ciência da Computação. Orientador: Prof. Dr. Leandro Krug Wives Porto Alegre, dezembro de 2015 UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL Reitor: Prof. Carlos Alexandre Netto Vice-Reitor: Prof. Rui Vicente Oppermann Pró-Reitor de Graduação: Prof. Sérgio Roberto Kieling Franco Diretor do Instituto de Informática: Prof. Luís da Cunha Lamb Coordenador do Curso de Ciência da Computação: Prof. Raul Fernando Weber Bibliotecária-Chefe do Instituto de Informática: Beatriz Regina Bastos Haro RESUMO Com o desenvolvimento de ferramentas eficientes de interação à distância, a presença física se mostra cada vez mais desnecessária para a realização de produções coletivas. Nesse sentido, este trabalho visa pesquisar e comparar editores web de texto rico colaborativos em tempo-real para adaptar e implantar uma solução em um ambiente web de colaboração, disponibilizando aos usuários a nova ferramenta e seus recursos. No estudo, além das tecnologias empregadas, são analisadas também as funcionalidades dos editores bem como suas capacidades de formatação de texto rico. Finalmente, é apresentada a experiência de integração, seus ajustes, customizações e um guia de uso. Palavras-chave: RTCE. CSCW. Ferramenta web. Editor de texto. Texto rico. Colaboração. Tempo-real. Research and Deployment of Web Real-Time Collaborative Rich Text Editor ABSTRACT With the development of efficient distance interaction tools, physical presence shows itself each time more unnecessary for performing collective productions.
    [Show full text]
  • Polisemias Visuales Aproximaciones a La Alfabetización Visual En La Sociedad Intercultural Colección Aquilafuente
    RAQUEL GÓMEZ DÍAZ MARÍA DEL CARMEN AGUSTÍN LACRUZ (Eds.) POLISEMIAS VISUALES APROXIMACIONES A LA ALFABETIZACIÓN VISUAL EN LA SOCIEDAD INTERCULTURAL COLECCIÓN AQUILAFUENTE 167 © Ediciones Universidad de Salamanca y los autores 1ª edición: diciembre, 2010 Depósito legal: S. 1.525­2010 Ediciones Universidad de Salamanca Apartado postal 325 E­37080 Salamanca (España) Realizado por: Trafotex Fotocomposición, S. L. Tel. 923 22 81 03 37005 Salamanca (España) Todos los derechos reservados. Ni la totalidad ni parte de este libro puede reproducirse ni transmitirse sin permiso escrito de Ediciones Universidad de Salamanca ♣ GÓMEZ DÍAZ, RAQUEL (ed.) Polisemias visuales. Aproximaciones a la alfabetización visual en la sociedad intercultural [Recurso electrónico] / Raquel Gómez Díaz y María del Carmen Agustín Lacruz (eds.). – Salamanca: Ediciones Universidad de Salamanca, 2010 1 disco CD­ROM : col. ; 19 cm. + 1 folleto – (Aquilafuente ; 167) I. Agustín Lacruz, María del Carmen (ed.). II. Título. 1. Alfabetización visual 2. Comunicación visual. 3. Educación intercultural. 316.772.2 (086) 376.02. 043.2: 7 (086) Presentación Polisemias visuales. Aproximaciones a la alfabetización visual en la sociedad inter­ cultural es una obra coral que recoge distintos trabajos en torno a la comunicación y la cultura visual, haciendo hincapié en la detección de las habilidades necesarias para poder comprender la información visual en distintos contextos y formatos de trans­ misión. Los textos se articulan en torno a tres ejes temáticos complementarios: Modelos y competencias de lectura icónica y comunicación visual; Aplicaciones informáticas para el trabajo científico y Proyectos y acciones de intervención educativa. El conjunto de las aportaciones, por tanto, supone un rico conjunto de miradas hacia una sociedad que desde el reconocimiento a la pluralidad y diversidad aspira a estar cada día más alfabetizada.
    [Show full text]
  • Youth Workers 2.0
    YOUTH WORKERS 2.0 UNA GUÍA DE EDUCACIÓN DIGITAL PARA TRABAJADORES JUVENILES LA GUÍA DIGITAL YOUTH WORKERS 2.0 PROPORCIONA A LOS TRABAJADORES JUVENILES RECURSOS DE CAPACITACIÓN, HERRAMIENTAS Y BUENAS PRÁCTICAS PARA PODER MEJOR ENTREGAR HABILIDADES BÁSICAS EN LA EDUCACACIÓN JUVENIL CONTENIDO INTRODUCCIÓN _______________________________________ 1 CAPÍTULO UNO Futuros desafíos y tendencias en educación digital 2 CAPÍTULO DOS Uso de las redes sociales en entornos de trabajo juvenil. Seguridad y huella digital _______________ 14 CAPÍTULO TRES Juegos y herramientas sociales ___________________ 29 CAPÍTULO CUATRO Recursos digitales para ser utilizados en capacitaciones de trabajadores juveniles _________________________ 46 CAPÍTULO CINCO Una colección de buenas prácticas ________________ 59 CONCLUSIONES ______________________________________ 85 INTRODUCCIÓN La Comisión Europea lanzó el Plan de Acción de Educación Digital en 2017 para mejorar las competencias clave y las habilidades digitales de los ciudadanos europeos. El plan de acción describe cómo la UE puede ayudar a las personas, las instituciones educativas y los sistemas educativos a adaptarse mejor a la vida y al trabajo en una era de rápidos cambios digitales. Esta iniciativa de la Comisión se debe al hecho de que Europa se enfrenta a una transformación digital radical de su sociedad y economía. Ya el 90% de todos los trabajos requieren al menos algún nivel de habilidades digitales. A pesar del alto nivel de desempleo juvenil, hay millones de vacantes en Europa, muchas en nuevos campos digitales. Capacitar y ampliar los conocimientos a los jóvenes para prepararlos para el mercado laboral es más necesario que nunca. Según el informe Brecha de habilidades digitales en Europa de 2017, la demanda de especialistas en tecnología de la información y las comunicaciones está creciendo rápidamente.
    [Show full text]
  • A Guide to Digital Education for Youth Workers
    YOUTH WORKERS 2.0 A GUIDE TO DIGITAL EDUCATION FOR YOUTH WORKERS YOUTH WORKERS 2.0 DIGITAL GUIDE PROVIDES TO YOUTH WORKERS THE TRAINING RESOURCES, TOOLS AND GOOD PRACTICES IN ORDER TO BE ABLE TO BETTER DELIVER BASIC SKILLS IN YOUTH EDUCATION CONTENT INTRODUCTION ________________________________ ______________ 1 CHAPTER ONE Future challenges and trends in digital education _____________ 2 CHAPTER TWO Using social media in youth work settings. Safety and digital footprint ________________________________ __ 12 CHAPTER THREE Gaming and social tools ________________________________ ____ 25 CHAPTER FOUR Digital resources to be used in youth worker trainings ________ 40 CHAPTER FIVE A collection of good practices _______________________________ 52 CONCLUSIONS ________________________________ _____________ 78 INTRODUCTION The European Commission launched the Digital Education Action Plan in 2017 in order to improve key competences and digital skills of European citizens. The action plan outlines how the EU can help people, educational institutions and education systems better adapt to life and work in an age of rapid digital change. This initiative of the Commission is due to the fact that Europe is facing a radical digital transformation of its society and economy. Already 90% of all jobs require at least some level of digital skills. Despite high level of youth unemployment, there are millions of job vacancies in Europe – many in new digital fields. Training and re-skilling young people to prepare them for the job market are more necessary than ever. According to the Digital Skills Gap in Europe report of 2017, the demand for information and communications technology specialists is growing fast. In the future, 9 out of 10 jobs will require digital skills.
    [Show full text]