An Empirical Study on README contents for JavaScript Packages

Contemporary software projects often utilize a README.md to share crucial information such as installation and usage examples related to their software. Furthermore, these files serve as an important source of updated and useful documentation for developers and prospective users of the software. Nonetheless, both novice and seasoned developers are sometimes unsure of what is required for a good README file. To understand the contents of a README, we investigate the contents of 43,900 JavaScript packages. Results show that these packages contain common content themes (i.e., usage, install and license). Furthermore, we find that application-specific packages more frequently included content themes such as options, while library-based packages more frequently included other specific content themes (i.e., install and license).

[1]  Philippe Suter,et al.  A Look at the Dynamics of the JavaScript Package Ecosystem , 2016, 2016 IEEE/ACM 13th Working Conference on Mining Software Repositories (MSR).

[2]  Yu Zhou,et al.  Analyzing APIs Documentation and Code to Detect Directive Defects , 2017, 2017 IEEE/ACM 39th International Conference on Software Engineering (ICSE).

[3]  Marco Tulio Valente,et al.  Why modern open source projects fail , 2017, ESEC/SIGSOFT FSE.

[4]  Gabriele Bavota,et al.  ARENA: An Approach for the Automated Generation of Release Notes , 2017, IEEE Transactions on Software Engineering.

[5]  Ahmed E. Hassan,et al.  An empirical study of software release notes , 2015, Empirical Software Engineering.

[6]  David Lo,et al.  Detecting similar repositories on GitHub , 2017, 2017 IEEE 24th International Conference on Software Analysis, Evolution and Reengineering (SANER).

[7]  Martin Mozina,et al.  Orange: data mining toolbox in python , 2013, J. Mach. Learn. Res..

[8]  Seung-won Hwang,et al.  Enriching Documents with Examples: A Corpus Mining Approach , 2013, TOIS.

[9]  Christoph Treude,et al.  Choosing an NLP Library for Analyzing Software Documentation: A Systematic Literature Review and a Series of Experiments , 2017, 2017 IEEE/ACM 14th International Conference on Mining Software Repositories (MSR).

[10]  Janice Singer,et al.  How software engineers use documentation: the state of the practice , 2003, IEEE Software.

[11]  Jian Pei,et al.  Mining frequent patterns without candidate generation , 2000, SIGMOD '00.

[12]  Shichao Zhang,et al.  Association Rule Mining: Models and Algorithms , 2002 .

[13]  Foyzul Hassan,et al.  Mining Readme Files to Support Automatic Building of Java Projects in Software Repositories , 2017, 2017 IEEE/ACM 39th International Conference on Software Engineering Companion (ICSE-C).