Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3377812.3382136acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
demonstration

GeekyNote: a technical documentation tool with coverage, backtracking, traces, and couplings

Published: 01 October 2020 Publication History

Abstract

Understanding an unfamiliar program is always a daunting task for any programmer, either experienced or inexperienced. Many studies have shown that even an experienced programmer who is already familiar with the code may still need to rediscover the code frequently during software maintenance. The difficulties of program comprehension is much more intense when a system is completely new. One well-known solution to this notorious problem is to create effective technical documentation to make up for the lack of knowledge.
The purpose of technical documentation is to achieve the transfer of knowledge. However, creating effective technical documentation has been impeded by many problems in practice [1]. In this paper, we propose a novel tool called GeekyNote to address the major challenges in technical documentation. The key ideas GeekyNote proposes are: (1) documents are annotated to versioned source code transparently; (2) formal textual writings are discouraged and screencasts (or other forms of documents) are encouraged; (3) the up-to-dateness between documents and code can be detected, measured, and managed; (4) the documentation that works like a debugging-trace is supported; (5) couplings can be easily created and managed for future maintenance needs; (6) how good a system is documented can be measured. A demo video can be accessed at https://youtu.be/cBueuPVDgWM.

References

[1]
Emad Aghajani, Csaba Nagy, Olga Lucero Vega-Márquez, Mario Linares-Vásquez, Laura Moreno, Gabriele Bavota, and Michele Lanza. 2019. Software documentation issues unveiled. In Proceedings of the 41st International Conference on Software Engineering, ICSE 2019, Montreal, QC, Canada, May 25-31, 2019, Gunter Mussbacher, Joanne M. Atlee, and Tevfik Bultan (Eds.). IEEE / ACM, 1199--1210. https://dl.acm.org/citation.cfm?id=3339655
[2]
Yung-Pin Cheng, Jhih-Hao Chen, and Yu-Ying Yu. 2013. Executable Program Documentation Based on Debugging Break Points. In 20th Asia-Pacific Software Engineering Conference, APSEC 2013, Ratchathewi, Bangkok, Thailand, December 2-5, 2013 - Volume 1. IEEE, 199--206.
[3]
Andrew Forward and Timothy Lethbridge. 2002. The relevance of software documentation, tools and technologies: a survey. In Proceedings of the 2002 ACM Symposium on Document Engineering, McLean, Virginia, USA, November 8-9, 2002. ACM, 26--33.
[4]
InfoQ. 2019. How do you document your APIs. Available as https://www.infoq.com/research/api-documentation/.
[5]
IsCoollab. 2018. KORAT - a Human-Computer Interaction Robot. Available as https://iscoollab.com.
[6]
Mira Kajko-Mattsson. 2005. A Survey of Documentation Practice within Corrective Maintenance. Empirical Software Engineering 10, 1 (2005), 31--55. http://www.springerlink.com/index/10.1023/B:LIDA.0000048322.42751.ca
[7]
N. Pennington. 1987. Stimulus structures and mental representations in expert comprehension of computer programs. Cognitive Psychology 19 (1987), 295--341.
[8]
Pablo Romero, Benedict du Boulay, Richard Cox, Rudi Lutz, and Sallyann Bryant. 2007. Debugging strategies and tactics in a multi-representation software environment. International Journal of Man-Machine Studies 65, 12 (2007), 992--1009.
[9]
Christoph Johann Stettina and Werner Heijstek. 2011. Necessary and neglected?: an empirical study of internal documentation in agile software development teams. In Proceedings of the 29th ACM international conference on Design of communication, Pisa, Italy, October 3-5, 2011, Aristidis Protopsaltis, Nicolas Spyratos, Carlos J. Costa, and Carlo Meghini (Eds.). ACM, 159--166.
[10]
Junji Zhi, Vahid Garousi-Yusifoglu, Bo Sun, Golara Garousi, S. M. Shahnewaz, and Günther Ruhe. 2015. Cost, benefits and quality of software development documentation: A systematic mapping. Journal of Systems and Software 99 (2015), 175--198.

Cited By

View all
  • (2022)A Review and Analysis of Tools Used from 2018 till 2022 in Requirements EngineeringProceedings of the International Conference on Computer, Information Technology and Intelligent Computing (CITIC 2022)10.2991/978-94-6463-094-7_33(424-438)Online publication date: 25-Dec-2022

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '20: Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering: Companion Proceedings
June 2020
357 pages
ISBN:9781450371223
DOI:10.1145/3377812
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

Sponsors

In-Cooperation

  • KIISE: Korean Institute of Information Scientists and Engineers
  • IEEE CS

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 October 2020

Check for updates

Author Tags

  1. document coverage
  2. document effectiveness
  3. program documentation
  4. technical documentation

Qualifiers

  • Demonstration

Conference

ICSE '20
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)25
  • Downloads (Last 6 weeks)0
Reflects downloads up to 01 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2022)A Review and Analysis of Tools Used from 2018 till 2022 in Requirements EngineeringProceedings of the International Conference on Computer, Information Technology and Intelligent Computing (CITIC 2022)10.2991/978-94-6463-094-7_33(424-438)Online publication date: 25-Dec-2022

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media