Active Documentation: Helping Developers Follow Design Decisions

被引:0
|
作者
Mehrpour, Sahar [1 ]
LaToza, Thomas D. [1 ]
Kindi, Rahul K. [2 ]
机构
[1] George Mason Univ, Dept Comp Sci, Fairfax, VA 22030 USA
[2] Cornell Univ, Dept Comp Sci, Ithaca, NY 14853 USA
基金
美国国家科学基金会;
关键词
documentation; design decisions; IDE;
D O I
10.1109/vlhcc.2019.8818816
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Good documentation has long been argued to be key to helping developers write code more quickly and consistently with design decisions, but is left largely disconnected from code. We propose a method for active documentation, where design decisions are made explicit as design rules and checked against code. Developers can discover how to follow a design rule by navigating to examples in their codebase. After editing code, developers receive immediate feedback about which design rules are satisfied and which are violated, notifying developers who miss design decisions about the existence of these design decisions. We implemented our approach in a prototype tool and conducted a user study. Compared to developers using a traditional design document, developers working in an unfamiliar codebase with active documentation were faster and more successful, using active documentation to learn how to follow design decisions through examples and receive immediate feedback on their changes.
引用
收藏
页码:87 / 96
页数:10
相关论文
共 50 条
  • [1] Learning to Log: Helping Developers Make Informed Logging Decisions
    Zhu, Jieming
    He, Pinjia
    Fu, Qiang
    Zhang, Hongyu
    Lyu, Michael R.
    Zhang, Dongmei
    [J]. 2015 IEEE/ACM 37TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, VOL 1, 2015, : 415 - 425
  • [2] HELPING DEVELOPERS
    SHARP, H
    [J]. JOURNAL OF TOWN PLANNING INSTITUTE, 1968, 54 (04): : 184 - 184
  • [3] PerHelper: Helping Developers Make Better Decisions on Permission Uses in Android Apps
    Xu, Guosheng
    Xu, Shengwei
    Gao, Chuan
    Wang, Bo
    Xu, Guoai
    [J]. APPLIED SCIENCES-BASEL, 2019, 9 (18):
  • [4] A Qualitative Study on the Implementation Design Decisions of Developers
    Liang, Jenny T.
    Arab, Maryam
    Ko, Minhyuk
    Ko, Amy J.
    LaToza, Thomas D.
    [J]. 2023 IEEE/ACM 45TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, ICSE, 2023, : 435 - 447
  • [5] Helping developers with privacy
    Hong, Jason
    [J]. 2018 IEEE SYMPOSIUM ON VISUAL LANGUAGES AND HUMAN-CENTRIC COMPUTING (VL/HCC), 2018, : 1 - 1
  • [6] Using customer data to drive documentation design decisions
    Smart, KL
    Whiting, ME
    [J]. JOURNAL OF BUSINESS AND TECHNICAL COMMUNICATION, 2002, 16 (02) : 115 - 169
  • [7] Task-Specific Architecture Documentation for Developers Why Separation of Concerns in Architecture Documentation is Counterproductive for Developers
    Rost, Dominik
    Naab, Matthias
    [J]. SOFTWARE ARCHITECTURE, ECSA 2016, 2016, 9839 : 102 - 110
  • [8] A DESIGN HELPING MECHANISM FOR ACTIVE LEARNING COURSES
    Salem, Ahmed. Z.
    [J]. EDULEARN11: 3RD INTERNATIONAL CONFERENCE ON EDUCATION AND NEW LEARNING TECHNOLOGIES, 2011, : 7036 - 7046
  • [9] The documentation of design decisions in engineering projects: A study in infrastructure development
    Kinneging, Tara
    de Graaf, Robin
    Siebelink, Sander
    van Dijck, Tim
    [J]. IJISPM-INTERNATIONAL JOURNAL OF INFORMATION SYSTEMS AND PROJECT MANAGEMENT, 2020, 8 (01): : 44 - 64
  • [10] Scenario-Based Architectural Design Decisions Documentation and Evolution
    Che, Meiru
    Perry, Dewayne E.
    [J]. 18TH IEEE INTERNATIONAL CONFERENCE AND WORKSHOPS ON ENGINEERING OF COMPUTER BASED SYSTEMS (ECBS 2011), 2011, : 216 - 225