Are Code and Design Models Similarly Effective in Understanding Software Structure and Behavior?
摘要
Developers dedicate an average of 58% of their time to software comprehension, highlighting its critical role in software maintenance and evolution. This significant investment underscores the need of tools and methods that facilitate effective understanding. While prior research has primarily explored the use of models as complementary aids for understanding code, limited evidence exists regarding their standalone effectiveness in conveying software’s structural and behavioral aspects. This gap is particularly relevant in contexts such as Model-Driven Engineering (MDE), low-code, and no-code approaches, where models often serve as the primary or sole representation of software. In this paper, we report on a controlled experiment evaluating the effectiveness of understanding software structure and behavior through detailed design models compared to code. The study involved undergraduate IS students who completed comprehension tasks (designed along Bloom’s taxonomy) using either code or model, based on their preference. The results indicated no statistically significant differences in correctness between participants using models and those using code. However, participants working with code completed tasks related to software behavior significantly faster. These findings highlight the need for further research into enhancing the use of models as standalone artifacts for software comprehension, particularly in situations where access to code is limited or impossible.