{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,1]],"date-time":"2026-05-01T01:34:52Z","timestamp":1777599292737,"version":"3.51.4"},"reference-count":66,"publisher":"Elsevier","isbn-type":[{"value":"9780124115194","type":"print"}],"license":[{"start":{"date-parts":[[2015,1,1]],"date-time":"2015-01-01T00:00:00Z","timestamp":1420070400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.elsevier.com\/tdm\/userlicense\/1.0\/"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2015]]},"DOI":"10.1016\/b978-0-12-411519-4.00017-3","type":"book-chapter","created":{"date-parts":[[2015,9,11]],"date-time":"2015-09-11T19:03:45Z","timestamp":1441998225000},"page":"493-517","source":"Crossref","is-referenced-by-count":12,"title":["Code Comment Analysis for Improving Software Quality**This chapter contains figures, tables, and text copied from the author\u2019s PhD dissertation and the papers that the author of this chapter coauthored [1\u20134]. Sections 17.2.3, 17.4.3, 17.5, and 17.6 are new, and the other sections are augmented, reorganized, and improved."],"prefix":"10.1016","author":[{"given":"Lin","family":"Tan","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"78","reference":[{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0010","series-title":"Proceedings of the international conference on software engineering","first-page":"331","article-title":"Listening to programmers\u2014taxonomies and characteristics of comments in operating system code","author":"Padioleau","year":"2009"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0015","series-title":"Proceedings of the symposium on operating systems principles","first-page":"145","article-title":"\/* iComment: Bugs or bad comments? *\/","author":"Tan","year":"2007"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0020","series-title":"Proceedings of the international conference on software engineering","first-page":"11","article-title":"aComment: mining annotations from comments and code to detect interrupt-related concurrency bugs","author":"Tan","year":"2011"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0025","series-title":"Proceedings of the international conference on software testing, verification and validation","first-page":"260","article-title":"@tComment: testing Javadoc comments to detect comment-code inconsistencies","author":"Tan","year":"2012"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0030","series-title":"Leveraging code comments to improve software reliability","author":"Tan","year":"2009"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0035","series-title":"Proceedings of the annual reliability and maintainability symposium","first-page":"235","article-title":"An integrated measure of software maintainability","author":"Aggarwal","year":"2002"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0040","series-title":"Text analytics for software engineering","author":"Tan","year":"2014"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0045","series-title":"Proceedings of the international conference on automated software engineering","first-page":"307","article-title":"Inferring resource specifications from natural language API documentation","author":"Zhong","year":"2009"},{"issue":"3-4","key":"10.1016\/B978-0-12-411519-4.00017-3_bb0050","doi-asserted-by":"crossref","first-page":"227","DOI":"10.1007\/s10515-011-0082-3","article-title":"Inferring specifications for resources from natural language API documentation","volume":"18","author":"Zhong","year":"2011","journal-title":"Automat Software Eng J"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0055","series-title":"Proceedings of the international conference on software engineering","first-page":"126","article-title":"Eliciting design requirements for maintenance-oriented IDEs: A detailed study of corrective and perfective maintenance tasks","author":"Ko","year":"2005"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0060","series-title":"Proceedings of the symposium on operating systems principles","first-page":"57","article-title":"Bugs as deviant behavior: a general approach to inferring errors in systems code","author":"Engler","year":"2001"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0065","series-title":"Proceedings of the USENIX symposium on operating system design and implementation","first-page":"161","article-title":"From uncertainty to belief: inferring the specification within","author":"Kremenek","year":"2006"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0070","series-title":"Proceedings of the symposium on the foundations of software engineering","first-page":"306","article-title":"PR-Miner: automatically extracting implicit programming rules and detecting violations in large software code","author":"Li","year":"2005"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0075","series-title":"Proceedings of the USENIX security symposium","first-page":"379","article-title":"AutoISES: automatically inferring security specifications and detecting violations","author":"Tan","year":"2008"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0080","series-title":"Proceedings of the international conference on software engineering","first-page":"449","article-title":"Quickly detecting relevant program invariants","author":"Ernst","year":"2000"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0085","series-title":"Proceedings of the international conference on software engineering","first-page":"291","article-title":"Tracking down software bugs using automatic anomaly detection","author":"Hangal","year":"2002"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0090","series-title":"International workshop on mining software repositories","first-page":"1","article-title":"Source code that talks: an exploration of eclipse task comments and their implication to repository mining","author":"Ying","year":"2005"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0095","series-title":"Foundations of statistical natural language processing","author":"Manning","year":"2001"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0100","series-title":"International workshop on mining software repositories","first-page":"179","article-title":"Examining the evolution of code comments in PostgreSQL","author":"Jiang","year":"2006"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0105","series-title":"Machine learning","author":"Mitchell","year":"1997"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0110","series-title":"Data mining: practical machine learning tools and techniques","author":"Witten","year":"2005"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0115","doi-asserted-by":"crossref","first-page":"27","DOI":"10.1145\/1961189.1961199","article-title":"LIBSVM: a library for support vector machines","volume":"2","author":"Chang","year":"2011","journal-title":"ACM Trans Intell Syst Technol"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0120","series-title":"Proceedings of the conference on uncertainty in artificial intelligence","first-page":"338","article-title":"Estimating continuous distributions in Bayesian classifiers","author":"John","year":"1995"},{"issue":"1-2","key":"10.1016\/B978-0-12-411519-4.00017-3_bb0125","first-page":"161","volume":"95","author":"Landwehr","year":"2005","journal-title":"Logistic model trees"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0130","series-title":"Proceedings of the international conference on knowledge discovery and data mining","first-page":"743","article-title":"A cross-collection mixture model for comparative text mining","author":"Zhai","year":"2004"},{"issue":"11","key":"10.1016\/B978-0-12-411519-4.00017-3_bb0135","doi-asserted-by":"crossref","first-page":"39","DOI":"10.1145\/219717.219748","article-title":"WordNet: a lexical database for English","volume":"38","author":"Miller","year":"1995","journal-title":"Commun ACM"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0140","series-title":"The Stanford Parser: a statistical parser","author":"Stanford NLP Group","year":"2014"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0145","series-title":"Apache OpenNLP","author":"The Apache Software Foundation","year":"2014"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0150","series-title":"SPSS","author":"IBM","year":"2014"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0155","series-title":"SAS Text Miner","author":"SAS","year":"2014"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0160","series-title":"Software for frequent pattern mining","author":"Borgelt","year":"2014"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0165","series-title":"Text analysis, text mining, and information retrieval software","author":"KDnuggets","year":"2014"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0170","series-title":"Text analysis for software engineering wiki","author":"Software engineering community","year":"2014"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0175","series-title":"Statistical natural language processing and corpus-based computational linguistics: An annotated list of resources","author":"Stanford NLP Group","year":"2014"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0180","series-title":"C4.5: programs for machine learning","author":"Quinlan","year":"1993"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0185","series-title":"Illinois semantic role labeler","author":"Cognitive Computer Group of the University of Illinois, Urbana-Champaign","year":"2014"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0190","series-title":"Proceedings of the international conference on software engineering","first-page":"215","article-title":"The effect of modularization and comments on program comprehension","author":"Woodfield","year":"1981"},{"issue":"1","key":"10.1016\/B978-0-12-411519-4.00017-3_bb0195","doi-asserted-by":"crossref","first-page":"43","DOI":"10.1046\/j.1365-2575.2002.00117.x","article-title":"Code quality analysis in open source software development","volume":"12","author":"Stamelos","year":"2002","journal-title":"Informat Syst J"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0200","series-title":"Proceedings of the international conference on program comprehension","first-page":"83","article-title":"Quality analysis of source code comments","author":"Steidl","year":"2013"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0205","series-title":"Proceedings of the working conference on reverse engineering","first-page":"70","article-title":"Do code and comments co-evolve? On the relation between source code and comment changes","author":"Fluri","year":"2007"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0210","series-title":"What motivates programmers to comment?","author":"Marin","year":"2005"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0215","series-title":"Proceedings of the international conference on software engineering","first-page":"251","article-title":"TODO or to bug: exploring how task annotations play a role in the work practices of software developers","author":"Storey","year":"2008"},{"issue":"9","key":"10.1016\/B978-0-12-411519-4.00017-3_bb0220","doi-asserted-by":"crossref","first-page":"1264","DOI":"10.1109\/TSE.2013.12","article-title":"Patterns of knowledge in API reference documentation","volume":"39","author":"Maalej","year":"2013","journal-title":"IEEE Trans Software Eng"},{"issue":"6","key":"10.1016\/B978-0-12-411519-4.00017-3_bb0225","doi-asserted-by":"crossref","first-page":"703","DOI":"10.1007\/s10664-011-9186-4","article-title":"What should developers be aware of? an empirical study on the directives of API documentation","volume":"17","author":"Monperrus","year":"2012","journal-title":"Empiric Software Eng J"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0230","series-title":"Proceedings of the international conference on knowledge discovery and data mining","first-page":"743","article-title":"A cross-collection mixture model for comparative text mining","author":"Zhai","year":"2004"},{"issue":"9","key":"10.1016\/B978-0-12-411519-4.00017-3_bb0235","doi-asserted-by":"crossref","first-page":"1263","DOI":"10.1109\/TKDE.2008.239","article-title":"Learning from imbalanced data","volume":"21","author":"He","year":"2009","journal-title":"IEEE Trans Knowl Data Eng"},{"issue":"4","key":"10.1016\/B978-0-12-411519-4.00017-3_bb0240","doi-asserted-by":"crossref","DOI":"10.1145\/265924.265927","article-title":"Eraser: a dynamic data race detector for multithreaded programs","volume":"15","author":"Savage","year":"1997","journal-title":"ACM Trans Comput Syst"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0245","series-title":"Proceedings of the first ACM symposium on operating system principles","first-page":"10.1","article-title":"The structure of the \u201cTHE\u201d-multiprogramming system","author":"Dijkstra","year":"1967"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0250","series-title":"Illinois NLP tools","author":"Cognitive Computation Group of the University of Illinois, Urbana-Champaign","year":"2014"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0255","series-title":"Proceedings of the conference on empirical methods for natural language processing","first-page":"10","article-title":"A sequential model for multi-class classification","author":"Even-Zohar","year":"2001"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0260","series-title":"Proceedings of the conference on advances in neural information processing systems","first-page":"995","article-title":"The use of classifiers in sequential inference","author":"Punyakanok","year":"2001"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0265","series-title":"Proceedings of the international joint conference on artificial intelligence","first-page":"1117","article-title":"The necessity of syntactic parsing for semantic role labeling","author":"Punyakanok","year":"2005"},{"issue":"4","key":"10.1016\/B978-0-12-411519-4.00017-3_bb0270","doi-asserted-by":"crossref","DOI":"10.1162\/089120102762671936","article-title":"Summarizing scientific articles\u2014experiments with relevance and rhetorical status","volume":"28","author":"Teufel","year":"2002","journal-title":"Comput Linguist"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0275","series-title":"Integrating natural language and program structure information to improve software search and exploration","author":"Hill","year":"2010"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0280","series-title":"Proceedings of the working conference on mining software repositories","first-page":"377","article-title":"Automatically mining software-based, semantically-similar words from comment-code mappings","author":"Howard","year":"2013"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0285","series-title":"Proceedings of the 6th international conference on aspect-oriented software development","first-page":"212","article-title":"Using natural language program analysis to locate and understand action-oriented concerns","author":"Shepherd","year":"2007"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0290","series-title":"Proceedings of the international conference on aspect-oriented software development","first-page":"3","article-title":"Towards supporting on-demand virtual remodularization using program graphs","author":"Shepherd","year":"2006"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0295","series-title":"Proceedings of the working conference on mining software repositories","first-page":"161","article-title":"Inferring semantically related words from software context","author":"Yang","year":"2012"},{"issue":"6","key":"10.1016\/B978-0-12-411519-4.00017-3_bb0300","doi-asserted-by":"crossref","first-page":"1856","DOI":"10.1007\/s10664-013-9264-x","article-title":"SWordNet: inferring semantically related words from software context","volume":"19","author":"Yang","year":"2014","journal-title":"Empirical Software Eng J"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0305","series-title":"Proceedings of the international conference on program comprehension","first-page":"23","article-title":"Automatic generation of natural language summaries for Java classes","author":"Moreno","year":"2013"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0310","series-title":"Proceedings of the international conference on automated software engineering","first-page":"43","article-title":"Towards automatically generating summary comments for Java methods","author":"Sridhara","year":"2010"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0315","series-title":"Proceedings of the international conference on software engineering","first-page":"101","article-title":"Automatically detecting and describing high level actions within methods","author":"Sridhara","year":"2011"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0320","series-title":"Proceedings of the international conference on automated software engineering, new idea","first-page":"562","article-title":"AutoComment: mining question and answer sites for automatic comment generation","author":"Wong","year":"2013"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0325","series-title":"International conference on software engineering","first-page":"815","article-title":"Inferring method specifications from natural language API descriptions","author":"Pandita","year":"2012"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0330","series-title":"Proceedings of the international conference on software engineering","first-page":"1025","article-title":"Checking app behavior against app descriptions","author":"Gorla","year":"2014"},{"key":"10.1016\/B978-0-12-411519-4.00017-3_bb0335","series-title":"Proceedings of the international conference on software engineering","first-page":"1036","article-title":"AsDroid: detecting stealthy behaviors in Android applications by user interface and program behavior contradiction","author":"Huang","year":"2014"}],"container-title":["The Art and Science of Analyzing Software Data"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:B9780124115194000173?httpAccept=text\/xml","content-type":"text\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:B9780124115194000173?httpAccept=text\/plain","content-type":"text\/plain","content-version":"vor","intended-application":"text-mining"}],"deposited":{"date-parts":[[2018,9,19]],"date-time":"2018-09-19T14:51:27Z","timestamp":1537368687000},"score":1,"resource":{"primary":{"URL":"https:\/\/linkinghub.elsevier.com\/retrieve\/pii\/B9780124115194000173"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015]]},"ISBN":["9780124115194"],"references-count":66,"URL":"https:\/\/doi.org\/10.1016\/b978-0-12-411519-4.00017-3","relation":{},"subject":[],"published":{"date-parts":[[2015]]}}}