• DocumentCode
    2514365
  • Title

    Design of an Empirical Study for Comparing the Usability of Concurrent Programming Languages

  • Author

    Nanz, Sebastian ; Torshizi, Faraz ; Pedroni, Michela ; Meye, Bertrand

  • Author_Institution
    ETH Zurich, Zurich, Switzerland
  • fYear
    2011
  • fDate
    22-23 Sept. 2011
  • Firstpage
    325
  • Lastpage
    334
  • Abstract
    The recent turn towards multicore processing architectures has made concurrency an important part of mainstream software development. As a result, an increasing number of developers have to learn to write concurrent programs, a task that is known to be hard even for the expert. Language designers are therefore working on languages that promise to make concurrent programming "easier". However, the claim that a new language is more usable than another cannot be supported by purely theoretical considerations, but calls for empirical studies. In this paper, we present the design of a study to compare concurrent programming languages with respect to comprehending and debugging existing programs and writing correct new programs. A critical challenge for such a study is avoiding the bias that might be introduced during the training phase and when interpreting participants\´ solutions. We address these issues by the use of self-study material and an evaluation scheme that exposes any subjective decisions of the corrector, or eliminates them altogether. We apply our design to a comparison of two object-oriented languages for concurrency, multithreaded Java and SCOOP (Simple Concurrent Object-Oriented Programming), in an academic setting. We obtain results in favor of SCOOP even though the study participants had previous training in writing multithreaded Java programs.
  • Keywords
    Java; multi-threading; multiprocessing systems; object-oriented languages; concurrent programming languages; language designers; mainstream software development; multicore processing architectures; multithreaded Java; object oriented languages; simple concurrent object oriented programming; Concurrent computing; Instruction sets; Java; Materials; Programming; Synchronization; Training; concurrency; empirical study; programming languages; usability;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Empirical Software Engineering and Measurement (ESEM), 2011 International Symposium on
  • Conference_Location
    Banff, AB
  • ISSN
    1938-6451
  • Print_ISBN
    978-1-4577-2203-5
  • Type

    conf

  • DOI
    10.1109/ESEM.2011.41
  • Filename
    6092581