A Framework and Methodology for Studying the Causes of Software Errors in Programming Systems. Ko, A. J. & Myers, B. A. 16(1-2):41–84.
A Framework and Methodology for Studying the Causes of Software Errors in Programming Systems [link]Paper  doi  abstract   bibtex   
An essential aspect of programmers' work is the correctness of their code. This makes current HCI techniques ill-suited to analyze and design the programming systems that programmers use everyday, since these techniques focus more on problems with learnability and efficiency of use, and less on error-proneness. We propose a framework and methodology that focuses specifically on errors by supporting the description and identification of the causes of software errors in terms of chains of cognitive breakdowns. The framework is based on both old and new studies of programming, as well as general research on the mechanisms of human error. Our experiences using the framework and methodology to study the Alice programming system have directly inspired the design of several new programming tools and interfaces. This includes the Whyline debugging interface, which we have shown to reduce debugging time by a factor of 8 and help programmers get 40\,% further through their tasks. We discuss the framework's and methodology's implications for programming system design, software engineering, and the psychology of programming.
@article{koFrameworkMethodologyStudying2005,
  title = {A Framework and Methodology for Studying the Causes of Software Errors in Programming Systems},
  author = {Ko, Andrew J. and Myers, Brad A.},
  date = {2005-02},
  journaltitle = {Journal of Visual Languages \& Computing},
  volume = {16},
  pages = {41--84},
  issn = {1045-926X},
  doi = {10.1016/j.jvlc.2004.08.003},
  url = {https://doi.org/10.1016/j.jvlc.2004.08.003},
  abstract = {An essential aspect of programmers' work is the correctness of their code. This makes current HCI techniques ill-suited to analyze and design the programming systems that programmers use everyday, since these techniques focus more on problems with learnability and efficiency of use, and less on error-proneness. We propose a framework and methodology that focuses specifically on errors by supporting the description and identification of the causes of software errors in terms of chains of cognitive breakdowns. The framework is based on both old and new studies of programming, as well as general research on the mechanisms of human error. Our experiences using the framework and methodology to study the Alice programming system have directly inspired the design of several new programming tools and interfaces. This includes the Whyline debugging interface, which we have shown to reduce debugging time by a factor of 8 and help programmers get 40\,\% further through their tasks. We discuss the framework's and methodology's implications for programming system design, software engineering, and the psychology of programming.},
  keywords = {*imported-from-citeulike-INRMM,~INRMM-MiD:c-479000,boolean-expressions,cognitive-biases,cognitive-breakdown,cognitive-load,programming,software-engineering,software-errors},
  number = {1-2}
}
Downloads: 0