An Empirical Study on the Impact of Deimplicitization on Comprehension in Programs Using Application Frameworks

© 2020 ACM. Background: Application frameworks, such as Ruby on Rails, introduce abstractions with the goal of simplifying development for particular application domains, such as web development. While experts enjoy increased productivity due to these abstractions, the flow of the programs is often...

Full description

Bibliographic Details
Main Authors: Cito, Jürgen, Shen, Jiasi, Rinard, Martin
Other Authors: Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Format: Article
Language:English
Published: ACM 2021
Online Access:https://hdl.handle.net/1721.1/137591
_version_ 1826206847875416064
author Cito, Jürgen
Shen, Jiasi
Rinard, Martin
author2 Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
author_facet Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Cito, Jürgen
Shen, Jiasi
Rinard, Martin
author_sort Cito, Jürgen
collection MIT
description © 2020 ACM. Background: Application frameworks, such as Ruby on Rails, introduce abstractions with the goal of simplifying development for particular application domains, such as web development. While experts enjoy increased productivity due to these abstractions, the flow of the programs is often hard to understand for non-experts and newcomers due to implicit flow and concealed lower level action that seems like "magic". Objective: We conjecture that converting these implicit flows into an explicit and unified form can help non-experts comprehend the programs using these frameworks. We call the process of unifying distributed, implicit flows into a single routine deimplicitization. Method: We want to conduct an experiment that studies the impact of deimplicitization on program comprehension. Particularly, we want to study how software developers with different expertise (novices/students, framework experts/professional developers) can answer comprehension questions differently with respect to time and correctness, under the treatments of either a deimplicitized version of the program in Python or the original version of the program in Ruby on Rails.
first_indexed 2024-09-23T13:39:13Z
format Article
id mit-1721.1/137591
institution Massachusetts Institute of Technology
language English
last_indexed 2024-09-23T13:39:13Z
publishDate 2021
publisher ACM
record_format dspace
spelling mit-1721.1/1375912021-11-06T03:19:22Z An Empirical Study on the Impact of Deimplicitization on Comprehension in Programs Using Application Frameworks Cito, Jürgen Shen, Jiasi Rinard, Martin Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory © 2020 ACM. Background: Application frameworks, such as Ruby on Rails, introduce abstractions with the goal of simplifying development for particular application domains, such as web development. While experts enjoy increased productivity due to these abstractions, the flow of the programs is often hard to understand for non-experts and newcomers due to implicit flow and concealed lower level action that seems like "magic". Objective: We conjecture that converting these implicit flows into an explicit and unified form can help non-experts comprehend the programs using these frameworks. We call the process of unifying distributed, implicit flows into a single routine deimplicitization. Method: We want to conduct an experiment that studies the impact of deimplicitization on program comprehension. Particularly, we want to study how software developers with different expertise (novices/students, framework experts/professional developers) can answer comprehension questions differently with respect to time and correctness, under the treatments of either a deimplicitized version of the program in Python or the original version of the program in Ruby on Rails. 2021-11-05T19:16:01Z 2021-11-05T19:16:01Z 2020-06 2021-03-10T14:38:49Z Article http://purl.org/eprint/type/ConferencePaper https://hdl.handle.net/1721.1/137591 Cito, Jürgen, Shen, Jiasi and Rinard, Martin. 2020. "An Empirical Study on the Impact of Deimplicitization on Comprehension in Programs Using Application Frameworks." Proceedings - 2020 IEEE/ACM 17th International Conference on Mining Software Repositories, MSR 2020. en 10.1145/3379597.3387507 Proceedings - 2020 IEEE/ACM 17th International Conference on Mining Software Repositories, MSR 2020 Creative Commons Attribution-Noncommercial-Share Alike http://creativecommons.org/licenses/by-nc-sa/4.0/ application/pdf ACM MIT web domain
spellingShingle Cito, Jürgen
Shen, Jiasi
Rinard, Martin
An Empirical Study on the Impact of Deimplicitization on Comprehension in Programs Using Application Frameworks
title An Empirical Study on the Impact of Deimplicitization on Comprehension in Programs Using Application Frameworks
title_full An Empirical Study on the Impact of Deimplicitization on Comprehension in Programs Using Application Frameworks
title_fullStr An Empirical Study on the Impact of Deimplicitization on Comprehension in Programs Using Application Frameworks
title_full_unstemmed An Empirical Study on the Impact of Deimplicitization on Comprehension in Programs Using Application Frameworks
title_short An Empirical Study on the Impact of Deimplicitization on Comprehension in Programs Using Application Frameworks
title_sort empirical study on the impact of deimplicitization on comprehension in programs using application frameworks
url https://hdl.handle.net/1721.1/137591
work_keys_str_mv AT citojurgen anempiricalstudyontheimpactofdeimplicitizationoncomprehensioninprogramsusingapplicationframeworks
AT shenjiasi anempiricalstudyontheimpactofdeimplicitizationoncomprehensioninprogramsusingapplicationframeworks
AT rinardmartin anempiricalstudyontheimpactofdeimplicitizationoncomprehensioninprogramsusingapplicationframeworks
AT citojurgen empiricalstudyontheimpactofdeimplicitizationoncomprehensioninprogramsusingapplicationframeworks
AT shenjiasi empiricalstudyontheimpactofdeimplicitizationoncomprehensioninprogramsusingapplicationframeworks
AT rinardmartin empiricalstudyontheimpactofdeimplicitizationoncomprehensioninprogramsusingapplicationframeworks