Natural Language-Based Software Analyses and Tools for Software Maintenance

作者: Lori Pollock , K. Vijay-Shanker , Emily Hill , Giriprasad Sridhara , David Shepherd

DOI: 10.1007/978-3-642-36054-1_4

关键词: Programming languageSoftware development processComputer-aided software engineeringProgram analysisSoftware developmentSoftware maintenanceComputer scienceNatural language programmingNatural languageSemantics (computer science)

摘要: Significant portions of software life cycle resources are devoted to program maintenance, which motivates the development automated techniques and tools support tedious, error-prone tasks. Natural language clues from programmers’ naming in literals, identifiers, comments can be leveraged improve effectiveness many tools. For example, they used increase accuracy search tools, ability navigation recommend related methods, raise other analyses by providing access natural information. This chapter focuses on how capture, model, apply conceptual knowledge expressed both linguistic information as well programming structure semantics. We call this kind analysis Language Program Analysis (NLPA) since it combines processing with extract for source program.

参考文章(119)
Vugranam C. Sreedhar, Rastislav Bodik, Proceedings of the 2001 ACM SIGPLAN workshop on Optimization of middleware and distributed systems programming language design and implementation. ,(2001)
ECOOP 2009 - Object-Oriented Programming Lecture Notes in Computer Science. ,vol. 5653, ,(2009) , 10.1007/978-3-642-03013-0
Takashi Ishio, Gail C. Murphy, Katsuro Inoue, Ryusuke Niitani, Canada, A Program Slicing Approach for Locating Functional Concerns ,(2007)
Einar W. Høst, Bjarte M. Østvold, Canonical Method Names for Java Software Language Engineering. pp. 226- 245 ,(2011) , 10.1007/978-3-642-19440-5_14
Frank Tip, A survey of program slicing techniques. Journal of Programming Languages. ,vol. 3, ,(1995)
Robert D. Macredie, Penny A. Grubb, Armstrong A. Takang, The effects of comments and identifier names on program comprehensibility: an experimental investigation. Journal of Programming Languages. ,vol. 4, pp. 143- 167 ,(1996)
Hinrich Schütze, Christopher D. Manning, Prabhakar Raghavan, Introduction to Information Retrieval ,(2005)
Christopher D. Manning, Hinrich Schütze, Foundations of Statistical Natural Language Processing ,(1999)
Einar W. Høst, Bjarte M. Østvold, The Java Programmer's Phrase Book software language engineering. pp. 322- 341 ,(2009) , 10.1007/978-3-642-00434-6_20