+1 Recommend
1 collections

      Learn about the latest thinking in computer science, the challenges overcome and the progress made, in these high-quality academic papers, click here

      • Record: found
      • Abstract: found
      • Conference Proceedings: found
      Is Open Access

      An Experiment Measuring the Effects of Maintenance Tasks on Program Knowledge

      11th International Conference on Evaluation and Assessment in Software Engineering (EASE) (EASE)
      Evaluation and Assessment in Software Engineering (EASE)
      2-3 April 2007
      Experiment, Software Maintenance, Program Comprehension


            Objective: To ascertain whether programmers gain more knowledge about an unfamiliar program by enhancing the code or documenting the code. The context of this work was investigating whether maintenance programmers faced with an unfamiliar system should start by actively working on the system or spend time passively exploring the system before attempting to make changes. Method:We designed a laboratory experiment where subjects initially either enhanced or documented a program and then we measured how they performed when carrying out a further task on the given code. Our hypothesis was that programmers would gain more knowledge performing one of the two tasks. The experiment was repeated three times with different groups of students, all at the same stage of their education. Results: There was no significant difference between the performance of the two groups who had performed different initial tasks. However, there was a strong correlation between performance in the measured task and the students’ programming ability, as measured by a previous academic assessment. As not all subjects completed the measured task within the given time, we needed to use Kaplan-Meier survival curves and the Cox Proportional Hazard Model to analyse our data. Detailed inspection of the code produced during the experiment revealed some interesting qualitative results. Conclusions: We were unable to show a significant difference between the value of enhancing or documenting code as a way of gaining knowledge about unfamiliar programs. In the context of software maintenance this means that there is no advantage in spending unproductive time documenting code to gain knowledge.


            Author and article information

            April 2007
            April 2007
            : 1-10
            [0001]University of Glasgow , Department of Computing Science

            17 Lilybank Gardens

            Glasgow, Lanarkshire, G12 8QQ, UK
            © Alistair Hutton et al. Published by BCS Learning and Development Ltd. 11th International Conference on Evaluation and Assessment in Software Engineering (EASE), Keele University, UK

            This work is licensed under a Creative Commons Attribution 4.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/

            11th International Conference on Evaluation and Assessment in Software Engineering (EASE)
            Keele University, UK
            2-3 April 2007
            Electronic Workshops in Computing (eWiC)
            Evaluation and Assessment in Software Engineering (EASE)

            1477-9358 BCS Learning & Development

            Self URI (article page): https://www.scienceopen.com/hosted-document?doi=10.14236/ewic/EASE2007.5
            Self URI (journal page): https://ewic.bcs.org/
            Electronic Workshops in Computing

            Applied computer science,Computer science,Security & Cryptology,Graphics & Multimedia design,General computer science,Human-computer-interaction
            Software Maintenance,Experiment,Program Comprehension


            Comment on this article