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

被引:10
|
作者
Nanz, Sebastian [1 ]
Torshizi, Faraz [2 ]
Pedroni, Michela [1 ]
Meyer, Bertrand [1 ]
机构
[1] Swiss Fed Inst Technol, Zurich, Switzerland
[2] Univ Toronto, Toronto, ON, Canada
基金
加拿大自然科学与工程研究理事会;
关键词
empirical study; concurrency; programming languages; usability;
D O I
10.1109/ESEM.2011.41
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
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.
引用
收藏
页码:325 / 334
页数:10
相关论文
共 50 条
  • [31] Predicting long time contributors with knowledge units of programming languages: an empirical study
    Software Analysis and Intelligence Lab , School of Computing Queen’s University, Kingston
    ON, Canada
    arXiv,
  • [32] An empirical study of developers' discussions about security challenges of different programming languages
    Croft, Roland
    Xie, Yongzheng
    Zahedi, Mansooreh
    Babar, M. Ali
    Treude, Christoph
    EMPIRICAL SOFTWARE ENGINEERING, 2022, 27 (01)
  • [33] Predicting long time contributors with knowledge units of programming languages: an empirical study
    Md Ahasanuzzaman
    Gustavo A. Oliva
    Ahmed E. Hassan
    Empirical Software Engineering, 2025, 30 (3)
  • [34] An empirical study of developers’ discussions about security challenges of different programming languages
    Roland Croft
    Yongzheng Xie
    Mansooreh Zahedi
    M. Ali Babar
    Christoph Treude
    Empirical Software Engineering, 2022, 27
  • [35] Comparing General-Purpose and Domain-Specific Languages: An Empirical Study
    Kosar, Tomaz
    Oliveira, Nuno
    Mernik, Marjan
    Varanda Pereira, Maria Joao
    Crepinsek, Matej
    da Cruz, Daniela
    Henriques, Pedro Rangel
    COMPUTER SCIENCE AND INFORMATION SYSTEMS, 2010, 7 (02) : 247 - 264
  • [36] Assessing the Usability of Two Declarative Programming Languages to Model Geometric Events
    Llopis, Marcel
    Franch, Xavier
    Soria, Manel
    JOURNAL OF AEROSPACE INFORMATION SYSTEMS, 2023, 20 (09): : 546 - 554
  • [37] DRFx: A Simple and Efficient Memory Model for Concurrent Programming Languages
    Marino, Daniel
    Singh, Abhayendra
    Millstein, Todd
    Musuvathi, Madanlal
    Narayanasamy, Satish
    ACM SIGPLAN NOTICES, 2010, 45 (06) : 351 - 362
  • [38] Locally Abstract, Globally Concrete Semantics of Concurrent Programming Languages
    Din, Crystal Chang
    Haehnle, Reiner
    Johnsen, Einar Broch
    Pun, Ka I.
    Tarifa, Silvia Lizeth Tapia
    AUTOMATED REASONING WITH ANALYTIC TABLEAUX AND RELATED METHODS, TABLEAUX 2017, 2017, 10501 : 22 - 43
  • [40] Locally Abstract, Globally Concrete Semantics of Concurrent Programming Languages
    Din, Crystal Chang
    Haehnle, Reiner
    Henrio, Ludovic
    Johnsen, Einar Broch
    Pun, Violet Ka I.
    Tarifa, S. Lizeth Tapia
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 2024, 46 (01):