A study on the program comprehension and debugging processes of novice programmers

Syed Ahmad Aljunid, Abdullah Mohd. Zin, Zarina Shukur

Research output: Contribution to journalArticle

Abstract

This research presents an empirical study on the program comprehension and debugging processes of novice programmers. We provide empirical evidence that the increase exposure to a large number of quality code modification and adaptation in formal teaching is a viable technique for novices to learn program debugging but not for program comprehension. The empirical study is based on case studies at one of the Malaysian universities among the first-degree Information Technology programs students taking Java Programming, an elective programming course. We design a quasi-experiment with non-randomized quota sampling control group with pre-test-post-test. This experiment looks into the program comprehension and debugging constructs at the micro level. Code segments in Java programming language between 5-25 lines of codes are given for the students to try to comprehend or debug manually with pen and paper within a specific timeframe. It will form part of the normal assessment tests for the course. The pre-test involve correct code while the post-test involve both correct and (logical and run-time) bugged code. A control group of 80 students and a treated group of 24 students form the non-randomized quota samples.

Original languageEnglish
Pages (from-to)1-9
Number of pages9
JournalJournal of Software Engineering
Volume6
Issue number1
DOIs
Publication statusPublished - 2012

Fingerprint

Students
Computer programming
Program debugging
Java programming language
Information technology
Teaching
Experiments
Sampling

Keywords

  • Empirical software engineering
  • Program debugging
  • Program understanding

ASJC Scopus subject areas

  • Software

Cite this

A study on the program comprehension and debugging processes of novice programmers. / Aljunid, Syed Ahmad; Mohd. Zin, Abdullah; Shukur, Zarina.

In: Journal of Software Engineering, Vol. 6, No. 1, 2012, p. 1-9.

Research output: Contribution to journalArticle

@article{75af8a903dcf47f1a9d4a643528f3a34,
title = "A study on the program comprehension and debugging processes of novice programmers",
abstract = "This research presents an empirical study on the program comprehension and debugging processes of novice programmers. We provide empirical evidence that the increase exposure to a large number of quality code modification and adaptation in formal teaching is a viable technique for novices to learn program debugging but not for program comprehension. The empirical study is based on case studies at one of the Malaysian universities among the first-degree Information Technology programs students taking Java Programming, an elective programming course. We design a quasi-experiment with non-randomized quota sampling control group with pre-test-post-test. This experiment looks into the program comprehension and debugging constructs at the micro level. Code segments in Java programming language between 5-25 lines of codes are given for the students to try to comprehend or debug manually with pen and paper within a specific timeframe. It will form part of the normal assessment tests for the course. The pre-test involve correct code while the post-test involve both correct and (logical and run-time) bugged code. A control group of 80 students and a treated group of 24 students form the non-randomized quota samples.",
keywords = "Empirical software engineering, Program debugging, Program understanding",
author = "Aljunid, {Syed Ahmad} and {Mohd. Zin}, Abdullah and Zarina Shukur",
year = "2012",
doi = "10.3923/jse.2012.1.9",
language = "English",
volume = "6",
pages = "1--9",
journal = "Journal of Software Engineering",
issn = "1819-4311",
publisher = "Science Alert",
number = "1",

}

TY - JOUR

T1 - A study on the program comprehension and debugging processes of novice programmers

AU - Aljunid, Syed Ahmad

AU - Mohd. Zin, Abdullah

AU - Shukur, Zarina

PY - 2012

Y1 - 2012

N2 - This research presents an empirical study on the program comprehension and debugging processes of novice programmers. We provide empirical evidence that the increase exposure to a large number of quality code modification and adaptation in formal teaching is a viable technique for novices to learn program debugging but not for program comprehension. The empirical study is based on case studies at one of the Malaysian universities among the first-degree Information Technology programs students taking Java Programming, an elective programming course. We design a quasi-experiment with non-randomized quota sampling control group with pre-test-post-test. This experiment looks into the program comprehension and debugging constructs at the micro level. Code segments in Java programming language between 5-25 lines of codes are given for the students to try to comprehend or debug manually with pen and paper within a specific timeframe. It will form part of the normal assessment tests for the course. The pre-test involve correct code while the post-test involve both correct and (logical and run-time) bugged code. A control group of 80 students and a treated group of 24 students form the non-randomized quota samples.

AB - This research presents an empirical study on the program comprehension and debugging processes of novice programmers. We provide empirical evidence that the increase exposure to a large number of quality code modification and adaptation in formal teaching is a viable technique for novices to learn program debugging but not for program comprehension. The empirical study is based on case studies at one of the Malaysian universities among the first-degree Information Technology programs students taking Java Programming, an elective programming course. We design a quasi-experiment with non-randomized quota sampling control group with pre-test-post-test. This experiment looks into the program comprehension and debugging constructs at the micro level. Code segments in Java programming language between 5-25 lines of codes are given for the students to try to comprehend or debug manually with pen and paper within a specific timeframe. It will form part of the normal assessment tests for the course. The pre-test involve correct code while the post-test involve both correct and (logical and run-time) bugged code. A control group of 80 students and a treated group of 24 students form the non-randomized quota samples.

KW - Empirical software engineering

KW - Program debugging

KW - Program understanding

UR - http://www.scopus.com/inward/record.url?scp=84864797837&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84864797837&partnerID=8YFLogxK

U2 - 10.3923/jse.2012.1.9

DO - 10.3923/jse.2012.1.9

M3 - Article

AN - SCOPUS:84864797837

VL - 6

SP - 1

EP - 9

JO - Journal of Software Engineering

JF - Journal of Software Engineering

SN - 1819-4311

IS - 1

ER -