A Metric for Estimating the Difficulty of Programming Problems by Ranking the Constructs in their Solutions

Elsa Kalemba, Abejide Ade-Ibijola

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

2 Citations (Scopus)

Abstract

Several studies have been conducted on the complexity of computer programs. Metrics of quantifying computer programs based on programming language, lines of code, or number of modules have been studied. One open problem is: how to measure the complexity of computer programming problems, based on the constructs in their solutions. In this paper, we present a tool called NOPCE (The NOvice Program Complexity Estimator) that measures the complexity of programming problems based on the constructs they contain. NOPCE takes any given novice program written in C# and computes an aggregated weight based on a look-up table of predefined weights for programming constructs. We have presented an evaluation that compares the human perception of problem complexity with that of NOPCE. Results show that, humans agreed with NOPCE on problem ranking, most of the time. This tool may find applications in computer education, where difficulty balancing of programming problems is paramount.

Original languageEnglish
Title of host publicationProceedings - 2019 International Multidisciplinary Information Technology and Engineering Conference, IMITEC 2019
PublisherInstitute of Electrical and Electronics Engineers Inc.
ISBN (Electronic)9781728100401
DOIs
Publication statusPublished - Nov 2019
Event2019 International Multidisciplinary Information Technology and Engineering Conference, IMITEC 2019 - Vanderbijlpark, South Africa
Duration: 21 Nov 201922 Nov 2019

Publication series

NameProceedings - 2019 International Multidisciplinary Information Technology and Engineering Conference, IMITEC 2019

Conference

Conference2019 International Multidisciplinary Information Technology and Engineering Conference, IMITEC 2019
Country/TerritorySouth Africa
CityVanderbijlpark
Period21/11/1922/11/19

Keywords

  • Complexity of Programming Problems
  • Introductory Programming
  • Program Construct
  • Software Metrics

ASJC Scopus subject areas

  • Artificial Intelligence
  • Computer Networks and Communications
  • Computer Science Applications
  • Information Systems
  • Signal Processing
  • Software

Fingerprint

Dive into the research topics of 'A Metric for Estimating the Difficulty of Programming Problems by Ranking the Constructs in their Solutions'. Together they form a unique fingerprint.

Cite this